問題產生原因:
MySQL8.0以後,身份驗證插件默認使用caching_sha2_password,舊版則是mysql_native_password
這可能造成一些MySQL客戶端連接不上的問題,從而報錯:plugin caching_sha2_password could not be loaded
解決方案:
這時候可以登錄root賬戶,並採用如下命令解決:
#用於更換自己本機MySQL root賬戶的密碼和加密方式
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密碼';
#用於刷新權限
FLUSH PRIVILEGES;
注:上述命令建議不要在生產和測試環境使用,除非影響到了一些正常連接
caching_sha2_password認證插件 和 sha256_password認證插件 比mysql_native_password插件要更安全,而caching_sha2_password的性能比sha256_password的更好。若生產環境爲了非必要的兼容性,而犧牲了root賬戶的安全性這是不可取的。
參考:
MySQL8的官方文檔:https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password