下載安裝包
在官網找到系統對應的安裝包。
下載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密碼進行重置。
- 打開cmd窗口,停止mysql服務:
net stop mysql
- 以跳過密碼驗證方式啓動mysql:
mysqld.exe --console --skip-grant-tables --shared-memory
- 打開新的cmd窗口,無密碼登錄:
mysql -uroot
- 重置密碼:
use mysql; update user set authentication_string='' where user='root';
- 退出並停止以無密碼方式啓動的mysql
- 打開cmd正常啓動mysql:
net start mysql
- 登錄,此時已經不需要密碼
- 修改密碼,參考上節指令
- 退出,重新登錄,驗證新密碼生效