VMware workstation16 中Centos7下MySQL8.0安裝過程+Navicat遠端連線

ld_nil發表於2021-08-31

1.MySQL yum源安裝

2.安裝後,首次登入mysql以及密碼配置
3.遠端登入問題(Navicat15為例)


一、CentOS7+MySQL8.0,yum源安裝
1.安裝mysql前應解除安裝原有mysql,如果沒有請忽慮
1.1找出原有mysql安裝目錄
輸入命令      rpm -qa | grep mysql    後出現以下幾行

 

1.2用以下命令依次刪除上述出現的檔案

 

1.3刪除mysl配置檔案


2.yum源安裝mysql8.0
2.1下載repo源
可從mysql官網上獲取到repo源 ,點選以下連結(按需要下載,我下載的是下圖畫紅線的Linux7版本的)     https://dev.mysql.com/downloads/repo/yum/

 

 

 

點選Download後直接點選下圖畫紅圈的地方

 2.2下載完成後通過Xftp把檔案傳到虛擬機器master的資料夾   /usr/local/module/  中(資料夾可自定義)

 

2.3yum安裝repo
yum install mysql80-community-release-el7-3.noarch.rpm
安裝完畢後 cd  /etc/yum.repos.d,進入該目錄可以看到剛加入的repo

 

 

 

 

完畢後,用以下命令更新yum快取


2.4yum安裝mysql
2.4.1修改安裝版本(預設最高版本)
因為官網最新的repo源中,包括了mysql的許多版本,可以通過cat /etc/yum.repos.d/mysql-community.repo ,修改各版本的enabled的值來確定安裝哪個版本

cat /etc/yum.repos.d/mysql-community.repo

上圖可看到,5.5,5.6和5.7的版本,enabled值為0,為不安裝;

8.0及其它工具,enabled值為1,為安裝。預設安裝最高版本,可以不修改

2.4.2執行安裝命令
yum install mysql-community-server
可能出現的問題:

由於網路問題,可能會出現缺少依賴的問題

Delta RPMs disabled because /usr/bin/applydeltarpm not installed
這時只需要安裝對應缺少的依賴即可

yum -y install deltarpm
另外,因為網路環境差,網路速度慢,與mysql官方源連線慢等原因,安裝過程中,可能會出現中斷等問題,多次執行yum install,直到安裝完畢即可。

二、登入mysql以及修改密碼
1.啟動mysql服務
1.1開啟mysql服務
systemctl start mysqld
1.2設定mysql服務開機自啟
systemctl enable mysqld
systemctl daemon-reload
1.3檢視mysql服務狀態
systemctl status mysqld

 

 

 出現active  (running) 表示MySQL在執行,服務開啟成功

 

2.檢視mysql初始登入密碼
mysql8.0安裝時,已經分配了預設初始密碼,需要手動檢視

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

 

 

 root@localhost: 後為初始密碼,複製好

 

3.修改mysql登入密碼
注意:官方源中安裝的mysql預設安裝了密碼安全檢查外掛(validate_password),預設密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements錯誤,本文不推薦修改預設的密碼安全策略

3.1進入資料庫中修改root使用者密碼

mysql -uroot -p

Enter password: 後輸入密碼,密碼為檢視的初始密碼(也就是上一步複製的東西,貼上完是不顯示的,直接按enter鍵)

然後use mysql

 

 

 執行use mysql後再輸入

ALTER user 'root'@'localhost' IDENTIFIED BY 'XXXXXXXXXX';

單引號中的內容為密碼

注意輸入完後會出現錯誤ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

出錯原因是因為密碼策略問題,密碼不能太過簡單

然後可以檢視一下密碼策略,在此之前先更改一下密碼,否則無論你操作什麼都會提示你修改密碼,

再次輸入ALTER user 'root'@'localhost' IDENTIFIED BY '12Loang';

如果沒報錯直接跳到3.11

如果還是報相同的錯誤,直接跳到3.12

3.11 輸入以下命令檢視對應的引數

SHOW VARIABLES LIKE 'validate_password%';

3.12然後修改引數,輸入以下命令

set global validate_password.policy=0;

set global validate_password.length=1;

 

 然後就是修改自己想配置的密碼了(我配的是123456,你們隨意,建議還是使用複雜點的密碼)

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

 

4.登入mysql
現在可通過  mysql -uroot  -p

輸入密碼登入到mysql了

 

三、遠端登入
1.修改root使用者的host
首先登入mysql資料庫,並切換到mysql庫

mysql -uroot  -p123456             #  -p後可直接根密碼

use mysql
再檢視root使用者的host屬性

select host,user from user;

 

 root使用者的host預設為localhost,需要改為%(上圖是修改過的),即可允許遠端登入資料庫,輸入下面命令

update user set host='%' where user='root';

修改完成後,使用以下命令重新整理,使修改有效

flush privileges;
2.使用Navicat15登入
在使用 Navicat for Mysql連線mysql 8.0時會報如下錯誤:

Authentication plugin 'caching_sha2_password' cannot be loaded:
這是由於navicat密碼加密方式為mysql_native_password ,而mysql預設加密格式為 caching_sha2_password

只需修改root使用者密碼加密方式與navicat相同即可

執行命令

update user set plugin='caching_sha2_password' where user='root';
flush privileges;

開啟Navicat Preminum,點選連線,再點選MySQL出現下圖介面

 

 連線名隨便取

主機就填你安裝MySQL的虛擬主機IP

埠一般都是3306不會變

使用者名稱填root使用者

密碼就是你登入root時用的密碼

點選測試連線,出現連線成功就大功告成了

 

 

相關文章