使用端口3307连接到MySql

时间:2012-09-13 16:54:30

标签: php mysql ajax

我正在尝试使用端口3307上的以下脚本远程连接到MySql数据库

   $username="user";
   $password="pass";
   $database="db"; 
   mysql_connect('ccline.dyndns.info:3307',$username,$password);

   @mysql_select_db($database) or die( "Unable to select database");

但无法连接。我使用3306在db上使用相同的脚本。我错过了什么?

2 个答案:

答案 0 :(得分:1)

连接到远程数据库需要三件事:

  • 端口3306在防火墙上打开。服务器和客户端中的防火墙必须打开端口3306!
  • 在my.cnf bind-address = 0.0.0.0中让mysql绑定到所有接口
  • 数据库中有足够的权限允许远程连接

虚拟所有托管公司在防火墙上关闭端口3306,并且不允许直接远程访问。即使他们这样做,您也无法获得连接数据库的权限。

只有远程数据库在您的LAN中,或者您正在使用具有超级用户访问权限的VPS时,您才能配置远程数据库以进行远程连接。

答案 1 :(得分:1)

首先:您错过了使用mysqli_ *函数而不是mysql_ *函数For more informations take a look here

对于你的问题:我打赌,在你的mysql_server ccline.dyndns.info 上,端口3306/3307未打开...或者服务器已配置为不接听请求不相等的本地主机

因此,如果您在与mysql服务器相同的计算机上使用php-script,请通过 localhost:3307 .....

连接