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

MySQL 啟動報錯 "The server quit without updating PID file" 完整排查與解決

     編輯:MySQL 綜合教學

MySQL 啟動失敗:PID 檔案未更新錯誤完整排查指南

一、錯誤現象

ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid)

環境:Red Hat 6、MySQL 5.6

二、核心排查步驟

1. 檢查資料目錄權限

ls -ld /var/lib/mysql
# 應為 mysql:mysql 擁有,且具寫入權限
chown -R mysql:mysql /var/lib/mysql
chmod 750 /var/lib/mysql

2. 檢查殘留進程(最常見原因)

ps -ef | grep mysql
# 發現殘留 mysqld 進程
kill -9 
# 或
pkill -9 mysqld

根因:系統啟動時 MySQL 已自動啟動(chkconfig mysqld on),手動再次 service mysql start 導致衝突,舊進程佔用資源、鎖定檔案。

3. 清理鎖定檔案

rm -f /var/lib/mysql/*.pid
rm -f /var/lib/mysql/*.sock
rm -f /var/lib/mysql/ib_logfile*  # 僅在確認無資料遺失風險時

4. 重新啟動驗證

service mysql start
# MySQL 5.7+ 使用 service mysqld start
ls -l /var/lib/mysql/mysql.sock  # 確認 socket 生成

三、系統服務自啟動管理

# 查看所有服務運行級別
chkconfig --list

# 查看 MySQL
chkconfig --list mysqld

# 關閉 2/3/4/5 級別自啟動
chkconfig --level 2345 mysqld off

# 開啟
chkconfig --level 2345 mysqld on

Linux 運行級別:0 關機、1 單用戶、2 多用戶無網路、3 多用戶有網路、4 保留、5 圖形介面、6 重啟。

四、啟動日誌分析

cat /var/log/boot.log
# 查看啟動過程中 MySQL 是否已自動啟動成功

五、版本差異提醒

  • MySQL 5.6:服務名 mysql,service mysql start
  • MySQL 5.7+:服務名 mysqld,service mysqld start
  • MariaDB:通常為 mariadb

六、預防清單

  1. 安裝後確認 chkconfig --list mysqld 狀態
  2. 避免重複執行啟動指令
  3. 腳本啟動前先 service mysql status 檢查
  4. 配置 pid-file 路徑至可寫目錄
  5. 定期檢查 /var/log/mysqld.log 錯誤日誌
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved