MySQL資料庫無法遠端連線的解決辦法
阿新 • • 發佈:2019-02-14
遠端登陸資料庫的時候出現了下面出錯資訊:
ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'
修改root使用者可以從任意ip登入
mysql -u root –p //root使用者本機登入mysql mysql>use mysql; //跳轉到mysql庫 //執行下面語句會提示Error,不過沒關係,其實成功了 mysql>update user set host = '%' where user = 'root';//設定使用者root可以在任意ip登入,'%'表示任意ip,%寫成某一ip mysql>select host, user from user;
給使用者賦予許可權
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root';//'%'可以寫成某一ip地址
mysql>FLUSH RIVILEGES //重新整理許可權表
開啟3306埠
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT // -A 表示append向iptables的INPUT鏈中追加 // -p 表示‘協議’ 後跟tcp // --dport 埠號 // -j ACCEPT 這個引數用於指定匹配的資料包的目標。用在這裡表示接受和允許符合上述標準的資料包通過
修改mysql的my.cnf配置檔案
修改MySQL的配置檔案/etc/mysql/my.cnf,因為預設3306埠只允許本地訪問的,註釋掉這行
vi /etc/mysql/my.cnf
//找到"bind-address = 127.0.0.1"這一行,前面新增#