在本地學習環境 XAMPP 中啟動 MySQL 時遇到 shutdown unexpectedly 錯誤,經排查發現是 ibdata1 損壞導致。記錄解決過程供參考。
14:39:05 [mysql] Error: MySQL shutdown unexpectedly.
14:39:05 [mysql] This may be due to a blocked port, missing dependencies,
14:39:05 [mysql] improper privileges, a crash, or a shutdown by another method.
14:39:05 [mysql] Press the Logs button to view error logs...
D:\xampp)mysql\data 資料夾ibdata1 檔案並刪除(或備份後刪除)


ibdata1 是 InnoDB 共享表空間檔案,儲存資料字典、Undo Log、雙寫緩衝等關鍵資訊。若檔案損壞(如強制關機、磁碟錯誤、遷移不完整),InnoDB 無法初始化,導致 MySQL 崩潰。刪除後 MySQL 會自動建立新的 ibdata1,但原資料庫資料會遺失(僅保留表結構 .frm 檔案)。
ibdata1,應從備份恢復或用 innodb_force_recovery 嘗試搶救資料若需保留資料,可嘗試在 my.ini [mysqld] 區段加入:
innodb_force_recovery = 1
由 1 遞增至 6 嘗試啟動並匯出資料,匯出完成後移除參數重建實例。