我有一个脚本连接到localhost中的MySQL数据库,当我从控制台运行它运行得很好,但是当我从网上运行它时,我得到了这个:
Warning: mysqli_connect(): (HY000/2002): No such file or directory in /var/www/html/tests/mysql.php on line 3
错误:无法连接到MySQL。调试errno:2002调试错误:没有这样的文件或目录
我检查了我的php.ini文件,它有正确的mysql.sock位置,文件存在,但php不会通过网络连接。
另外,我有禁用防火墙的Fedora Linux以及SELinux,所以我不知道是什么导致这种情况。
这是我使用的测试代码:
<?php
$link = mysqli_connect("localhost", "root", "password", "my_db");
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
mysqli_close($link);
?>
有什么想法吗?