解決mysql8.0因密碼認證插件致使的連接不上

簡介

今天在遷移zabbix的數據庫,每次連接到本身的mysql都報錯,mysql

mysqlAuthentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_passwordsql

zabbix老是提示數據庫

**** MySQL server is not available. Waiting 5 seconds...網絡

在通過了解決網絡配置相關的問題以後,最終發現是密碼加密方式的問題加密

操做

mysql 8.0 數據庫默認的認證插件是插件

default_authentication_plugin=caching_sha2_passwordcode

包括你使用mysqladmin去初始化數據庫也是使用這個的,因此若是想讓咱們日常的mysql鏈接客戶端也能夠鏈接上mysql8的數據庫那就要修改default_authentication_pluginserver

因此咱們修改my.cnf配置文件blog

加入get

default-authentication-plugin=mysql_native_password

可是這個配置參數只對新的用戶起做用,對於老的,好比root那就要從新設置一下密碼

對與那個用戶使用了哪一種認證插件,你能夠去mysql的用戶表去查看plugin字段

mysql -u root -p

use mysql

select * from user;

接着咱們修改root的認證插件

ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

以後就行了

歡迎關注Bboysoul的博客www.bboysoul.com Have Fun

相關文章
相關標籤/搜索