va“无法加载身份验证插件‘caching_sha2_password’:/usr/lib/mysql/plugin/caching_sha2_password.so:无法打开共享对象文件:没有此文件或目录”
当我尝试从 ubuntu 18.04 上的 emma 或 mysql bench 连接到 mysql 时出现此错误
有类似的问题,但它适用于 Windows
https://stackoverflow.com/questions/49963383/authentication-plugin-caching-sha2-password
我尝试重新安装,但出现此问题
https://stackoverflow.com/a/50027851/9658011
但没有作用。
我能做些什么?
答案1
使用此查询:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourPassword';
你没有得到caching_sha2_password
。
然后连接到 MySQL。
答案2
我解决了。我在 18.04 上安装了 mysql 5.7,不是最新版本。
738 sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core- mysql-client-core-
739 sudo rm -rf /etc/mysql /var/lib/mysql
740 sudo apt-get autoremove
741 sudo apt-get autoclean
742 sudo apt install mysql-client-5.7
743 sudo apt install mysql-common-5.7
744 sudo apt install mysql-common
745 sudo apt install mysql-common-5.7
746 sudo apt install mysql-client-5.7
747 systemctl status mysql.service
748 sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
749 sudo apt install mysql-client-5.7
750 sudo apt install mysql-server-5.7
751 sudo apt install mysql-common-5.8
752 sudo apt-get purge mysql-client-core-5.6
753 sudo apt-get autoremove
754 sudo apt-get autoclean
755 sudo apt install mysql-client-core-5.5
之前的方法都不起作用。所以我做了这些,并且成功了:
756 sudo apt install mysql-client-core-5.6
757 sudo apt install mysql-server
758 mysql_secure_installation
759 mysql -u root -p
答案3
最新的 MYSQL 版本将“caching_sha2_password”作为默认身份验证类型。这不允许远程连接到 MYSQL,并导致 caching_sha2_password 插件错误。我已使用以下方法修复了此问题
ALTER USER 'yourusername'@'localhost' IDENTIFIED WITH mysql_native_password BY 'youpassword';
现在它允许您的用户从本地主机访问 MySQL。
如果你想从多个远程主机访问 MySQL,请执行以下操作,
ALTER USER'yourusername'@'%'IDENTIFIED WITH mysql_native_password BY'youpassword';
SQL 中每个 alter 命令之后运行以下命令以使其生效。
清除特权;
或者重新启动 MySQL 服务器
答案4
我用了
sudo tasksel install lamp-server
模式方法,所以我倾向于保留此安装原封不动。