# 啟用自啟動
sudo update-rc.d mysql defaults
# 輸出:建立 /etc/rc{0,1,6}.d/K20mysql 和 /etc/rc{2,3,4,5}.d/S20mysql 鏈接
# 禁用自啟動
sudo update-rc.d mysql remove
優點:無需安裝額外工具、一行命令搞定、SysV 初始化系統原生支持。
# 安裝 sudo apt-get install sysv-rc-conf # 啟動管理界面 sudo sysv-rc-conf
界面操作:
mysql 行X 表示啟用)Ctrl+N/P 翻頁,Q 退出# 命令行批量操作 sudo sysv-rc-conf --level 2345 mysql off # 關閉 sudo sysv-rc-conf --level 2345 mysql on # 開啟
| 級別 | 含義 |
|---|---|
| 0 | 系統停機 |
| 1 | 單用戶/維護模式 |
| 2-5 | 多用戶模式(2/3 無圖形,5 有圖形) |
| 6 | 重啟 |
# 安裝 sudo apt-get install chkconfig # 查看狀態 chkconfig --list mysql # mysql 0:off 1:off 2:off 3:off 4:off 5:off 6:off # 添加服務(若不在列表) chkconfig --add mysql # 啟用自啟動 chkconfig --add mysql # 或 chkconfig mysql on # 驗證 chkconfig --list mysql # mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
| 維度 | update-rc.d | sysv-rc-conf | chkconfig |
|---|---|---|---|
| 安裝成本 | 零(原生) | 需安裝 | 需安裝 |
| 操作方式 | 命令行 | TUI/命令行 | 命令行 |
| 直觀度 | 低 | 高(可視化) | 中 |
| 批量操作 | 單服務 | 支持級別批量 | 支持級別批量 |
| 適用場景 | 腳本自動化、極簡環境 | 手動調試、多服務對比 | RedHat 習慣用戶、跨平台腳本 |
# 現代系統使用 systemctl sudo systemctl enable mysql # 開機自啟 sudo systemctl disable mysql # 禁用自啟 sudo systemctl status mysql # 查看狀態 sudo systemctl start mysql # 啟動 sudo systemctl stop mysql # 停止
注意:Ubuntu 16.04+ 已全面切換 systemd,SysV 命令兼容但推薦使用 systemctl。
# 重啟後檢查 systemctl is-enabled mysql # enabled/disabled ps -ef | grep mysqld # 進程存在性
根據環境選型:**自動化腳本用 update-rc.d/systemctl、手動調試用 sysv-rc-conf、跨平台習慣用 chkconfig**。Ubuntu 16.04+ 直接標準化 systemctl,忘掉 SysV 歷史包袱。