1130 - Host XXX is not allowed to connect to this MySQL server,1251 client does not support
1.在用Navicat配置遠端連線Mysql資料庫時遇到如下報錯資訊,這是由於Mysql配置了不支援遠端連線引起的。
2.在安裝Mysql資料庫的主機上登入root使用者:
mysql -u root -p
3.依次執行如下命令:
-
use mysql;
-
select host from user where user='root';
可以看到當前主機配置資訊為localhost.
4.將Host設定為萬用字元%
Host列指定了允許使用者登入所使用的IP,比如user=root Host=192.168.1.1。這裡的意思就是說root使用者只能通過192.168.1.1的客戶端去訪問。 user=root Host=localhost,表示只能通過本機客戶端去訪問。而%是個萬用字元,如果Host=192.168.1.%,那麼就表示只要是IP地址字首為“192.168.1.”的客戶端都可以連線。如果Host=%,表示所有IP都有連線許可權。
注意:在生產環境下不能為了省事將host設定為%,這樣做會存在安全問題,具體的設定可以根據生產環境的IP進行設定;
update user set host = '%' where user ='root';
Host設定了“%”後便可以允許遠端訪問。
5.Host修改完成後記得執行flush privileges使配置立即生效
flush privileges;
-----------------------------------------------------------------------------------------------------------------
一、客戶端連線mysql,問題:1251 client does not support ...
二、解決
1.檢視使用者資訊
select host,user,plugin,authentication_string from mysql.user;
備註:host為 % 表示不限制ip localhost表示本機使用 plugin非mysql_native_password 則需要修改密碼
2.修改使用者密碼
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
更新user為root,host為% 的密碼為123456
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
更新user為root,host為localhost 的密碼為123456
三、成功
6.使用navicat 成功連線至mysql