1. 程式人生 > >Centos 下離線rpm包安裝mysql5.7

Centos 下離線rpm包安裝mysql5.7

1 . 安裝新版mysql前,需將系統自帶的mariadb-lib解除安裝。

[root@wst-test02 bbders]# rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
[root@wst-test02 bbders]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

解壓後得到如下安裝包:
這裡寫圖片描述

3 . 使用rpm -ivh命令依次進行安裝;以下步驟需要root許可權。且因包之間的依賴關係,各rpm命令必須按序執行。

rpm -ivh mysql-community-common-5.7
.20-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm #### 安裝mysql-community-server-5.7.20-1.el7.x86_64.rpm前需要安裝libaio-0.3.107-10.el6.x86_64.rpm 下載地址:http://mirror.centos
.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm(若在有網情況下可執行yum install libaio) 安裝成功後,也可把安裝檔案和臨時檔案刪除。 rm mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

4 . 初始化資料庫。

// 指定datadir, 執行後會生成~/.mysql_secret密碼檔案
[root@wst-test02 bbders]# mysql_install_db --datadir=/var/lib/mysql
// 初始化,執行生會在/var/log/mysqld.log生成隨機密碼 [root@wst-test02 bbders]# mysqld --initialize

5 .建立使用者和使用者組

[root@wst-test02 bbders]# groupadd mysql
[root@wst-test02 bbders]# useradd -g mysql -r mysql
[root@wst-test02 bbders]# chown mysql:mysql /var/lib/mysql -R
// 將mysql安裝目錄賦給mysql
[root@wst-test02 bbders]# systemctl start mysqld.service
// 重啟mysql

6 .修改密碼

由於一開始並不知道密碼,先修改配置檔案/etc/my.cnf令MySQL跳過登入時的許可權檢驗。加入一行:skip-grant-tables
重啟MySQL: systemctl restart mysqld
免密碼登入MySQL: mysql -uroot -p 
## 連續敲兩下'回車鍵'
修改root使用者密碼: UPDATE user SET authentication_string = password('your-password') WHERE host = 'localhost' AND user = 'root';
最後修改配置檔案/etc/my.cnf刪除此前新增那一行skip-grant-tables,並重啟MySQL。這一步非常重要,不執行可能導致嚴重的安全問題。

補充報錯處理:
這裡寫圖片描述

解決方式:chown mysql:mysql -R /var/lib/mysql