更優雅的方法見 http://www.cnblogs.com/yoyotl/p/6514134.html
Mysql具體的安裝方法見 http://www.cnblogs.com/yoyotl/p/5752437.html
但是關於自啟動部分需要多一些說明。
一、問題現象:
系統重啟后,發現mysqld服務啟動正常,但是依賴mysql數據庫的應用程序A啟動失敗。
查看日志顯示,程序A啟動的時候鏈接數據庫失敗。
二、原因分析:
mysqld服務是正常啟動的。
此時手動重啟程序A,A也正常運行。
結論:說明程序A啟動的時候,mysqld可能沒有啟動。
三、啟動順序
首先想到的就是調整mysqld服務的啟動順序,讓它高過我的程序A。
然而發現/etc/init.d路徑下沒有關於mysqld的啟動腳本。
四、解決思路
按照鏈接指示安裝的mysqld默認是自動啟動的。
可以取消mysqld的自啟動,然后寫一個啟動腳本確保它啟動在程序A啟動之前。
五、解決辦法
1. 查看系統當前默認啟動項目的方法,不再是setup之類的了。
systemctl list-unit-files
執行此命令能查看當前系統的服務啟動和服務狀態。
結果顯示如下:
1 ... 2 microcode.service enabled 3 mysql.service enabled 4 mysqld.service enabled 5 NetworkManager-dispatcher.service enabled 6 ...
2. 取消mysqld的自啟動
systemctl disable mysqld
執行該命令后再查看當前系統的服務狀態:
1 ... 2 microcode.service enabled 3 mysqld.service disabled 4 NetworkManager-dispatcher.service enabled 5 ...
3. 自定義/etc/rc.local
先執行systemctl start mysqld
再執行startA
問題解決。