最近在學習django的時候需要用到資料庫,於是便下載了navicat準備和mysql配套使用,但是在連接的時候確出現瞭如下問題: 網上查詢過後,發現這個錯誤出現的原因是在mysql8之前的版本中加密規則為mysql_native_password,而在mysql8以後的加密規則為caching_s ...
最近在學習django的時候需要用到資料庫,於是便下載了navicat準備和mysql配套使用,但是在連接的時候確出現瞭如下問題:
網上查詢過後,發現這個錯誤出現的原因是在mysql8之前的版本中加密規則為mysql_native_password,而在mysql8以後的加密規則為caching_sha2_password。
解決此問題有兩種方法,一種是更新navicat驅動來解決此問題,一種是將mysql用戶登錄的加密規則修改為mysql_native_password。;根據網上大部分建議採取了第二種方式:
1.用管理員許可權打開cmd,輸入mysql -u root -p進入輸入密碼後進入mysql資料庫;
mysql -u root -p #進入資料庫
2.修改加密規則及密碼,刷新即可;
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的mysql密碼' PASSWORD EXPIRE NEVER; #修改加密規則 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的mysql密碼'; #修改密碼 FLUSH PRIVILEGES; #刷新數據
-正常情況下繼續使用navicat連接mysql即可成功,但是,本人卻死在了第一步,無法進入資料庫;
-不知道有沒有和我一樣的小伙伴遇到這種情況,但是不要慌,cmd不讓進,我們可以直接用mysql client登錄呀;
-輸入密碼,進入mysql,輸入第二點中的命令即可解決。