1. 程式人生 > >win10安裝MySQL8.0.13的解決辦法

win10安裝MySQL8.0.13的解決辦法

今天我在我win10的電腦上安裝 MySQL8.0.13。剛開始安裝時沒什麼問題,在安裝後利用 DOS 介面也能進入mysql,可是當我利用navicat 連結mysql時出現了錯誤:2059 - authentication plugin 'caching_sha2_password' 。(想直接看解決方案的,就是標紅的字型)

接下來我就會以該問題匯出我解決問題的過程:

      首先我遇到的是:2059 - authentication plugin 'caching_sha2_password'這個問題。根據我在網路上的查詢,出現這個的原因是因為 MySQL8.0.13 的密碼格式是 caching_sha2_password,而 navicat 支援的是 mysql_native_password 格式。mysql_native_password格式是在舊版本才有的,因此解決該問題最直觀的辦法就是重新裝舊版本的 MySQL

。(例如:MySQL5.7.23是絕對沒問題的)

如果你還是想裝 MySQL8.0.13 版本的就繼續往下看吧:

      我解決 2059 - authentication plugin 'caching_sha2_password' 這個問題也是利用一篇部落格解決的,下面是地址https://blog.csdn.net/qq_24664619/article/details/80263546 。其實我在利用這個部落格裡的方法之前,也試過很多相似的方法,都是利用alter user 'root'@'%' identified with mysql_native_password by '[email protected]

'; 語句來修改密碼格式的。但我試過不行,也不知道網那些圖片是怎麼成功的,有人說需要把一些關鍵字大寫,我也試過還是不行。但最終還是利用連結裡的部落格才解決 2059 - authentication plugin 'caching_sha2_password' 這個問題。

你認為這樣就可以解決了嗎,不,這又會引入下一個問題:

      1045 Access denied for user 'root'@'localhost' (using password:YES)。我又遇到了這個問題,這樣我不僅 navicat 連結不上MySQL,而且利用 DOS 也連結不上 MySQL。總是報1045 Access denied for user 'root'@'localhost' (using password:YES) 這個錯誤,之後我又在網上查詢方法。都說利用 skip_grant_tables 先跳過許可權認證,然後修改密碼,可是我試過了跳躍不了許可權認證。我又利用重新安裝 MySQL8.0.13 ,結果又出現了第一個問題,我在修改了密碼格式之後,並沒有關閉連線,接著又重新修改密碼。總之,這一切之後,還是沒有解決問題。

我瞬間就覺得網上好坑。

選第二個就行了。

置於這兩個選擇是什麼意思:

1. 使用強密碼加密授權(推薦)

    8.0提供的新的授權方式,採用SHA256基礎的密碼加密方法.

    但是需要新版本的connector,目前和Connector/J最新的時8.0

    目前8.0的聯結器和使用libmysqlclient8.0的社群驅動都支援這種新方法.

    如果客戶端和應用程式不能更新來支援這種新授權方法,可以選擇使用傳統方法.

2.傳統授權方法(保留5.x版本相容性)

    只有在以下幾種方法中考慮傳統方法:

    -應用程式無法升級來使用MySQL 8的connector和driver.(聯結器和驅動).

    -現存應用程式重編譯是不可行的.

    -新版的,特定語言的connector/driver還不可用.

按理說,我應該使用新方法.但考慮到為了方便使用老版本的jar包和各種工具,採用傳統方法.

新方法會顯著提高安全性.

而目前沒有安全性需求