我正在尝试远程访问数据库。我可以从服务器本身访问它,但我需要远程访问它,并且正在我的计算机上使用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);
但我总是得到这个错误:
警告:mysqli :: mysqli():( HY000 / 2002):连接尝试失败,因为连接方在一段时间后没有正确响应,或者由于连接主机无法响应而建立连接失败。在......
除非我使用$ servername = $ urlToMyPhpAdmin; 然后我收到了这个错误:
警告:mysqli :: mysqli():MySQL服务器在第10行的xxx中消失了。警告:mysqli :: mysqli():读取问候数据包时出错。第10行的xxx中的PID = 102448.警告:mysqli :: mysqli():( HY000 / 2006):MySQL服务器已经在第10行的xxx中消失了
我错过了什么?
答案 0 :(得分:0)
数据库与网站位于同一服务器上吗?您可能需要数据库主机的IP或地址,而不是网站(或PHPMyAdmin)。我将进入PHPMyAdmin并运行以下查询,取自this answer:
select * from GLOBAL_variables where variable_name like 'hostname';
并尝试将其中的结果用作$servername