在windows2003安裝了vbox來部署centos。
但無法完美設置開機啟動虛擬機里的系統。
只能把啟動腳本放到用戶的啟動項里。
server.bat "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "myserver" --type headless
這樣啟動是沒有問題,如果主機重啟就會造成虛擬機里的系統非正常關機。
centos非正常關機后,mysql竟然啟動不了,問題如下:
Another MySQL daemon already running with the same unix socket
原因是,在mysql安裝目錄里有一個mysql.sock文件。
這個文件在mysql啟動時創建的,mysql關閉時刪除。
那如果是非正常關機,mysql就沒有機會去刪除之個文件。
當這個文件還存在時,mysql就啟動不了,提示上面的錯誤。
奇怪的時,在google和百度竟然沒有這問題的解決方案。
那我就只能使用自己的方法去解決,就是在mysql啟動前,判斷如果mysql.sock存在就刪除掉。
/etc/rc.sysinit # Clean up mysql sock if [ -x /var/lib/mysql/mysql.sock ]; then rm -f /var/lib/mysql/mysql.sock fi
經過幾次的斷電(非正常關機),mysql都能正常啟動。
這個問題總會解決了。