在CentOS中默認安裝有MariaDB代虾,這個是MySQL的分支进肯,但為了需要激蹲,還是要在系統(tǒng)中安裝MySQL,而且安裝完成之后可以直接覆蓋掉MariaDB江掩。
1 下載并安裝MySQL官方的 Yum Repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
使用上面的命令就直接下載了安裝用的Yum Repository学辱,大概25KB的樣子乘瓤,然后就可以直接yum安裝了。
[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
之后就開始安裝MySQL服務器策泣。
[root@localhost ~]# yum -y install mysql-community-server
這步可能會花些時間衙傀,安裝完成后就會覆蓋掉之前的mariadb。
至此MySQL就安裝完成了萨咕,然后是對MySQL的一些設置统抬。
某些狀況下我們沒有外網就需要離線安裝mysql
1).刪除原有的mariadb,不然mysql裝不進去
[root@hadoop ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.52-1.el7.x86_64
[root@hadoop ~]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
[root@hadoop ~]# rpm -qa|grep mariadb
2).在https://dev.mysql.com/downloads/mysql/選擇為Red Hat Enterprise Linux 7 / Oracle Linux 7 危队,把os的版本選擇為all聪建。
直接下載mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar,所有的rpm包都在里面
tar -xvf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar
解壓后所有的rpm包都在里面茫陆,按如下順序依次安裝
rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.21-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.21-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm
至此金麸,mysql5.7所有文件安裝完畢,然后是對MySQL的一些設置簿盅。
2 MySQL數(shù)據(jù)庫設置
首先啟動MySQL
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl enable mysqld 開機啟動
查看MySQL運行狀態(tài)挥下,運行狀態(tài)如圖:
[root@localhost ~]# systemctl status mysqld.service
此時MySQL已經開始正常運行,不過要想進入MySQL還得先找出此時root用戶的密碼桨醋,通過如下命令可以在日志文件中找出密碼:
[root@localhost ~]# grep "password" /var/log/mysqld.log
如下命令進入數(shù)據(jù)庫:
[root@localhost ~]# mysql -uroot -p
輸入初始密碼棚瘟,此時不能做任何事情,因為MySQL默認必須修改密碼之后才能操作數(shù)據(jù)庫:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
這里有個問題喜最,新密碼設置的時候如果設置的過于簡單會報錯:
原因是因為MySQL有密碼設置的規(guī)范解取,具體是與validate_password_policy的值有關:
MySQL完整的初始密碼規(guī)則可以通過如下命令查看:
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 4 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.01 sec)
密碼的長度是由validate_password_length決定的,而validate_password_length的計算公式是:
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
我的是已經修改過的返顺,初始情況下第一個的值是ON禀苦,validate_password_length是8∷烊担可以通過如下命令修改:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
設置之后就是我上面查出來的那幾個值了振乏,此時密碼就可以設置的很簡單,例如1234之類的秉扑。到此數(shù)據(jù)庫的密碼設置就完成了慧邮。
但此時還有一個問題,就是因為安裝了Yum Repository舟陆,以后每次yum操作都會自動更新误澳,需要把這個卸載掉:
[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
此時才算真的完成了。