# 服務名通常為 mysqld (官方 RPM) 或 mysql (Ubuntu/Debian 套件)
systemctl start mysqld # 啟動
systemctl stop mysqld # 停止
systemctl restart mysqld # 重啟
systemctl status mysqld # 狀態
systemctl enable mysqld # 開機自啟
systemctl disable mysqld # 取消開機自啟
# 查看服務名
systemctl list-units | grep -i mysql
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
/etc/init.d/mysqld restart
/etc/init.d/mysqld status
# 或 service 指令 (紅帽系支援)
service mysqld start
service mysqld stop
service mysqld restart
service mysqld status
/etc/init.d/mysql start
/etc/init.d/mysql stop
/etc/init.d/mysql restart
/etc/init.d/mysql status
# service 指令通用
service mysql start
service mysql stop
service mysql restart
service mysql status
# 啟動 (後台執行)
# 假設安裝路徑 /usr/local/mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
# 或使用 mysql.server 腳本
/usr/local/mysql/support-files/mysql.server start
# 停止
/usr/local/mysql/bin/mysqladmin -u root -p shutdown
# 重啟 (停止後啟動)
/usr/local/mysql/bin/mysqladmin -u root -p shutdown
/usr/local/mysql/bin/mysqld_safe --user=mysql &
# 命令提示字元 (需管理員權限)
net start mysql # 啟動
net stop mysql # 停止
# Windows 無直接 restart,需停止後啟動
# PowerShell
Start-Service mysql
Stop-Service mysql
Restart-Service mysql
# 服務管理器 (services.msc) 圖形介面操作
# 手動啟動 (除錯/前景模式)
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld" --console
# Linux
killall mysql # 發送 SIGTERM
killall -9 mysql # 強制 SIGKILL (極度不推薦,易損壞資料)
# Windows
taskkill /F /IM mysqld.exe
警告:強制殺死進程會導致 InnoDB 崩潰恢復、資料頁損壞、雙寫緩衝不一致。僅在服務完全無響應、正常停止無效時作為最後手段,重啟後必須檢查錯誤日誌並驗證資料完整性。
| 安裝方式 | 配置檔 | 啟動腳本 | PID 檔 | Socket | 錯誤日誌 |
|---|---|---|---|---|---|
| 官方 RPM (CentOS/RHEL) | /etc/my.cnf | /usr/lib/systemd/system/mysqld.service | /var/run/mysqld/mysqld.pid | /var/lib/mysql/mysql.sock | /var/log/mysqld.log |
| Ubuntu/Debian 套件 | /etc/mysql/mysql.conf.d/mysqld.cnf | /etc/init.d/mysql | /var/run/mysqld/mysqld.pid | /var/run/mysqld/mysqld.sock | /var/log/mysql/error.log |
| 原始碼編譯 (prefix=/usr/local/mysql) | /usr/local/mysql/my.cnf 或 /etc/my.cnf | /usr/local/mysql/support-files/mysql.server | /usr/local/mysql/var/hostname.pid | /usr/local/mysql/var/mysql.sock | /usr/local/mysql/var/hostname.err |
| Windows (MSI) | C:\ProgramData\MySQL\MySQL Server 8.0\my.ini | Windows Service: MySQL80 | C:\ProgramData\MySQL\MySQL Server 8.0\Data\hostname.pid | Named Pipe / TCP | C:\ProgramData\MySQL\MySQL Server 8.0\Data\*.err |
tail -f /var/log/mysqld.log 或對應路徑mysqld --help --verbose 2>&1 | head -20 (若報錯則配置有誤)ls -ld /var/lib/mysql 擁有者應為 mysql:mysqlnetstat -tlnp | grep 3306 / ss -tlnp | grep 3306df -h /var/lib/mysqlausearch -m avc -ts recent / aa-statusmysqld --user=mysql --console 直接看輸出docker run -d --restart=unless-stopped --name mysql ... 由容器引擎管理生命週期StatefulSet + livenessProbe/readinessProbemysqld_exporter + Grafana 儀表板,告警規則覆蓋服務狀態、連線數、慢查詢、磁碟空間MySQL 服務管理命令雖因安裝方式、作業系統而異,但核心邏輯一致:**systemd 為現代標準、mysqld_safe 為通用備選、Windows 用服務管理器**。建立標準化運維手冊,記錄專案實際路徑與命令,配合自動化部署與監控,實現零觸運維。