鏈接Docker啓動的mysql出現:ERROR 2059: Authentication plugin ‘caching_sha2_password’ cannot be loadedmysql
在用navicat鏈接MySQL8+時會出現2059錯誤,這是因爲新版本的MySQL使用的是caching_sha2_password驗證方式(具體的驗證方式能夠查看默認數據庫'mysql'中user表plugin字段),但此時的navicat尚未支持這種驗證方式。sql
升級navicat驅動docker
把mysql用戶登陸密碼加密規則還原成mysql_native_password數據庫
1.進入mysql容器bash
docker exec -it mysql2 /bin/bash
或者
docker exec -it mysql2 bash
mysql2是docker容器名
2.進入mysql加密
mysql -uroot -pmima -u 指定用戶,這裏是root用戶 -p 後面跟密碼
3.修改密碼spa
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
'root'能夠改成你本身定義的用戶名code
'password'指的是用戶密碼,即想使用的驗證密碼blog
'%'表示:指的是該用戶開放的IP,%表示全部IP都可訪問,能夠是'localhost'(僅本機訪問,至關於127.0.0.1),能夠是具體的'*.*.*.*'(具體某一IP) 好比用戶密碼是123456,當執行上面這條語句以後,mysql對用戶名爲root密碼爲123456的校驗改成了mysql_native_password方式