从PHP访问MySql数据库(不在localhost上)

时间:2013-06-10 09:03:30

标签: php mysql phpmyadmin

这台服务器: http://phpmyadmin.pvdata.fr/index.php, 知道用户名和密码以及服务器选择,我可以连接到它。

一旦我连接到它,它会在MySql下显示以下信息:(我是从法语翻译)

Server:  sql6 (sql6 via TCP/IP)
Server Version: 5.0.92-87
Protocol Version: 10
Username: pvdata@10.5.1.3
Character for MySql: UTF-8 Unicode (utf8)

所以我尝试使用以下代码连接到数据库:

<?php
// Create connection
$username = "pvdata";
$password = "xxxxxxxx";
$hostname = "10.5.1.3"; 
$dbhandle = mysql_connect($hostname, $username, $password) 
or die("Unable to connect to MySQL");
?>

但它不起作用,它说:“连接尝试失败,因为连接方在一段时间后没有正确响应”。 我做错了什么?

3 个答案:

答案 0 :(得分:0)

您需要搜索,谷歌帮助很多,您还需要连接到MySQL服务器的IP /域和端口。
为此,您需要知道mysql服务器的端口是什么。

link

中查看此答案
<?php

mysql_connect("mysite.com:3306", "admin", "1admin") or die(mysql_error());
echo "Connected to MySQL<br />";

?>

要检查你是否有锥形,请在控制台中尝试:

  

壳&GT; mysql --host = remote.example.com --port = 3306 // 3306是   MySQL的默认端口

http://dev.mysql.com/doc/refman/5.0/en/connecting.html

答案 1 :(得分:0)

这很可能是防火墙问题。大多数第三方主机不允许您从“外部”访问MySQL。

如果您自己管理MySQL服务器,或者如果您的主机不拒绝您从其他计算机访问数据库,则可以执行此操作,但在常规Web托管中,这种情况并不常见。

答案 2 :(得分:0)

转到phpMyAdmin安装并查找文件config.inc.php。打开该文件,并检查SQL6使用的主机名/ IP。这是您应该用于mysql_connect()

的IP