php - mysql_connect 警告,数据库主机问题

标签 php mysql database-connection localhost mysql-connect

我突然明白了:

Warning: mysql_connect(): in C:\xampp\htdocs\login.php on line 12 cannot connect to server A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

我使用这个代码:

$dbhost="localhost";
$dbusername="dbusername";
$dbpassword="dbpassword";
$db_name="database";

mysql_connect("$dbhost", "$dbusername", "$dbpassword") or die("cannot connect to server". mysql_error()); 
mysql_select_db("$db_name") or die("cannot select db". mysql_error());

将主机更改为:

$dbhost="127.0.0.1";

一切又恢复正常了。

为什么会发生这种情况?我该如何修复它才能像以前一样工作? 谢谢!

最佳答案

你使用的是Linux吗?然后由于套接字而发生这种情况。如果指定 127.0.0.1 PHP 使用 TCP/IP 通信。如果您输入 localhost,它会尝试与套接字 (mysql.sock) 进行通信。 MySQL 可能未配置为支持它们,或者您的系统阻止 PHP 访问套接字文件。

编辑:可能相关:mysql_connect (localhost / 127.0.0.1) slow on Windows platform

关于php - mysql_connect 警告,数据库主机问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17134259/

相关文章:

php - Jquery 计数器 - 在定期增加的两个变量值之间进行计数

mysql - 无法添加或更新子行: a foreign key constraint fails even if I already added row on parent table

MySQL Workbench 6.0 和 Windows 8 - 无法连接到本地主机上的 MySql?

mysql - 转换sql子查询加入

spring-boot - 如何限制运行微服务的spring boot应用创建的数据库连接

java - 在运行时 eclipse 应用程序中建立 mysql/java/jdbc 连接

sql-server - 如何更改 SQL Server 中的实例名称

php - 文件从浏览器发送到非 Web 服务器的服务器

php - 使用 Mysql/PHP 从单行获取单个值

php - 获取 woocommerce_order_status_completed Hook 上的用户 ID