MySQL在指定域上授予用户权限

时间:2014-04-25 10:04:27

标签: mysql grant

我尝试从域授予用户数据库的数据库,但失败了。只有域名的IP有效。 (example.com拥有IP 1.1.1.1)

例如:

GRANT super ON *.* TO 'user'@'1.1.1.1' IDENTIFIED BY 'password';

以上工作正常。我可以远程访问数据库。

GRANT super ON *.* TO 'user'@'example.com' IDENTIFIED BY 'password';

这失败了!

当我尝试使用PHP脚本从example.com连接到database.com时,它说:

mysql_connect('database.com', 'user', 'password');
  

警告:mysql_connect()[function.mysql-connect]:拒绝访问   用户'user'@'1.1.1.1'(使用密码:是)

任何想法为什么在域'user'@'example.com'上为用户提供权限都不起作用?

1 个答案:

答案 0 :(得分:1)

根据我的理解,您的服务器管理员已限制为主机名,您可以检查服务器配置文件(my.cnf)是否更新了“skip-name-resolve”。

即使您应该在应用程序中使用IP而不是名称进行调用,但如果仍然想要这样做,请在配置文件中注释“skip-name-resolve”。