在CentOS中默認(rèn)安裝有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服務(wù)器碍沐。
[root@localhost ~]# yum -y install mysql-community-server
? 這步可能會花些時間狸捅,安裝完成后就會覆蓋掉之前的mariadb。
至此MySQL就安裝完成了累提,然后是對MySQL的一些設(shè)置尘喝。
2 MySQL數(shù)據(jù)庫設(shè)置
? 首先啟動MySQL
[root@localhost ~]# systemctl start? mysqld.service
? 查看MySQL運(yùn)行狀態(tài),運(yùn)行狀態(tài)如圖:
[root@localhost ~]# systemctl status mysqld.service
? 此時MySQL已經(jīng)開始正常運(yùn)行斋陪,不過要想進(jìn)入MySQL還得先找出此時root用戶的密碼朽褪,通過如下命令可以在日志文件中找出密碼:
[root@localhost ~]# grep "password" /var/log/mysqld.log
? 如下命令進(jìn)入數(shù)據(jù)庫:
[root@localhost ~]# mysql -uroot -p
? 輸入初始密碼,此時不能做任何事情无虚,因為MySQL默認(rèn)必須修改密碼之后才能操作數(shù)據(jù)庫:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
? 這里有個問題缔赠,新密碼設(shè)置的時候如果設(shè)置的過于簡單會報錯:
? 原因是因為MySQL有密碼設(shè)置的規(guī)范,具體是與validate_password_policy的值有關(guān):
? 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)
我的是已經(jīng)修改過的嗤堰,初始情況下第一個的值是ON,validate_password_length是8咆爽×禾模可以通過如下命令修改:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
? 設(shè)置之后就是我上面查出來的那幾個值了置森,此時密碼就可以設(shè)置的很簡單,例如1234之類的符糊。到此數(shù)據(jù)庫的密碼設(shè)置就完成了凫海。
? 但此時還有一個問題,就是因為安裝了Yum Repository男娄,以后每次yum操作都會自動更新行贪,需要把這個卸載掉:
[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch
? 此時才算真的完成了。