连接失败:2002

Posted

技术标签:

【中文标题】连接失败:2002【英文标题】:Connection Failed: 2002 【发布时间】:2014-03-29 15:05:10 【问题描述】:

我最近移动了我的 mysql 目录,因为它正在填满分区。

我继续用新的数据目录更新了 my.cnf。

然后我继续将我的 php.ini default_socket (mysqli & mysql) 更新到新位置并重新启动 apache。然而,每次运行 cron(php 脚本)时,我都会在表上执行 mysqli 更新:

我应该包含包含文件名的完整路径还是只包含路径。

/home/mysql/mysql.sock

错误日志:

[26-Feb-2014 11:30:01 America/New_York] PHP 警告:mysqli::mysqli(): (HY000/2002): 无法通过套接字'/home/mysql/ 连接到本地 MySQL 服务器mysql.sock' (2) 在 /home/user/public_html/models/db-settings.php 第 21 行

【问题讨论】:

套接字真的在/home/mysql/mysql.sock 中吗?试试ls /home/mysql/mysql.sock @Sjoerd 结果:/home/mysql/mysql.sock= 所以在我的 mysqli 连接设置中将 localhost 更改为 127.0.0.1 似乎解决了这个问题。但这很可能意味着其他地方出了问题。 【参考方案1】:

你应该分别测试mysql连接和php-mysql连接并逐步进行。如我所见,该错误与 MySQL 有关。因此,验证在命令行上使用 mysql 连接是否有效。验证只需通过以下命令进行

mysql -u<username> -p<password>

如果可以访问mysql shell 界面,mysql 就可以正常工作。否则,排查mysql问题。

【讨论】:

以上是关于连接失败:2002的主要内容,如果未能解决你的问题,请参考以下文章

Mysql远程连接失败

Kafka 与 OCI 流服务连接失败

mysql 本地连接失败(必须使用-h127.0.0.1)解决

SecureCRT 连接问题

#2002 -lampp phpmyadmin

用FlashFXP时总是连接失败(连接丢失)原因是啥