Linux系統(tǒng)下安裝MySQL8.0圖文教程
Linux系統(tǒng)下安裝MySQL8.0圖文教程
1.環(huán)境準(zhǔn)備
1.1. 操作系統(tǒng)
Centos7.3,中標(biāo)麒麟7.6
1.2. 防火墻配置(可關(guān)閉防火墻,不建議)
操作系統(tǒng)開啟防火墻(注意:不建議把防火墻關(guān)閉,應(yīng)該設(shè)置開放對應(yīng)的端口,或者開放給哪些IP地址的哪些端口)。
(1) 防火墻端口開放設(shè)置:http://www.rzrgm.cn/liuqq1015/p/15308666.html。
(2) 允許特定IP訪問指定端口:http://www.rzrgm.cn/liuqq1015/p/17078159.html。
1.3. Mysql資源包下載
資源下載地址:https://dev.mysql.com/downloads/mysql/。按照下圖選擇下載對應(yīng)資源包。

2. 卸載MySql
2.1. 查看MySQL安裝版本
rpm -qa|grep -i mysql

2.2. 關(guān)閉MySQL服務(wù)
systemctl stop mysqld.service
2.3. 查看MySQL服務(wù)狀態(tài),確認(rèn)MySQL是否關(guān)閉
systemctl status mysqld.service

2.4. 執(zhí)行卸載命令
# rpm -ev --nodeps 上面第一步查出來的名字,如:
rpm -ev --nodeps mysql-community-server-8.0.29-1.el7.x86_64

再次執(zhí)行 rpm -qa|grep -i mysql 會(huì)發(fā)現(xiàn)已經(jīng)卸載完成。
2.5. 查找出mysql對應(yīng)的目錄
find / -name mysql

2.6. 刪除對應(yīng)的mysql目錄rm -rf 上面查出來的名字,刪除完后再次執(zhí)行find / -name mysql進(jìn)行確認(rèn)

2.7. 手動(dòng)卸載my.cnf文件
rm -rf /etc/my.cnf
2.8. 檢查是否卸載成功
rpm -qa | grep -i mysql 或者 systemctl start mysql

2.9. MySQL的卸載徹底完成!
3.安裝MySql
3.1. 檢查是否安裝了 mariadb 數(shù)據(jù)庫
檢查系統(tǒng)是否安裝了mariadb數(shù)據(jù)庫, mariadb數(shù)據(jù)庫是mysql的分支,是免費(fèi)開源的。 mariadb和msyql會(huì)有沖突。首先要檢查安裝了mariadb, 如果有,需要卸載掉。
檢查命令:
使用:yum list installed | grep mariadb 或 rpm -qa | grep mariadb

3.2. 卸載 mariadb
若linux中安裝了mariadb數(shù)據(jù)庫,先卸載掉, mariadb數(shù)據(jù)庫可能與安裝mysql發(fā)生沖突。
執(zhí)行命令:yum -y remove mariadb-libs-5.5.68-1.el7.x86_64
或者執(zhí)行:rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps

3.3. 上傳mysql安裝文件到/usr/local/mysql目錄中

3.4. 解壓 tar 包

3.5. 依次安裝所需要的rpm包即可
rpm -ivh mysql-community-common-8.0.32-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.32-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-compat-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.32-1.el7.x86_64.rpm
3.6. 查看 mysql 的安裝包

4.MySql配置
4.1. 完成對 mysql 數(shù)據(jù)庫的初始化和相關(guān)配置
mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;

4.2. 查看數(shù)據(jù)庫的密碼
通過 cat /var/log/mysqld.log | grep password 命令查看數(shù)據(jù)庫的密碼。

4.3. 數(shù)據(jù)庫登陸
通過 mysql -uroot -p 敲回車鍵進(jìn)入數(shù)據(jù)庫登陸界面。

4.4. 修改密碼
通過 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; 命令來修改密碼。
4.5. 遠(yuǎn)程訪問的授權(quán)
通過以下命令,進(jìn)行遠(yuǎn)程訪問的授權(quán)。
(1)、創(chuàng)建遠(yuǎn)程訪問
create user 'root'@'%' identified with mysql_native_password by 'root'; #如果存在對應(yīng)用戶(如root用戶),則無需create,直接運(yùn)行后續(xù)兩行即可
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

(2)修改遠(yuǎn)程訪問,存在對應(yīng)用戶
方式1:
use mysql;
select host,user from user; # 查詢當(dāng)前狀態(tài)
update user set host = '%' where user = 'root'; # 修改訪問限制為%
flush privileges; # 重新載入授權(quán)表,刷新權(quán)限緩存
方式2:
grant all privileges on *.* to 'root'@'%' ; # all privileges代表所有權(quán)限。*.*代表“庫.表”
flush privileges; # 重新載入授權(quán)表,刷新權(quán)限緩存
4.6. 修改加密規(guī)則
通過 ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER; 命令修改加密規(guī)則,MySql8.0 版本 和 5.0 的加密規(guī)則不一樣,而現(xiàn)在的可視化工具只支持舊的加密方式。

4.7. 測試連接

本地可訪問,遠(yuǎn)程訪問不了的情況:1、服務(wù)器的防火墻是否設(shè)置。如果開啟了需要開通mysql的對應(yīng)端口。2、MySQL的訪問授權(quán)是否設(shè)置。

浙公網(wǎng)安備 33010602011771號