解決java.sql.SQLException: null, message from server: "Host xxx' is not allowed to connect to this MySQL server異常


MySQL遷移到新服務器后,重新安裝了MySQL8(解壓方式的安裝),web服務器連接,后台報了這個錯。

運維同學,檢查了MySQL服務器的防火牆設置,沒有限制3306端口,且通過telnet方式,可以在web服務器上測通MySQL服務器上的端口,因此,服務器本身的ip或者端口限制基本排除。

最后上網發現,這個異常是數據庫只允許localhost或127.0.0.1訪問,不允許遠程訪問導致的。

解決辦法:

1.打開cmd,進入mysql

mysql -uroot -p

2.查看root用戶的信息

 use mysql;

select user,host from user;

3.修改root用戶的被限制的ip范圍,改為不限制,及允許所有ip訪問

update user set host='%' where user='root';

4.將權限更新操作刷新到內存中,而不用下次啟動時生效:

flush privileges;

之后再通過web服務器上的代碼,訪問數據庫,果然好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM