[root@host ~]# service mysql start
mysql: unrecognized service
[root@host ~]# service mysql restart
mysql: unrecognized service
rpm -q mysql
# 輸出:mysql-5.1.52-jason.1 → 已安裝
/etc/rc.d/init.d/mysqld start
# Starting mysqld: [ OK ]
ls -l /etc/rc.d/init.d/mysqld
# -rwxr-xr-x 1 root root 5509 Dec 18 02:31 /etc/rc.d/init.d/mysqld
關鍵發現: 服務腳本實際名為 mysqld,而非 mysql。# 1. 給腳本執行權限(通常已有)
chmod 755 /etc/rc.d/init.d/mysqld
# 2. 設定開機自啟
chkconfig mysqld on
# 3. 以後統一使用 mysqld 服務名
service mysqld start
service mysqld status
# mysqld (pid 9487) is running...
service mysql 找不到對應腳本,故報「unrecognized service」。mysql,需以實際 /etc/init.d/ 下腳本名為準。ls /etc/init.d/ | grep -i mysql 看實際腳本名。systemctl list-unit-files | grep -i mysql(Systemd 系統)看單元名。service 實際名 start|stop|restart|status。記住:服務名 ≠ 包名 ≠ 進程名,以 /etc/init.d/ 或 systemctl 顯示為準。