首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Windows 服務器 MySQL 啟動失敗(錯誤 1067)完整排查指南

     編輯:MySQL 綜合教學

現象

MySQL 服務無法啟動。
系統出錯。
發生系統錯誤 1067。
進程意外終止。

方案一:清理 Windows 臨時文件(最常見、最簡單)

  1. Win+R → cmd 打開命令提示符
  2. 執行:del C:\Windows\Temp\*.* /s /q
  3. 等待刪除完成,重啟 MySQL 服務

運行 cmd 刪除臨時文件命令

原理: 滿載的 Temp 目錄導致 MySQL 無法創建臨時文件/管道,清理後即可恢復。

方案二:配置文件錯誤修復(針對 1067 錯誤深度排查)

問題 1:my.ini 配置路徑錯誤

  1. 刪除所有位置的 my.ini(C:\Windows\my.ini、安裝目錄等)
  2. 將安裝目錄下的 my-small.ini 複製為 my.ini
  3. 編輯 my.ini,在 [mysqld] 區段末尾添加:
    basedir=C:\mysql-5.1.11-beta-win32
    datadir=C:\mysql-5.1.11-beta-win32\data
  4. 重新註冊服務:
    mysqld-nt --remove
    mysqld-nt --install
    net start mysql

問題 2:InnoDB 無法創建臨時文件(errno: 2)

錯誤日誌關鍵行:

InnoDB: Error: unable to create temporary file; errno: 2
[ERROR] Plugin 'InnoDB' init function returned error.

解決: 在 my.ini 的 [mysqld] 區段指定臨時目錄:

[mysqld]
tmpdir="D:\MySQL\tmp"  # 確保該目錄存在、可寫、磁盤空間充足

建議使用非系統盤、非中文路徑、權限正確的目錄。

方案三:通用排查清單

步驟操作說明
1查看錯誤日誌datadir/*.err,關注 [ERROR]、InnoDB: 開頭行
2檢查端口佔用netstat -ano | findstr 3306,殺掉佔用進程
3驗證配置文件語法mysqld --help --verbose 2>nul | findstr "my.cnf"
4檢查數據目錄權限確保 MySQL 服務賬戶對 datadir 有完全控制權
5磁盤空間dir 確認數據盤剩餘空間 > 1GB
6重新安裝服務mysqld --remove && mysqld --install 修復註冊表

最佳實踐建議

  • ✅ 生產環境使用 my.ini 絕對路徑,避免多配置文件衝突
  • ✅ tmpdir、datadir、log-error 統一指向專用盤,非系統盤
  • ✅ 定期清理 C:\Windows\Temp,或修改系統環境變數 TEMP/TMP 指向大盤
  • ✅ 服務啟動類型設為「自動(延遲啟動)」,避免開機競爭資源

遇到 1067 錯誤,**先清 Temp、再查錯誤日誌、再核對 my.ini 路徑與權限**,90% 情況可在 10 分鐘內解決。

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