最近在學(xué)習(xí)django的時(shí)候需要用到數(shù)據(jù)庫,于是便下載了navicat準(zhǔn)備和mysql配套使用,但是在連接的時(shí)候確出現(xiàn)了如下問題:
網(wǎng)上查詢過后,發(fā)現(xiàn)這個(gè)錯(cuò)誤出現(xiàn)的原因是在mysql8之前的版本中加密規(guī)則為mysql_native_password,而在mysql8以后的加密規(guī)則為caching_sha2_password。
相關(guān)推薦:《Navicat for mysql使用圖文教程》
解決此問題有兩種方法,一種是更新navicat驅(qū)動來解決此問題,一種是將mysql用戶登錄的加密規(guī)則修改為mysql_native_password。
根據(jù)網(wǎng)上大部分建議采取了第二種方式:
1.用管理員權(quán)限打開cmd,輸入mysql -u root -p進(jìn)入輸入密碼后進(jìn)入mysql數(shù)據(jù)庫;
mysql?-u?root?-p?#進(jìn)入數(shù)據(jù)庫
2.修改加密規(guī)則及密碼,刷新即可;
ALTER?USER?'root'@'localhost'?IDENTIFIED?BY?'你的mysql密碼'?PASSWORD?EXPIRE?NEVER;?#修改加密規(guī)則 ALTER?USER?'root'@'localhost'?IDENTIFIED?WITH?mysql_native_password?BY?'你的mysql密碼';?#修改密碼 FLUSH?PRIVILEGES;?#刷新數(shù)據(jù)
正常情況下繼續(xù)使用navicat連接mysql即可成功,但是,本人卻死在了第一步,無法進(jìn)入數(shù)據(jù)庫;
不知道有沒有和我一樣的小伙伴遇到這種情況,但是不要慌,cmd不讓進(jìn),我們可以直接用mysql client登錄呀;
輸入密碼,進(jìn)入mysql,輸入第二點(diǎn)中的命令即可解決。
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關(guān)推薦