连接mysql数据库_解决Navicat连接MySQL数据库报错问题
今天在用Navicat連接另外一臺主機上的MySQL時報錯:
Host is not allowed to connect to this MySQL server
默認安裝的mysql無法遠程連接是因為MySQL默認配置了不支持遠程連接引起的。
解決方法:
一、本地主機上登錄root用戶
找到mysql.exe所在路徑,shift+右鍵,在當前窗口打開命令行。
執行命令:
mysql -uroot -proot
Enter password:
成功連接mysql以后,執行以下sql語句查看user庫情況:
use mysql;
select host from user where user='root';
可以看到,mysql默認配置的host都是本地IP。
二、修改配置使之允許遠程登錄訪問
執行以下sql語句:
update user set host='%' where user='root';
Host設置了“%”后便可以允許遠程訪問,但需要注意,這里表里有3條記錄,這樣更新會出錯,僅成功更新一條記錄。
接下來,把多余的刪掉,僅保留host值為'%'的記錄即可。
delete from user where user = 'root' and host <>'%';(親測,這一步非必須)
三.刷新權限使配置生效
執行以下語句:
flush privileges
結果看上圖,執行成功了。
下面再次測試遠程連接。
全部語句:
mysql -u root -p/*Enter?password:*********/use mysql;select host from user where user='root';update user set host = '%' where user ='root';flush privileges;錯誤一:如果還是連接不到,那是不是 MySQL Server 綁定了本地地址,打開 /etc/mysql/my.cnf,
找到:bind-address = 127.0.0.1
去除 IP 地址綁定,把它改為:bind-address = 0.0.0.0
然后重啟 MySQL Server:/etc/init.d/mysql restart
錯誤二:
ERROR 2003 (HY000): Can’t connect to MySQL server on ‘hostxxxxx’ (10061)
錯誤原因:
mysqld數據庫服務沒有啟動。
解決辦法:
檢查 :在windows 的任務管理器,或者 unix/linux 下 ps -aux | grep mysql 看一下。確認服務已經啟動。
處理 :啟動mysqld 服務
錯誤三:
防火墻開啟了
解決方法:
防火墻需要允許3306端口連接。
總結
以上是生活随笔為你收集整理的连接mysql数据库_解决Navicat连接MySQL数据库报错问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kodi pvr 不能安装_「家庭影音串
- 下一篇: 比亚迪汽车:某自媒体捏造“雇群众演员去