$MYSQL_DIR/bin/mysqladmin -u root -p shutdown
# 提示輸入 root 密碼
# 發送 SHUTDOWN 命令,MySQL 線程執行:
# 1. 關閉連接、停止接受新請求
# 2. 刷新髒頁到磁盤 (Checkpoint)
# 3. 關閉存儲引擎、釋放資源
# 4. 進程正常退出 (exit code 0)
$MYSQL_DIR/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
# mysqld_safe 特性:
# - 監護進程:mysqld 崩潰自動重啟
# - 錯誤日志重定向
# - 設置核心文件大小限制
# - 從 /etc/my.cnf 讀取配置
# & 後台運行
ps -ef | grep mysqld
# 應看到 mysqld_safe 和 mysqld 兩個進程
mysql -u root -p -e "SELECT 1;" # 連接測試
| 操作 | Systemd (CentOS 7+/Ubuntu 16+) | SysVinit (CentOS 6/Debian 7) |
|---|---|---|
| 啟動 | `systemctl start mysqld` / `systemctl start mysql` | `service mysqld start` / `/etc/init.d/mysql start` |
| 停止 | `systemctl stop mysqld` | `service mysqld stop` |
| 重啟 | `systemctl restart mysqld` | `service mysqld restart` |
| 狀態 | `systemctl status mysqld` | `service mysqld status` |
| 開機自啟 | `systemctl enable mysqld` | `chkconfig mysqld on` |
C:\> net stop mysql
C:\> net start mysql
# 或 服務管理器 (services.msc) 圖形界面操作
**MySQL 重啟鐵律:`mysqladmin shutdown` → `mysqld_safe &` (源碼裝) / `systemctl restart mysqld` (包裝裝) / `net stop/start mysql` (Windows)**。**拒絕 `kill -9`**,寧可等待檢查點完成,不可承擔數據損壞與數小時恢復代價。生產環境重啟必走變更流程、驗證主從、監控錯誤日志。