/etc/init.d 和service 文件
在/etc/init.d的可執行程序的優先級會高於/etc/systemd/system/下的service文件,如果同時存在的話。
serivice xxxx start|stop|restart 相當於是對/etc/init.d下的xxxx的封裝,相當於是一個管理命令,實際執行的是/etc/init.d下的可執行程序。如果/etc/init.d下沒有該服務的可執行程序,則使用service文件
補充說明:
/etc/init.d/xxxx xxxx這樣的方式是老版本Linux使用的服務管理方式(針對從官方軟件倉庫或官方鏡像源安裝的軟件),針對CentOS來說,是CentOS 6.9及其以下版本才用這樣的方式啟動MySQL服務,從CentOS 7開始,改成了systemd管理系統服務,所以你需要使用以下的命令來啟動或停止MySQL:
#啟動MySQL systemctl start mysqld #停止MySQL systemctl stop mysqld #查看MySQL運行狀態 systemctl status mysqld #設置MySQL開機自啟 systemctl enable mysqld
當然了,一些第三方開發的集成軟件為了顧及老用戶的習慣,在高版本CentOS中依然保留了/etc/init.d/xxx來管理服務的形式,比如國內公司開發的寶塔集成面板,這種情況不在討論范圍內...