安裝MySQL 5后無法啟動(不能Start service)解決方法小結
更新時間:2012年07月22日 23:11:00 作者:
有時候我們在安裝mysql軟件時,卻無法啟動,或服務器安全設置以后都可能導致mysql無法運行
安裝的 MySQL 5.1.48 或是 MySQL 5.5.8,配置好最后點擊 Execute 按鈕了,但是進行不到 Start service 這一步。檢查了下 MySQL 系統(tǒng)服務已添加,但是無法啟動,手工也不行。這時候用事件查看器可以看到程序事件里有幾個來自于 MySQL 的錯誤:
Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
Unknown/unsupported table type: INNODB
原來是因為這兩版本的 MySQL 默認使用了支持事物的 INNODB 引擎,打開 my.ini 文件,在 MySQL 的安裝文件夾, 如 c:program filesMySQL 中,看到:
default-storage-engine=INNODB
解決辦法是把該設置改為
default-storage-engine=MYISAM
仍然使用 MyISAM 作為默認的數據庫引擎,保存 my.ini 文件,然后手工啟動 MySQL 服務,成功;再把剛剛的配置窗口關掉就行了。
你完全可以在創(chuàng)建數據庫時指定所創(chuàng)建數據庫所用的數據庫引擎,或創(chuàng)建表時所用的數據庫引擎,或者創(chuàng)建后再更改都可以。
你可以再次回憶一下剛剛配置的過程:
安裝的最后一個步驟,在點 Finish 按鈕時,可以選擇 Configure the MySQL Server now,或者是從開始菜單里直接運行 MySQL 的 MySQL Server Instance Configuration Wizard 來進行配置數據庫,在選擇 database usage 時有三個選項:
1) Multifunctional Database
2) Transactional Database Only
3) No-Transactional Database Only
默認是第一項,選第二項也會讓數據庫默認的引擎為 INNODB,生成的 my.ini 文件里都會是 default-storage-engine=INNODB。至于在 my.ini 中注釋掉了 --skip-innodb 并不太會影響到數據庫的啟動,只是決定了數據庫的事物特性。
那么在最后一步 Processing configuration ... 里寫完 my.ini 文件后,進行到 Start service 就不動了,也就是啟動不了 MySQL 服務,在系統(tǒng)服務里已經加了 MySQL 服務名。
如果你這一步選擇的是第三項,不使用支持事件的數據庫,那么在 my.ini 文件里就是 default-storage-engine=MYISAM,那么你也很幸運,能順利配置成功,并啟動好數據庫。不過這將使你不能使用 INNODB 引擎(ERROR 1286 (42000): Unknown table engine 'InnoDB'),其實也就是把 my.ini 中的 skip-innodb 給啟用了,你可以把它再次注釋掉試試事物。
作者 mywaylife
如果還是不能解決可以參考下面的方法:
安裝MySQL時無法啟動服務(could not start the service )
1、建議使用360卸載已經安裝的mysql數據庫,因為360會查看相關的注冊信息,卸載比較徹底。
2、檢查3306端口是否已經占用,如果已經占有,殺死此進程。
3、查看服務列表中,是否還有mysql的服務進程。
4、要確保安裝目錄的訪問權限是everyone,這里我建議不要把mysql安裝的c盤中,因為xp有時候為了系統(tǒng)安全,會限制文件夾的訪問權限。
5、建議安裝在干凈的文件夾里,如果安裝在上次安裝過的文件夾,建議刪除文件夾下的所有文件。
mysql安全設置后導致mysql無法運行,建議重置運行mysql服務的登陸用戶名密碼,然后進服務里面重新輸入剛修改的用戶名與密碼,這樣就可以了
如果還是不可以,我們可以通過查看錯誤日志的方法解決:
mysql錯誤日志位于mysql安裝目錄下的擴展名為.err的文件,復制一份通過記事本等工具打開即開,如果err日志過大建議不要用記事本,可以用editplus打開
Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
Unknown/unsupported table type: INNODB
原來是因為這兩版本的 MySQL 默認使用了支持事物的 INNODB 引擎,打開 my.ini 文件,在 MySQL 的安裝文件夾, 如 c:program filesMySQL 中,看到:
default-storage-engine=INNODB
解決辦法是把該設置改為
default-storage-engine=MYISAM
仍然使用 MyISAM 作為默認的數據庫引擎,保存 my.ini 文件,然后手工啟動 MySQL 服務,成功;再把剛剛的配置窗口關掉就行了。
你完全可以在創(chuàng)建數據庫時指定所創(chuàng)建數據庫所用的數據庫引擎,或創(chuàng)建表時所用的數據庫引擎,或者創(chuàng)建后再更改都可以。
你可以再次回憶一下剛剛配置的過程:
安裝的最后一個步驟,在點 Finish 按鈕時,可以選擇 Configure the MySQL Server now,或者是從開始菜單里直接運行 MySQL 的 MySQL Server Instance Configuration Wizard 來進行配置數據庫,在選擇 database usage 時有三個選項:
1) Multifunctional Database
2) Transactional Database Only
3) No-Transactional Database Only
默認是第一項,選第二項也會讓數據庫默認的引擎為 INNODB,生成的 my.ini 文件里都會是 default-storage-engine=INNODB。至于在 my.ini 中注釋掉了 --skip-innodb 并不太會影響到數據庫的啟動,只是決定了數據庫的事物特性。
那么在最后一步 Processing configuration ... 里寫完 my.ini 文件后,進行到 Start service 就不動了,也就是啟動不了 MySQL 服務,在系統(tǒng)服務里已經加了 MySQL 服務名。
如果你這一步選擇的是第三項,不使用支持事件的數據庫,那么在 my.ini 文件里就是 default-storage-engine=MYISAM,那么你也很幸運,能順利配置成功,并啟動好數據庫。不過這將使你不能使用 INNODB 引擎(ERROR 1286 (42000): Unknown table engine 'InnoDB'),其實也就是把 my.ini 中的 skip-innodb 給啟用了,你可以把它再次注釋掉試試事物。
作者 mywaylife
如果還是不能解決可以參考下面的方法:
安裝MySQL時無法啟動服務(could not start the service )
1、建議使用360卸載已經安裝的mysql數據庫,因為360會查看相關的注冊信息,卸載比較徹底。
2、檢查3306端口是否已經占用,如果已經占有,殺死此進程。
3、查看服務列表中,是否還有mysql的服務進程。
4、要確保安裝目錄的訪問權限是everyone,這里我建議不要把mysql安裝的c盤中,因為xp有時候為了系統(tǒng)安全,會限制文件夾的訪問權限。
5、建議安裝在干凈的文件夾里,如果安裝在上次安裝過的文件夾,建議刪除文件夾下的所有文件。
mysql安全設置后導致mysql無法運行,建議重置運行mysql服務的登陸用戶名密碼,然后進服務里面重新輸入剛修改的用戶名與密碼,這樣就可以了
如果還是不可以,我們可以通過查看錯誤日志的方法解決:
mysql錯誤日志位于mysql安裝目錄下的擴展名為.err的文件,復制一份通過記事本等工具打開即開,如果err日志過大建議不要用記事本,可以用editplus打開
相關文章
Windows 8下MySQL Community Server 5.6安裝配置方法圖文教程
這篇文章主要為大家詳細介紹了Windows 8下MySQL Community Server 5.6安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09
Mysql中between...and引起的索引失效問題及解決
這篇文章主要介紹了Mysql中between...and引起的索引失效問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
MySQL查詢性能優(yōu)化的7個常見查詢錯誤及解決方案
數據庫性能是Web應用和大型軟件系統(tǒng)穩(wěn)定運行的關鍵,即使是精心設計的應用,如果數據庫查詢效率低下,也會導致用戶體驗下降、系統(tǒng)資源浪費,甚至系統(tǒng)崩潰,本文將深入探討MySQL查詢優(yōu)化,分析常見的查詢錯誤,并提供提升數據庫性能的實用技巧,需要的朋友可以參考下2025-04-04
mysql unsigned 用法及相減出現補數溢出解決方法
unsigned表示無符號的意思,也就是非負數,只用于整型并且unsigned 是MYSQL自定義的類型,非標準SQL。用途1是紅苕說的起到約束數值的作用,2是可以增加數值范圍(相當于把負數那部分加到正數上)。不過少用,不方便移植2012-04-04

