在CentOS中默認(rèn)安裝有MariaDB,這個(gè)是MySQL的分支,但為了需要,還是要在系統(tǒng)中安裝MySQL,而且安裝完成之后可以直接覆蓋掉MariaDB。
1 下載并安裝MySQL官方的 Yum Repository
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm</pre>
使用上面的命令就直接下載了安裝用的Yum Repository,大概25KB的樣子,然后就可以直接yum安裝了。
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm</pre>
之后就開(kāi)始安裝MySQL服務(wù)器。
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# yum -y install mysql-community-server</pre>
這步可能會(huì)花些時(shí)間,安裝完成后就會(huì)覆蓋掉之前的mariadb。
至此MySQL就安裝完成了,然后是對(duì)MySQL的一些設(shè)置。
2 MySQL數(shù)據(jù)庫(kù)設(shè)置
首先啟動(dòng)MySQL
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# systemctl start mysqld.service</pre>
查看MySQL運(yùn)行狀態(tài),運(yùn)行狀態(tài)如圖:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# systemctl status mysqld.service</pre>
此時(shí)MySQL已經(jīng)開(kāi)始正常運(yùn)行,不過(guò)要想進(jìn)入MySQL還得先找出此時(shí)root用戶(hù)的密碼,通過(guò)如下命令可以在日志文件中找出密碼:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# grep "password" /var/log/mysqld.log</pre>
如下命令進(jìn)入數(shù)據(jù)庫(kù):
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# mysql -uroot -p</pre>
輸入初始密碼,此時(shí)不能做任何事情,因?yàn)镸ySQL默認(rèn)必須修改密碼之后才能操作數(shù)據(jù)庫(kù):
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';</pre>
這里有個(gè)問(wèn)題,新密碼設(shè)置的時(shí)候如果設(shè)置的過(guò)于簡(jiǎn)單會(huì)報(bào)錯(cuò):
原因是因?yàn)镸ySQL有密碼設(shè)置的規(guī)范,具體是與validate_password_policy的值有關(guān):
MySQL完整的初始密碼規(guī)則可以通過(guò)如下命令查看:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">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)</pre>
密碼的長(zhǎng)度是由validate_password_length決定的,而validate_password_length的計(jì)算公式是:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)</pre>
我的是已經(jīng)修改過(guò)的,初始情況下第一個(gè)的值是ON,validate_password_length是8。可以通過(guò)如下命令修改:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;</pre>
設(shè)置之后就是我上面查出來(lái)的那幾個(gè)值了,此時(shí)密碼就可以設(shè)置的很簡(jiǎn)單,例如1234之類(lèi)的。到此數(shù)據(jù)庫(kù)的密碼設(shè)置就完成了。
但此時(shí)還有一個(gè)問(wèn)題,就是因?yàn)榘惭b了Yum Repository,以后每次yum操作都會(huì)自動(dòng)更新,需要把這個(gè)卸載掉:
<pre style="margin: 0px; padding: 0px; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch</pre>
此時(shí)才算真的完成了。
轉(zhuǎn)載地址:https://www.cnblogs.com/luohanguo/p/9045391.html