【總結】CentOS7-MySQL5.7之Yum安裝方式(替換掉MariaDB)& 五分鐘簡單快速安裝完成

背景

在CentOS7系統中,默認安裝有MariaDB(MySQL的分支),但有時候,我們還是要在系統中安裝自己的MySQL(現在也可以通過docker安裝mysql),安裝完成之後,會直接覆蓋掉MariaDB。

安裝步驟

1. 下載MySQL官方的Yum Repository(Mysql5.7)

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

2. 安裝Yum Repository

yum -y install mysql57-community-release-el7-10.noarch.rpm

3. Yum安裝MySQL

yum -y install mysql-community-server

如圖所示,則表示安裝成功了(可以看到,已經覆蓋掉了系統中的mariadb)

數據庫設置

1. 啓動MySQL,執行命令:

systemctl start mysqld.service

2. 查看MySQL運行狀態,執行命令,運行狀態如下圖:

systemctl status mysqld.service

此刻,MySQL已經開始正常運行了

3. 但是,想進入MySQL之前,還得先找出此時root用戶的密碼,執行下面命令可以在日誌文件中,找到初始密碼:

grep "password" /var/log/mysqld.log

4. 如下命令進入數據庫(回車後會提示輸入密碼):

mysql -uroot -p

輸入初始密碼,此時不能做任何事情,因爲MySQL默認必須修改密碼之後才能操作數據庫:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

這裏有個問題,新密碼設置的時候如果設置的過於簡單會報錯,如下圖:

原因是:因爲MySQL有密碼設置的規範,具體是與validate_password_policy的值有關:

修改密碼成功後,可以查看MySQL完整的初始密碼規則,如下命令查看:

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | OFF    |
| validate_password_dictionary_file    |        |
| validate_password_length             | 8      |
| validate_password_mixed_case_count   | 1      |
| validate_password_number_count       | 1      |
| validate_password_policy             | MEDIUM |
| 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)

解決方法就是修改密碼爲規範複雜的密碼,如:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'z?guwrBhH7p>';
Query OK, 0 rows affected (0.00 sec)

如果我們想要修改密碼規則,則執行下面sql就可以了:

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

設置成功後,此時密碼就可以設置爲簡單的密碼了,例如:123456

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)

到此,數據庫的密碼設置就完成了。

配置優化

1. 因爲安裝了Yum Repository,以後每次yum操作都會自動更新,所以把這個卸載掉:

yum -y remove mysql57-community-release-el7-10.noarch

2. 操作完成上面的,現在還不能用可視化的客戶端進行連接(如Navicat),需要進行授權(登錄進入數據庫):

mysql> grant all on *.* to root@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)

其他資料

  1. Docker系列 ~ 在Centos系統中安裝docker(一)
  2. Docker系列~安裝MySQL(五)
  3. 【踩坑】如何強制更改Docker容器中的Mysql密碼(忘記密碼)
  4. 【總結+踩坑】MySQL導出導入用法/最大連接數以及其他常見問題

參考資料

  1. MySQL安裝之yum安裝

 

 

至此,全部介紹就結束了

 

 

-------------------------------

-------------------------------

 

我的CSDN主頁

關於我(個人域名)

我的開源項目集Github

 

期望和大家一起學習,一起成長,共勉,O(∩_∩)O謝謝

歡迎交流問題,可加個人QQ 469580884,

或者,加我的羣號 751925591,一起探討交流問題

不講虛的,只做實幹家

Talk is cheap,show me the code

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章