我花了几个小时试图解决从 CentOS 5.5 到 7 的迁移问题,其中除了基于 PHP 的站点连接到 MySQL 服务器的网站之外,一切正常。 Perl 工作得很好。 CLI 命令运行良好。我尝试了 Stack Overflow 和其他地方列出的所有解决方案:
- 确保/etc/hosts 包含 localhost 作为 127.0.0.1 的第一个条目
- 检查 PHP 是否正确指向正确的套接字
- 尝试在连接设置中交换 localhost 和 127.0.0.1
- 检查 php.ini 是否有任何设置在我的 CentOS 5.5 功能设置和新的 CentOS 7 安装之间存在差异。
恼人的是,我无法让 PHP 转储错误,无论是通过 Apache 还是其他地方。这一切都让人抓狂。
最佳答案
第五次检查我是否安装了正确的驱动程序后,我意识到有两个 CentOS/yum 软件包:一个是 php-mysql;另一个是 php-mysqlnd,一个本地驱动程序。
卸载 php-mysql,显然已经过时,但这是我在 CentOS 5.5 中使用的,并安装 php-mysqlnd 立即解决了问题。
我一直无法找到任何其他此类答案,所以也许我的情况是独一无二的。但我想记录下来,以防其他人遇到同样的迁移问题。
关于php - 使用更新的 MySQL 库修复 PHP 数据库连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34457065/