尝试访问远程数据库时 mysql_connect 访问被拒绝错误

Posted

技术标签:

【中文标题】尝试访问远程数据库时 mysql_connect 访问被拒绝错误【英文标题】:mysql_connect access denied error when trying to access remote database 【发布时间】:2012-06-07 23:04:47 【问题描述】:

我对 phpmysql 完全陌生,并试图连接到远程数据库。这是我的代码:-

php $con = mysql_connect("2toria.com","username","password");如果 (!$con) die('无法连接:' . mysql_error());

mysql_select_db("myTable", $con);

$result = mysql_query("SELECT * FROM Contestants");

while($row = mysql_fetch_array($result)) echo $row['Name']; 回声“”;

mysql_close($con);

数据库、表、用户名和密码名都是正确的(出于明显的原因,我在这里更改了它们),但我收到以下错误:-

警告:mysql_connect() [function.mysql-connect]:访问被拒绝 用户“用户名”@“bluechip6.ukhost4u.com”(使用密码:YES) /home/toriaco/public_html/bigbro/index.php 在第 9 行不能 连接:用户“用户名”@“bluechip6.ukhost4u.com”的访问被拒绝 (使用密码:YES)**

对这个问题有什么想法吗? TIA,马特

【问题讨论】:

这看起来很正常:出于安全原因,托管服务提供商通常会关闭 mySQL 数据库以进行外部连接。数据库是否明确应该是可访问的? 是的,它不是外部连接,它是我拥有的主机的一部分,所以我应该能够访问它。我可以在 MYSQL GUI 工具中使用相同的用户名和密码凭据,并通过这种方式访问​​我的数据库。我需要做的是查询数据库并返回行,如图所示。 那你为什么不连接到“localhost”而不是“2toria.com”? 【参考方案1】:

第一个可能的原因: 我知道拮抗剂(荷兰托管服务)出于安全原因阻止了所有不是来自localhost 的连接,而且我不认为它们是唯一的。 (所以始终连接到 localhost,而不是 http://... URL!)

第二个可能的原因: 密码/用户名错误。

【讨论】:

本地主机的东西运行良好,谢谢。另一个快速的问题 - 密码/用户名怎么错了?你能启发我吗?正如我所说,我是新手。 @Mat 他的意思是两种不同的可能性。如果 localhost 对您有用,则没有其他事情可做 如果本地主机的事情有效,你应该接受这个答案 抱歉,我误读了第二个原因。感谢您的帮助 - 已接受答案!

以上是关于尝试访问远程数据库时 mysql_connect 访问被拒绝错误的主要内容,如果未能解决你的问题,请参考以下文章

解决远程连接mysql很慢的方法(mysql_connect 打开连接慢)

解决远程连接mysql很慢的方法(mysql_connect 打开连接慢)

在 PHP 中通过 SSH 连接到 MySQL 服务器

mysql_connect() 总是拒绝访问

解决远程连接mysql很慢的方法(mysql_connect 打开连接慢)

访问 mdb 文件,数据库不断尝试连接到远程服务器