我正在尝试将MySQLWorkbench连接到远程MySQL服务器。
服务器已授予对
user@IPAddress但是,当我试图连接MySQLWorkbench时,它会发送
user@computername 而不是。如何将连接配置为在MySQLWorkbench中使用IP地址?
参考:远程服务器位于本地网络上,因此我需要使用分配给我的客户端的本地IP地址。
到目前为止,我已经尝试过:
已执行
sudo service mysql start --skip-name-resolve来自服务器:
mysql -u user@IPAddress -p --host=(ServerIPAddress)返回:
mysql>这就告诉我用户帐户是可操作的。此外,我确认它存在于以下方面:
select user from mysql.user;返回一个包含所有用户的表,其中我使用的用户是存在的。
我还开通了3306港口:
sbin/iptables -A INPUT -i eth0 -s clientIPAddress -p tcp --destination-port3306 -j ACCEPT但我还是遇到了
Access Denied for user
user@ComputerName (using password: YES)答:我删除了原来的用户帐户。
DROP USER 'user@IPAdress'并把它加回去:
GRANT ALL on foo.* To 'user'@'IPAdress' IDENTIFIED BY 'password';勾号位置非常重要,因为用户名实际上是:
user@IPAdress不
userMySQLWorkbench现在可以连接了!
发布于 2013-11-04 18:20:34
MySQL会自动尝试对任何试图连接到它的IP进行反向DNS查找,而DNS名称将根据您的授权进行检查。
如果您使用mysqld选项启动--skip-name-resolve,它将跳过DNS查找并与IP地址匹配。
https://serverfault.com/questions/550637
复制相似问题