我有一个数据库服务器和一个应用服务器,并尝试使用PHP连接我的应用服务器和远程数据库服务器。
像往常一样,我以如下方式使用了下面的方法。
<?php
mysql_connect("remotedb.com", "mysqladmin", "mysqlpassword") or die(mysql_error());
echo "Connected to MySQL<br />";
?>但是当我尝试运行这个测试时,我得到了以下错误。
Warning: mysql_connect() [function.mysql-connect]: Host 'gator418.hostgator.com' is not allowed to connect to this MySQL server in /home/username/public_html/testmysql.php on line 2
Host 'gator418.hostgator.com' is not allowed to connect to this MySQL server我已经将该域作为%www.myappserver.com%添加到远程服务器的cpanel "Remote MySQL“中,但问题仍然存在。有人能告诉我为什么会出现这个错误吗?
发布于 2013-01-02 15:38:55
不允许使用您的主机连接远程数据库用户名。它很可能被设置为只能从"localhost“连接,所以请检查mysql服务器上您的用户名的详细信息,并查看允许的主机列表
发布于 2013-01-02 15:42:34
首先在本地计算机上尝试此操作
$ mysql -h gator418.hostgator.com -u root -p
Enter password:
ERROR 1130: Host '192.168.1.4' is not allowed to connect to this MySQL server如果出现上述错误,请执行以下代码
在您的服务器中执行此操作。
$ mysql -u root -p
Enter password:
mysql> use mysql
mysql> GRANT ALL ON *.* to mysqladmin@'gator418.hostgator.com' IDENTIFIED BY 'mysqlpassword';
mysql> FLUSH PRIVILEGES;另外,更新防火墙规则以确保MySQL3306在运行port#数据库的服务器上处于打开状态。
在上述更改之后,当您尝试从远程客户端连接到mysql数据库时,您将不会再收到“Host is not allowed to connect to this MySQL server”错误消息。
这也可以从Cpanel中实现。将所有权限授予您创建的用户。(对于您想要的特定数据库)
https://stackoverflow.com/questions/14118430
复制相似问题