MySQL8.0.11安裝后,使用CMD無法啟動mysql服務


首先,先把mysql的bin路徑添加到系統環境變量

 

這樣做可以,直接進入CMD后執行mysql服務,不需要進入mysql的bin文件路徑去執行。

 第一步:在MySQL的安裝文件的bin目錄(例如:C:\Program Files\MySQL\MySQL Server 8.0\bin)中新建一個my.ini的文件,復制進代碼

[mysqld]
#skip-grant-tables
# 設置3306端口
port=3306
# 設置mysql的安裝目錄
basedir=C:\Program Files\MySQL\MySQL Server 8.0
# 設置mysql數據庫的數據的存放目錄
datadir=C:\Program Files\MySQL\MySQL Server 8.0\data
# 允許最大連接數
max_connections=200
# 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統
max_connect_errors=10
# 服務端使用的字符集默認為UTF8
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
# 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[client]
# 設置mysql客戶端連接服務端時默認使用的端口
port=3306
default-character-set=utf8

把其中的兩處工作路徑改為自己的按照路徑(這里可以自己創建一個data文件夾)

# 設置mysql的安裝目錄
basedir=C:\Program Files\MySQL\MySQL Server 8.0
# 設置mysql數據庫的數據的存放目錄
datadir=C:\Program Files\MySQL\MySQL Server 8.0\data

第二步:在CMD中執行 mysqld --initialize-insecure 指令,安裝路徑會默認生成一個data文件夾

第三步: 在CMD輸入mysqld --install指令,安裝mysql服務

之后會提示安裝成功。

第四步:在CMD輸入net start mysql,啟動服務,這里如果顯示服務啟動成功代表安裝成功。

若出現:正在啟動服務,服務無法啟動的錯誤。

【解決辦法】:

(1)可以輸入mysqld --console 啟動 查看啟動的報錯信息,博主的報錯信息是3306 端口已經被另一個服務占用,該次啟動無法進行。這是問題的關鍵所在。

(2)去查找3306被誰占用了。步驟如下:

開始-運行-cmd, 輸入 netstat -ano, 看第一列,后面的就是端口,找到3306 ,記住對應的PID

然后打開任務管理器查看 -> 選擇列 -> 勾上 PID(進程標識符) -> 確定 

在任務管理器找到剛才的PID的進程,查看是什么程序占用了端口,把它關閉

在重新啟動mysql就不會包端口被占用的錯誤了

(3)重新先用msqld --remove 刪除掉服務,再把data文件夾也刪除,重新執行以下三條指令即可完成

mysqld --initialize-insecure

mysqld --install

net start mysql

在CMD執行mysql -u root,(無需密碼, 即可進入),因為上邊是用insecure 創建的。

這樣就可以啟動mysql服務了。

 

如果想修改密碼的話,

在安裝MySQL的bin目錄下,找my.ini文件;

在[mysqld]后添加skip-grant-tables

#使其登錄時跳過權限檢查

 

重啟MySQL服務器

 

 

這時可以鍵入mysql –u root –p;直接回車(Enter),就可以直接進入數據庫。(可以不執行,直接進行密碼修改)

在CMD執行mysqladmin -u root -p password

 

 再把my.ini的skip-grant-tables刪除,然后重啟MySQL服務器:

net stop mysql ;

net start mysql;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM