MySQL 原安裝於 G:\sites\mysql,將資料夾重命名為 Inetpub 導致路徑變更 G:\Inetpub\mysql,服務啟動報錯 1067(進程意外中止)。
mysqld-nt -removemysqld-nt -install MySQL --defaults-file="G:\Inetpub\mysql\my.ini"C:\winnt\my.ini(舊殘留) → 仍 1067my.ini 中 basedir/datadir 為新路徑 → 仍 1067C:\Program Files\MySQL\...)→ **啟動成功!**datadir 指向預設 data 目錄G:\Inetpub\mysql → 1067datadir 改為 G:/Inetpub/mysql/data/ → **1067 復發** → 證實**資料目錄/資料檔案問題**ib_logfile*、ibdata1、.pid、.err)導致 InnoDB 恢復失敗ibdata1(系統表空間)、ib_logfile*(Redo Log)innodb_log_file_size 等)不匹配# 1. 正常關閉
net stop MySQL
# 2. 複製整個安裝目錄(含 Data)到新位置
# 3. 修改新位置 my.ini basedir/datadir
# 4. 註冊服務指定新配置
mysqld --install MySQL --defaults-file="新路徑\my.ini"
# 5. 啟動驗證
net start MySQL
# 若必須清理 Data 目錄(如換機器、換版本):
# 只保留 子資料夾(資料庫目錄),刪除 ibdata1、ib_logfile*、*.pid、*.err、auto.cnf 等根目錄檔案
| 檢查項 | 指令/動作 |
|---|---|
| 錯誤日誌 | type "錯誤日誌路徑\主機名.err"(my.ini log-error 指定) |
| 配置語法 | mysqld --verbose --help 2>&1 | head -20 檢查解析錯誤 |
| 權限 | 服務啟動用戶對 basedir/datadir 讀寫權限 |
| 端口佔用 | netstat -ano | findstr 3306 |
| Data 目錄殘留 | 刪除 ibdata1/ib_logfile*/*.pid/*.err/auto.cnf(保留資料庫子目錄) |
| InnoDB 配置匹配 | innodb_log_file_size 變更需刪除舊 ib_logfile* |
| SELinux/AppArmor | Linux 環境檢查審計日誌 ausearch -m avc |