mysql远程连接问题?如何使用PHP连接?

时间:2009-12-28 14:42:05

标签: php mysql

我正在尝试连接远程mysql我遇到了典型的问题。

$conn = mysql_connect('xxx.xxx.xxx.xxx', 'username', 'password') or die(mysql_error());

让我的系统主机名为my.host.com,远程主机名为remote.host.com

我尝试使用IP xxx.xxx.xxx.xxx和remote.host.com这就是说

Access denied for user 'username'@'my.host.com' (using password: YES)

请帮我解决这个问题。

提前致谢。

4 个答案:

答案 0 :(得分:1)

您是否使用主机名授予用户权限?


GRANT ALL ON mydb.* TO 'someuser'@'somehost';

答案 1 :(得分:0)

检查您指定的密码和用户名是否正确,以及用户是否已设置为在数据库中进行访问。

如果仍无法解决问题,请阅读http://dev.mysql.com/doc/refman/5.1/en/access-denied.html

答案 2 :(得分:0)

您需要允许从MySQL中访问所需的客户端主机。

有关详细信息,请参阅GRANT命令(特别是“全局权限”位)。

答案 3 :(得分:0)

请阅读MySQL文档中的The MySQL Access Privilege System章节:

您的身份基于两条信息:
 *客户端主机从中连接
 *您的MySQL用户名
使用三个用户表范围列(主机,用户和密码)执行身份检查。仅当某个用户表行中的Host和User列与客户端主机名和用户名匹配且客户端提供该行中指定的密码时,服务器才接受连接。
I.e。如果您的php脚本在my.host.com上“运行”并连接到某个远程MySQL服务器,则必须在服务器的mysql.user表中为[username,my.host.com,yourpassword]输入一个条目,否则服务器将拒绝访问。