首页 >后端开发 >php教程 >为什么我无法通过 PHP 的 mysqli 类连接到本地 MySQL 服务器?

为什么我无法通过 PHP 的 mysqli 类连接到本地 MySQL 服务器?

Barbara Streisand
Barbara Streisand原创
2024-12-04 00:34:10552浏览

Why Can't I Connect to My Local MySQL Server via PHP's mysqli Class?

使用本地主机时出现“无法连接到 MySQL 服务器”错误

尝试使用 PHP 中的 mysqli 类建立与 MySQL 数据库的连接时,可能会出现错误:

mysqli::mysqli(): (HY000/2002): Can't connect to local MySQL server through socket 'MySQL' (2)

此错误表示通过指定套接字的连接存在问题, 'MySQL'。

本地主机连接中的套接字使用

当使用“localhost”作为主机连接到本地主机时,MySQL 尝试利用 Unix 域套接字来实现更快且可能更安全的连接。但是,如果套接字未配置或不可访问,连接将失败并出现错误 2。

解决连接问题

要解决此问题,可以采取多种方法:

1.使用 TCP/IP 而不是 Unix Socket:

将连接字符串中的“localhost”替换为 IP 地址 127.0.0.1。这将强制建立 TCP/IP 连接。

2.设置 mysqli.default_socket:

找到 MySQL 的 my.cnf 配置文件并确定套接字的路径。然后,打开 php.ini 文件并将 'mysqli.default_socket' 值设置为此路径。

3.在 PHP 脚本中配置套接字:

建立连接时直接在 PHP 脚本中包含套接字路径,如下所示:

$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock');

通过实现以下解决方案之一,您可以绕过 Unix 套接字连接并与您的 MySQL 数据库建立成功的连接。

以上是为什么我无法通过 PHP 的 mysqli 类连接到本地 MySQL 服务器?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn