mysql-8.0.20安裝過程中踩過的坑

一般來說,順利的安裝步驟是這樣:

  1. 官網下載最新版本MySQL,這裏下載的是解壓版的。
  2. 解壓,解壓完成之後,配置系統環境變量,把安裝路徑添加到Path中去(後面記得加;號)
  3. 創建my.ini文件
  4. 以管理員的身份打開cmd命令,切換目錄到安裝路徑下的bin目錄,執行命令:
  • 執行命令:mysqld -install 出現Service successfully installed表示安裝成功
  • 繼續執行: mysqld --initialize-insecure --user=mysql# 生成data目錄並創建root用戶
  • 啓動mysql:net start mysql#如果啓動成功,就繼續執行,不過一般來說,上面步驟沒有報錯,接下來就沒啥問題了
  • 登陸MySQL 命令:mysql -u root -p 密碼爲空,直接按Enter鍵進入。

完結撒花~~
歲月靜好~~~

然而。。。報錯了。。

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)

起先我以爲是my.ini文件的問題,逐步排查後發現沒問題。

[mysqld]
# 設置3306端口
port=3306
# 設置mysql的安裝目錄
basedir=D:\software\mysql-8.0.20-winx64\bin
# 設置mysql數據庫的數據的存放目錄
datadir=D:\software\mysql-8.0.20-winx64\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

然後,我嘗試初始化mysql數據庫,
輸入命令:mysqld --initialize --user=root --console

此時報了一個錯誤:

2020-04-30T07:13:11.662125Z 0 [System] [MY-013169] [Server] D:\迅雷下載\mysql-8.0.20-winx64\bin\mysqld.exe (mysqld 8.0.20) initializing of server in progress as process 15248

2020-04-30T07:13:11.664326Z 0 [ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.

2020-04-30T07:13:11.664339Z 0 [ERROR] [MY-013236] [Server] The designated data directory D:\迅雷下載\mysql-8.0.20-winx64\data\ is unusable. You can remove all files that the server added to it.

2020-04-30T07:13:11.676977Z 0 [ERROR] [MY-010119] [Server] Aborting

2020-04-30T07:13:11.679009Z 0 [System] [MY-010910] [Server] D:\迅雷下載\mysql-8.0.20-winx64\bin\mysqld.exe: Shutdown complete (mysqld 8.0.20) MySQL Community Server - GPL

圖片

但是,仔細看報錯信息,不難發現,問題在於data文件,原因是data文件夾已經創建。直接刪除該目錄下的data文件夾,刪除後重新執行命令:

mysqld --initialize --user=root --console

該文件夾會重新生成,成功初始化,併成功生成了一個隨機密碼:

圖片

然而,我重新啓動MySQL,然後重新登錄,mysql -u root -p,輸入剛纔隨機的密碼。。

還是:

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)

再次嘗試了一些方法。。我佛了。。

萬念俱灰,全部刪掉,重新解壓縮,從頭再來。。

然而,在我更換了文件路徑,更改了環境變量等等之後。。

嘗試開始重新安裝:

出現報錯:

“The service already exists

The current server installed: D:\迅雷\mysql-8.0.20-winx64\bin\mysqld MySQL",於是我查看了

任務管理器,發現MySQL服務還在,我明白了:之前安裝的mysql沒有卸載完,服務沒有刪除掉~

解決方法:

  • 在cmd中輸入”sc query mysql”查看名爲mysql的服務
  • 若服務確實存在,則進行刪除操作“sc delete mysql"

返回"[SC] DeleteService 成功",則說明刪除成功

然後就可以開始安裝啦~

終於成功!!啦啦啦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章