解決方案簡述
數據庫無法啟動,提示“本地計算機上的服務啟動后停止、某些服務在未由其他服務或程序使用時將自動停止。”。可以在CMD窗口通過“ --”命令查看一下錯誤信息,如果提示是“[ERROR] to set to C:\ Files\MySQL\MySQL 5.7\data\”,而數據路徑配置又無誤,可以嘗試通過“ ---file=”命令指定配置文件(即my.ini或my.cof文件)的路徑來啟動數據庫。
解決過程詳述
今天早上想重啟一下數據庫服務器,但是怕突然重啟服務器會損壞MySQL數據,所以我先在控制臺優雅地關閉了的服務,然后重啟了服務器。服務器重啟完畢以后,沒有自動啟動,在控制臺也無法手動啟動,并且報出了警告,如下圖所示:
圖1 服務警告
發現此問題以后,我到數據文件夾查看了數據庫錯誤記錄日志文件,但是文件里并沒有錯誤,所以有點懵,因為這種情況下無法得知問題所在。后來本地計算機上的apple 服務啟動后停止,嘗試了種種方式,都無法成功啟動數據庫。
終于,在機緣巧合下,看到一篇文章,說是可以通過“ --”命令查看一下問題的原因,于是嘗試著在管理員命令行窗口輸入了“ --”命令,發現問題是數據存儲文件夾讀取錯誤,錯誤提示如下圖所示:
圖二 控制臺錯誤信息
但是我的my.ini文件中配置的數據存儲文件夾的位置是沒有問題的,于是又陷入了新一波的疑惑中。
在百思不得解的時候本地計算機上的apple 服務啟動后停止,強哥跟我說通過“ ---file=”指定my.ini文件來啟動mysql試一下。我按照強哥說的方式測試了一次,但是卻出現了圖3中的問題,隱隱約約感覺是空格造成了問題,于是把my.ini文件移動到一個沒有空格的路徑下,再次啟動mysql,問題終于解決了。
圖3 路徑問題
自從我開發的系統上線以來,MySQL數據庫已經出過四次問題了,前三次都是因找不到解決方案,只得重裝了數據庫,也丟失了很多重要數據。這一次終于能夠修復數據庫問題了,非常的激動。非常感謝強哥在問題出現以后一直在幫我尋找解決方案,如果沒有他的指導,可能這次又要重裝數據庫了。