Windows10安裝mysql 8.0.20及重置root密碼方法

下載安裝包


官網找到系統對應的安裝包。

下載zip包。

在這裏插入圖片描述

解壓到想要安裝的目錄。我選擇的目錄是d盤。解壓後路徑:D:\mysql-8.0.20-winx64。

配置環境變量


打開控制面板-系統-高級系統設置-環境變量,在系統變量中新增MYSQL_HOME變量如下:

在這裏插入圖片描述

編輯path變量,添加%MYSQL_HOME%\bin

生成data文件


以管理員身份運行cmd,打開終端,進入D:\mysql-8.0.20-winx64\bin

執行命令:mysqld.exe --initialize-insecure --user=mysql

這會在安裝目錄下生成data目錄。

啓動服務


執行命令:net start mysql,啓動服務。

如果提示服務名無效,執行命令:mysqld.exe -install即可。重新啓動服務。

登錄mysql


因爲之前沒設置密碼,所以密碼爲空,不用輸入密碼:mysql -uroot

密碼修改


查詢密碼:select host,user,authentication_string from mysql.user;

修改密碼:ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; flush privileges;

退出重新登錄驗證密碼生效。

設置遠程訪問


默認不允許遠程訪問,只能本機登錄。

登錄後,執行以下指令:

use mysql;

update user set host = '%' where user = 'root';

FLUSH PRIVILEGES;

並關閉windows防火牆。

此時,可通過另外的機器通過ip地址訪問該mysql。

遠程訪問時,如果提示:Authentication plugin 'caching_sha2_password' cannot be loaded,是因爲mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之後,加密規則是caching_sha2_password。所以需要作下修改:

#登錄,假設密碼爲123456
mysql -uroot -p123456 
use mysql; #選擇數據庫
# 遠程連接請將'localhost'換成'%'
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; #更改加密方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #更新用戶密碼
FLUSH PRIVILEGES; #刷新權限

再次訪問即可。

密碼重置


如果忘記了root密碼,可以對root密碼進行重置。

  1. 打開cmd窗口,停止mysql服務:net stop mysql
  2. 以跳過密碼驗證方式啓動mysql: mysqld.exe --console --skip-grant-tables --shared-memory
  3. 打開新的cmd窗口,無密碼登錄:mysql -uroot
  4. 重置密碼:use mysql; update user set authentication_string='' where user='root';
  5. 退出並停止以無密碼方式啓動的mysql
  6. 打開cmd正常啓動mysql: net start mysql
  7. 登錄,此時已經不需要密碼
  8. 修改密碼,參考上節指令
  9. 退出,重新登錄,驗證新密碼生效
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章