說明
本文寫于2017-05-20,使用MySQL-5.7.18。操作系統為64位CentOS Linux release 7.2.1511 (Core),以桌面形式安裝。
卸載MariaDB
CentOS7默認安裝MariaDB而不是MySQL,而且yum服務器上也移除了MySQL相關的軟件包。因為MariaDB和MySQL可能會沖突,故先卸載MariaDB。
1、查看已安裝的MariaDB相關rpm包。
| rpm -qa | grep mariadb |
2、查看已安裝的MariaDB相關yum包,包名需根據rpm命令的結果判斷。
| yum list mariadb-libs |
3、移除已安裝的MariaDB相關yum包,包名需根據yum list命令的結果判斷。此步驟需要root權限。
| yum remove mariadb-libs |
下載MySQL rpm包
由于軟件包很大,可以先用其他方式(如迅雷)下載。使用rpm方式,還可在無法聯網的條件下安裝——這是yum無法做到的。如需安裝其他版本的MySQL,請自行到官網搜索相應的rpm下載鏈接。
使用rpm包安裝MySQL
以下步驟需要root權限。且因包之間的依賴關系,各rpm命令必須按序執行。
| mkdir mysql-5.7.18tar -xv -f mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar -C mysql-5.7.18cd mysql-5.7.18/rpm -ivh mysql-community-common-5.7.18-1.el7.x86_64.rpmrpm -ivh mysql-community-libs-5.7.18-1.el7.x86_64.rpmrpm -ivh mysql-community-client-5.7.18-1.el7.x86_64.rpmrpm -ivh mysql-community-server-5.7.18-1.el7.x86_64.rpm |
安裝成功后,也可把安裝文件和臨時文件刪除。
| cd ..rm -rf mysql-5.7.18rm mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar |
修改MySQL初始密碼
以下步驟需要root權限。
1.由于一開始并不知道密碼,先修改配置文件/etc/my.cnf令MySQL跳過登錄時的權限檢驗。加入一行:
| skip-grant-tables |
2.重啟MySQL。
| service mysqld restart |
3.免密碼登錄MySQL。
| mysql |
4.在mysql客戶端執行如下命令,修改root密碼。
| use mysql;UPDATE user SET authentication_string = password('your-password') WHERE host = 'localhost' AND user = 'root';quit; |
5.修改配置文件/etc/my.cnf刪除此前新增那一行skip-grant-tables,并重啟MySQL。這一步非常重要,不執行可能導致嚴重的安全問題。
6.使用剛剛設置的密碼登錄。
| mysql -u root -p |
7.MySQL會強制要求重新修改密碼,且不能為簡單規則密碼。
| ALTER USER root@localhost IDENTIFIED BY 'your-new-password'; |