/var/lib/mysql → /var/lib/mysql2
⚠️ 必須同步修改 socket 路徑,否則客戶端連接失敗(找不到 socket 文件)。
RPM 安裝的啟動腳本會讀取此變量,配置文件與腳本**雙重保障**。
| 環節 | 關鍵動作 | 常見遺漏 |
|---|---|---|
| 停服務 | 確保進程完全退出 | 殘留進程導致文件鎖定 |
| 複製數據 | cp -R 保留屬性/權限 | 用 cp 非 mv 保留原備份 |
| 權限修正 | chown -R mysql:mysql | 忘記遞歸 -R |
| 配置文件 | 修改 datadir + socket | **只改 datadir 忘改 socket** |
| 啟動腳本 | 同步修改 datadir 變量 | RPM 腳本讀取腳本變量優先 |
| SELinux | CentOS 6/7 需執行 restorecon -R /var/lib/mysql2 | SELinux 阻止 mysqld 讀寫新目錄 |
my.cnf、啟動腳本配置mv /var/lib/mysql2 /var/lib/mysql(或刪除新目錄、重命名舊備份)chown -R mysql:mysql /var/lib/mysqlrestorecon -R /var/lib/mysqlMySQL 數據目錄遷移核心:**停服務 → 複製數據 → 改權限 → 雙配置(my.cnf + 啟動腳本) → 改 socket → SELinux → 啟驗**。每一步驗證,出錯即回滾,確保萬無一失。