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