【发布时间】:2017-09-02 04:01:44
【问题描述】:
我正在尝试远程访问数据库。我可以从服务器本身访问它,但我需要远程访问它,并且我正在使用我的计算机上的 XAMPP 进行访问。
我添加了数据库用户从我的 ip 访问数据库的可能性(也尝试使用 %)。代码如下:
$servername = $websiteIP; //e.g. xx.xx.xxx.xxx, also tried website URL and URL to phpMyAdmin
$username = 'username';
$password = 'password';
$dbname = 'dbname';
$port = '3306';
$conn = new mysqli($servername, $username, $password, $dbname);
// also tried $conn = new mysqli($servername, $username, $password, $dbname, $port);
但我总是得到这个错误:
Warning: mysqli::mysqli(): (HY000/2002): 连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应。在...
除非我使用 $servername = $urlToMyPhpAdmin; 然后我得到这个错误:
Warning: mysqli::mysqli(): MySQL server has gone away in xxx on line 10. Warning: mysqli::mysqli(): Error while reading greeting packet。 PID=102448 in xxx on line 10. 警告:mysqli::mysqli(): (HY000/2006): MySQL server has gone away in xxx on line 10
我错过了什么?
【问题讨论】:
-
您检查入站端口了吗?通过禁用数据库服务器(iptable/Selinux)的防火墙检查一次。
-
@webDev 抱歉,我不太确定入站端口是什么。而且我很确定我没有禁用防火墙的权限。
标签: php mysql remote-access