1. 程式人生 > >記錄阿里雲ECS(Centos7.4)安裝mysql 8.0.X服務

記錄阿里雲ECS(Centos7.4)安裝mysql 8.0.X服務

#*.rpm介紹

大多數二進位制rpm包都包含在名稱中倒數第二個欄位中編譯rpm的體系結構。.rpm軟體包有那麼幾種

*.src.rpm 源程式包,要先通過編譯才能安裝

*.noarch.rpm 該包適用於任何架構

*.i*86.rpm 該包適用於intel cpu的電腦上執行

*.amd64.rpm 該包適用於amd64 cpu的電腦上執行

mysql各種源 傳送門 https://repo.mysql.com/

在這裡,我選擇mysql80-community-release-el7-1.noarch.rpm

======================================================================================

1.登入阿里雲伺服器

 

2.下載源到伺服器

mkdir mysql
cd mysql
wget https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm

3.安裝下載的發行包

rpm -Uvh mysql80-community-release-el7-1.noarch.rpm

4.安裝Mysql

yum install mysql-community-server

5.啟動Mysql

service mysqld start

檢查Mysql狀態 : service mysqld status

6.檢視Mysql密碼

新版mysql安裝之後會生成root使用者的密碼,該密碼儲存在 /var/log/mysqld.log中,使用grep命令檢視密碼。

grep 'temporary password' /var/log/mysqld.log

拷貝密碼備用,登入mysql

7.登入mysql及配置

7.1.登入和修改密碼

mysql -u root -p

必須先進行修改密碼。注意mysql的密碼策略已經更改為中等,需要包括大小寫字母、數字、特殊字元

此處先修改為臨時密碼

ALTER USER 'root'@'localhost' IDENTIFIED BY '
Abc.123!';

檢視密碼策略

show variables like '%password%';

在圖上可看出,密碼策略的長度最少為8位,密碼強度為medium。但實際開發中,我們只是用來做開發,於是設定簡單密碼。

調整密碼策略的長度為6和密碼強度設定為低。

set global validate_password.policy=LOW;
set global validate_password.length=6;

執行完成之後可以修改簡單密碼了。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'abc.123';

7.2.開啟mysql遠端連線功能

 *需要新建可遠端連線的root使用者,然後再授權。直接授權會丟擲異常。

CREATE USER 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;

7.3.調整[email protected]'%'的身份認證方式

*當時用sqlyog連線mysql時,會丟擲如下錯誤。

這是因為mysql8.0更換了認證方式,這是,需要調整回mysql_native_password即可

ALTER USER 'root'@'%'IDENTIFIED WITH mysql_native_password  BY 'abc.123';

 7.4驗證結果

8.**忘記root密碼,重置mysql密碼

8.1改配置讓mysql免密碼登入

vi /etc/my.cnf

在配置檔案中加入,skip-grant-tables 跳過mysql許可權

8.2重啟mysql服務

service mysqld restart

8.3進入mysql及改密碼

mysql -u root
use mysql;
update user set authentication_string='' where user='root' and host='localhost';

8.4退出mysql,在配置檔案中註釋跳過mysql許可權

vi /etc/my.cnf

重啟mysql服務

service mysqld restart

8.5進入mysql,並正常重置密碼

mysql -u root
set global validate_password.policy=LOW;
set global validate_password.length=6;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'abc.123';