mysql無法成功啟動(dòng)服務(wù)的解決方法(通俗易懂!)
目錄
- MySQL 安裝成功后,啟動(dòng)失敗,提示如下:
- 嘗試以下步驟
- 解決方法:
- 問題分析:
- 總結(jié):
MySQL 安裝成功后,啟動(dòng)失敗,提示如下:
或者是
嘗試以下步驟
1.如果在mysql的安裝路徑中有沒有配置文件
如果沒有配置文件則自己手動(dòng)創(chuàng)建一個(gè),文件名為:my.ini
添加內(nèi)容如下:
①簡(jiǎn)介版:
[mysqld]basedir=E:\MySQL\mysql-5.7.22-winx64(mysql的安裝路徑)datadir=E:\MySQL\mysql-5.7.22-winx64\data\ (mysql的安裝路徑\data\)port=3306
②完整版:
[mysqld]#設(shè)置北京時(shí)間default-time_zone = "+8:00"# 設(shè)置3306端口port=3306# 設(shè)置mysql的安裝目錄basedir=D:\MySQLDB\mysql-8.0.22-winx64(這里需要改成你的數(shù)據(jù)庫所在目錄)# 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄datadir=D:\MySQLDB\mysql-8.0.22-winx64\data(這里需要改成你的數(shù)據(jù)庫中data所在目錄)# 允許最大連接數(shù)max_connections=200# 允許連接失敗的次數(shù)。這是為了防止有人從該主機(jī)試圖攻擊數(shù)據(jù)庫系統(tǒng)max_connect_errors=10# 服務(wù)端使用的字符集默認(rèn)為UTF8character_set_server=utf8# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎default-storage-engine=INNODB# 默認(rèn)使用“mysql_native_password”插件認(rèn)證default_authentication_plugin=mysql_native_password# 解決無法寫入空時(shí)間,解除嚴(yán)格限制模式sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql]# 設(shè)置mysql客戶端默認(rèn)字符集default-character-set=utf8[client]# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口port=3306default-character-set=utf8
注意:
datadir屬性后的data文件夾,一定不要自己手動(dòng)創(chuàng)建,本人嘗試手動(dòng)創(chuàng)建會(huì)有問題,如果自己創(chuàng)建了可以刪除掉,再執(zhí)行后面的操作。
2.在mysql5.7以上版本中默認(rèn)沒有一個(gè)data目錄,即沒有初始化服務(wù)。需要先初始化mysql才可以啟動(dòng)服務(wù),否則會(huì)報(bào) “服務(wù)沒有報(bào)告任何錯(cuò)誤”,啟動(dòng)失敗。
解決方法:
①進(jìn)入mysql的bin目錄;
例如我是裝在E盤底下,文件路徑為:E:\MySQL\mysql-5.7.22-winx64\bin
打開cmd后 默認(rèn)在C盤
咱們這么操作
e: (盤:然后回車)
接著就進(jìn)入了e盤
緊接著輸入:cd E:\MySQL\mysql-5.7.22-winx64\bin 回車
就進(jìn)入了bin目錄
具體如下圖所示:
②執(zhí)行mysqld --initialize-insecure ,第一次執(zhí)行的話,時(shí)間會(huì)久一些,執(zhí)行結(jié)束后沒有輸出信息,查看bin的同級(jí)目錄下會(huì)多出一個(gè)data文件夾,里面一堆文件。
③再次執(zhí)行net start mysql命令啟動(dòng)服務(wù),發(fā)現(xiàn)啟動(dòng)成功!
問題分析:
①忘記密碼
②首次安裝mysql,不知道密碼
解決方法:
首先停止mysql服務(wù)。可通過net stop mysql或者任務(wù)管理器中關(guān)閉。
為什么會(huì)發(fā)生如上圖所示的問題“拒絕訪問”?
因?yàn)?沒以管理員方式打開,下圖是我們以管理員方式打開后:
第二步:跳過Mysql密碼驗(yàn)證
進(jìn)入命令提示符(管理員登陸)操作,進(jìn)入mysql目錄中bin文件夾下,使用以下代碼來跳過權(quán)限驗(yàn)證。
mysqld -console --skip-grant-tables --shared-memory
輸入執(zhí)行后沒有反饋,新開一個(gè)管理員窗口重新執(zhí)行。(這是第二個(gè)窗口)
進(jìn)入目錄后,確保自己已經(jīng)關(guān)閉了Mysql的服務(wù):net stop mysql
關(guān)閉Mysql服務(wù)之后,繼續(xù)在X:\XXXXX-winx64\bin(mysql的bin目錄)目錄下進(jìn)行操作:
輸入:
mysqld --console --skip-grant-tables --shared-memory
在輸入這行代碼之后,如下顯示,我們就已經(jīng)成功跳過Mysql的密碼登錄了
第三步:無密碼方式進(jìn)入Mysql
在上述步驟之后,再打開一個(gè)管理員模式運(yùn)行的cmd.exe (這是第三個(gè)窗口)
進(jìn)入mysql下的bin目錄后,直接登錄mysql
如圖:
①接著執(zhí)行 use mysql語句 (選擇mysql數(shù)據(jù)庫,防止出現(xiàn)問題)
②然后執(zhí)行flush privileges;語句
③最重要一步(修改密碼)
執(zhí)行alter user root@localhost identified by '123456';語句,把密碼修改為123456(這里填自己想要的密碼)
④執(zhí)行 exit語句(退出mysql)
⑤把第一個(gè)cmd窗口關(guān)閉,在第二個(gè)cmd窗口進(jìn)入到mysql的bin目錄,再執(zhí)行net start mysql啟動(dòng)mysql
⑥最后進(jìn)行“修改密碼”后的驗(yàn)證
執(zhí)行語句mysql -uroot -p,輸入剛剛設(shè)置的密碼即可登錄成功
總結(jié):
到此這篇關(guān)于mysql無法成功啟動(dòng)服務(wù)的解決方法的文章就介紹到這了,更多相關(guān)mysql無法成功啟動(dòng)服務(wù)解決內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
