Linux中Mysql不支持遠程連接解決辦法

雲南銀穗科技小編在linux搭建網站的過程中遇到了這樣的問題,在使用Navicat配置遠程連接mysql數據庫時候,出現以下錯誤提示:

1130 - Host XXX is not allowed to connect to this MySQL server

這是因為mysql數據庫不支持遠程連接導致的。


Linux中Mysql不支持遠程連接解決辦法

下面就分享一下解決辦法:

一、在linux服務器上登錄root賬戶運行以下命令:

mysql -u root -p


Linux中Mysql不支持遠程連接解決辦法

二、接著運行以下命令:

use mysql;

select host from user where user='root';

就可以可以看到當前主機配置信息為localhost.意思就是隻能服務器內部訪問。


Linux中Mysql不支持遠程連接解決辦法

三、下面要把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設置了“%”後便可以允許遠程訪問。


Linux中Mysql不支持遠程連接解決辦法

四、Host修改完成後記得執行flush privileges使配置立即生效,命令如下:

flush privileges;


Linux中Mysql不支持遠程連接解決辦法

以上設置後可以再次運行第二步驟命令查看是都修改為%,成功後即可從navicat成功連接到mysql數據庫。

感謝觀看,歡迎和小編交流。


分享到:


相關文章: