MySQL無法遠程連接問題處理

1、查看/etc/mysql/my.cnf配置文件是否只允許本地連接

註釋配置:#bind-address = 127.0.0.1,重啓MySQL Server

2、防火牆(我用的是iptables)禁止了3306端口訪問

/etc/sysconfig/iptables配置文件添加3306端口,即添加以下內容再重啓防火牆即可:
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

3、MySQL沒有授予相應權限

授權用戶username使用password從任何主機連接到MySQL Server,並授予所有數據庫所有表的全部操作權限

mysql>GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

允許用戶username使用password從IP爲192.168.1.9的主機連接MySQL Server,並授予所有數據庫所有表的全部操作權限

mysql>GRANT ALL PRIVILEGES ON *.* TO 'username'@'192.168.1.9' IDENTIFIED BY 'password' WITH GRANT OPTION;

允許用戶username使用password從IP爲192.168.1.9的主機連接MySQL Server,並授予dsp數據庫下的所有表的全部操作權限

mysql>GRANT ALL PRIVILEGES ON dsp.* TO 'username'@'192.168.1.9' IDENTIFIED BY 'password' WITH GRANT OPTION;
4、修改mysql數據庫中user表中相應用戶username的host限制
$mysql -h 127.0.0.1 -P 3306 -u root –p
mysql>use mysql;
mysql>update user set host = '%' where user = 'username';
mysql>select host, user from user;
mysql>FLUSH PRIVILEGES;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章