這篇文章主要通過使用 RPM 安裝包的方式在 CentOS 7 系統(tǒng)上安裝 MySQL 5.7,記錄了完整的安裝過程和遇到的一些細(xì)節(jié),在知道如何安裝的同時(shí),還能知道為什么要這樣安裝,希望看完這篇文章,可以對(duì)大家在安裝 MySQL 的過程中帶來一些幫助,下面開始。
一、安裝環(huán)境
安裝環(huán)境如下:
服務(wù)器:CentOS 7
安裝版本:MySQL 5.7.28
二、安裝過程和細(xì)節(jié)
1、在官網(wǎng)下載 RPM 安裝包
官網(wǎng)下載地址如下,這個(gè)地址里有各個(gè)版本的安裝包,根據(jù)自己的版本選擇,下載對(duì)應(yīng)系統(tǒng)的安裝包
因?yàn)檫@里我們是在 CentOS 7 系統(tǒng)上安裝,所以操作系統(tǒng)選擇 Red Hat Enterprise Linux,系統(tǒng)版本選擇 Linux 7,通過使用 RPM 安裝包的方式,所以下載RPM Bundle即可,里面包含了一個(gè)版本所有的 RPM 包,下載完后,上傳到服務(wù)器上,這里下載的包名是 mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar。

2、刪除本地默認(rèn)安裝的 MySQL
MySQL 除了自己的發(fā)行版本外,還有其他的第三方分支版本,比如 MariaDB,一般 CentOS 系統(tǒng)服務(wù)器上會(huì)默認(rèn)安裝這個(gè)版本的數(shù)據(jù)庫,如果存在,需要先刪掉,先用下面命令查看
rpm -qa | grep mariadb
如果發(fā)現(xiàn)存在,用下面命令刪除
rpm -e --nodeps mariadb-XXX -- 其中 XXX 表示不同版本
3、安裝 MySQL
第一步已經(jīng)下載好了安裝包,我們解壓開來,發(fā)現(xiàn)主要有下面幾個(gè) RPM 安裝包
mysql-community-client-5.7.28-1.el7.x86_64.rpm
mysql-community-common-5.7.28-1.el7.x86_64.rpm
mysql-community-devel-5.7.28-1.el7.x86_64.rpm
mysql-community-embedded-5.7.28-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.28-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.28-1.el7.x86_64.rpm
mysql-community-libs-5.7.28-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
mysql-community-server-5.7.28-1.el7.x86_64.rpm
mysql-community-test-5.7.28-1.el7.x86_64.rpm
上面是一個(gè)版本所有相關(guān)的 RPM 安裝包,但是安裝一個(gè)可用的 MySQL,只需要下面這 4 個(gè)即可
- mysql-community-server
- mysql-community-client
- mysql-community-common
- mysql-community-libs
因?yàn)橐恍?MySQL 相關(guān)的開源工具,比如 Percona XtraBackup(MySQL 第三方開源備份工具),會(huì)需要依賴 mysql-community-libs-compat 這個(gè)包,所以最好安裝的時(shí)候也一并裝上。這里提供兩種安裝命令,記住要在安裝包目錄下執(zhí)行下面命令,不然會(huì)找不到安裝包。
第一種(推薦),使用下面 Yum 安裝命令安裝,這種方式比較方便,因?yàn)楦鱾€(gè) RPM 安裝包之間存在依賴,通過這種方式會(huì)自己解決依賴問題
yum install mysql-community-{server,client,common,libs}-*
第二種,使用 RPM 安裝命令安裝,這種方式需要一個(gè)個(gè)執(zhí)行安裝命令,并且需要自己解決依賴問題,按下面的安裝順序即可
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
安裝成功后,服務(wù)器上就會(huì)有 MySQL 相關(guān)的各種文件,主要有下面這些
| 名稱 | 位置 |
|---|---|
| 用戶和用戶組 | 增加一個(gè) mysql 非登錄用戶和用戶組,后續(xù)相關(guān)文件目錄權(quán)限都會(huì)是 mysql,并且啟動(dòng)會(huì)以 mysql 用戶啟動(dòng) |
| 配置文件 | /etc/my.cnf |
| 數(shù)據(jù)文件目錄 | /var/lib/mysql |
| 日志文件 | /var/log/mysqld.log |
| 執(zhí)行文件 | /usr/bin、/usr/sbin 下面會(huì)有 MySQL 的一些執(zhí)行文件,比如 mysqld |
| 系統(tǒng)啟動(dòng)配置文件 | /usr/lib/systemd/system/mysqld.service |
4、啟動(dòng) MySQL
到這步說明安裝過程基本完成,這里就按默認(rèn)的配置文件/etc/my.cnf不作修改,因?yàn)樘砑恿讼到y(tǒng)啟動(dòng)配置文件,所以直接執(zhí)行下面命令,啟動(dòng) MySQL 很方便
systemctl start mysqld.service
如果一切順利的話,MySQL 啟動(dòng)成功,會(huì)生成一個(gè)默認(rèn)的 root@localhost 密碼,并在日志文件中顯示,用下面命令可以查看
cat /var/log/mysqld.log | grep "temporary password"
登錄后,一般會(huì)要求先修改默認(rèn)密碼,用下面命令修改密碼后,就可以正常使用了
ALTER USER 'root'@'localhost' IDENTIFIED BY '重置的密碼';
到這里,通過 RPM 安裝包方式安裝 MySQL 5.7.28 已經(jīng)完成。
5、總結(jié)所有安裝命令
上面是具體的安裝步驟,看著很多內(nèi)容,其實(shí)總結(jié)下,就是下面幾個(gè)命令
cd /usr/local -- 我的安裝包放在這個(gè)目錄下,這個(gè)按自己需求而定
tar -zxvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -- 解壓安裝包
cd mysql-5.7.28-1.el7.x86_64.rpm-bundle
yum install mysql-community-{server,client,common,libs}-*
systemctl start mysqld.service
6、刪除 MySQL
安裝完 MySQL 后,不需要了怎么刪呢,可以用下面命令刪除
yum remove mysql
不過這個(gè)命令刪除后并不會(huì)完全刪除 MySQL 相關(guān)的文件,剩下的可以參考上面列出的相關(guān)文件,自己手動(dòng)刪除。同時(shí)可以用下面命令查看還有哪些殘留的 Mysql 包,用rpm -e --nodeps刪除對(duì)應(yīng)安裝包
rpm -qa | grep mysql
三、使用 RPM 安裝包方式的優(yōu)缺點(diǎn)
使用 RPM 安裝包安裝 MySQL 的方式是我推薦的方式,下面是我總結(jié)的優(yōu)缺點(diǎn)。
- 優(yōu)點(diǎn):可以自由的選擇安裝版本,這點(diǎn)挺重要的,因?yàn)?MySQL 也在不斷迭代更新,如果使用 Yum 存儲(chǔ)庫的方式安裝,會(huì)安裝最新的版本,那就有可能和我們目前使用的版本不一致,如果涉及到數(shù)據(jù)庫遷移,最好還是使用一致的數(shù)據(jù)庫版本。另外,這種方式安裝也很方便。
- 缺點(diǎn):需要提前準(zhǔn)備好 RPM 安裝包,一般都比較大,500MB以上。