首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 5.6.14 升級 5.6.25 安全修補完整操作手冊

     編輯:MySQL 資料庫相關知識

升級背景

漏洞掃描發現 MySQL 5.6.14 存在高危漏洞(影響 5.6.17 及之前版本),升級至 5.6.25 修補。

升級前準備

  1. 下載 RPM Bundle:MySQL-5.6.25-1.el6.x86_64.rpm-bundle.tar
  2. mysqldump 完整備份所有資料庫
  3. 備份 /etc/my.cnf
  4. 停止服務:service mysql stop

核心步驟:僅升級 server 與 client

# 1. 解壓
tar -xvf MySQL-5.6.25-1.el6.x86_64.rpm-bundle.tar

# 2. 確認現有元件
rpm -qa | grep -i mysql
# 僅需升級:mysql-community-server, mysql-community-client

# 3. 先卸舊版(否則檔案衝突)
rpm -e mysql-community-server-5.6.14-3.el6.x86_64
rpm -e mysql-community-client-5.6.14-3.el6.x86_64

# 4. 安裝新版
rpm -ivh MySQL-server-5.6.25-1.el6.x86_64.rpm
rpm -ivh MySQL-client-5.6.25-1.el6.x86_64.rpm

# 5. 還原配置
cp /etc/my.cnf_backup /etc/my.cnf

# 6. 啟動
service mysql start

關鍵坑點與解決

1. 安裝後 root 密碼為隨機生成

安裝輸出會提示:A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER ! You will find that password in '/root/.mysql_secret'
首次登入必須修改密碼:SET PASSWORD = PASSWORD('newpass');

2. Socket 路徑不一致導致無法連線

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data1/mysql/mysql.sock'
原因:my.cnf 僅在 [client] 設定 socket,[mysqld] 缺失。
修正:在 [mysqld] 區段補上 socket=/data1/mysql/mysql.sock,重啟服務。

驗證升級成功

mysql -h localhost -u root -p
SHOW VARIABLES LIKE 'version';  -- 5.6.25
SHOW DATABASES;                 -- 業務庫完整保留

回滾方案

若升級失敗:停止服務 → 還原 my.cnf → 重裝舊版 RPM → 匯入 mysqldump 備份。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved