【发布时间】:2015-05-10 13:48:00
【问题描述】:
在http://kb.sp.parallels.com/en/118378 之后,我成功地将php 5.4.38 和5.5.21 安装到运行在php 5.3 上的centos 6.6 plesk 服务器
在此服务器上传输 joomla 站点后,我得到:
Error displaying the error page: Application Instantiation Error: Could not connect to MySQL.
通过在 joomla 的 configuration.php 中将 $dbtype 从 mysqli 更改为 mysql,我得到了它的工作,但这不是我想要的
此外,我转移了更多使用 mysqli 的自定义网站,并且所有网站都返回:
Warning: mysqli_connect(): (HY000/2002): No such file or director
我检查了 unix_socket,它是默认值,但我将它保存在 php.ini 的 php 5.4 和 5.5 中 mysqli.default_socket = /var/lib/mysql/mysql.sockstill nothing
是不是php-mysqli 没有安装php 的附加版本? 如果是这种情况,我如何在这些并行的 php 实例上安装模块?
默认 Centos 5.3.3 的 mysqli 的 phpinfo 是
- MysqlI 支持已启用
- 客户端 API 库版本 5.1.73
- 活动持久链接 0
- 非活动持久链接 0
- 活动链接 0
- 客户端 API 标头版本 5.1.73
- MYSQLI_SOCKET /var/lib/mysql/mysql.sock
用于自定义安装 5.4 的 mysqli 的 phpinfo 是
- MysqlI 支持已启用
- 客户端 API 库版本 mysqlnd 5.0.11-dev - 20120503 - $Id: bf************************8c5c77 $
- 活动持久链接 0
- 非活动持久链接 0
- 活动链接 0
【问题讨论】:
-
您是否检查了每次安装的 php.ini 配置文件以确保启用了 mysqli?尝试在每个安装上运行
php_info()以查看。 -
我能知道你为什么要使用多个版本吗?????
-
- 是的,它似乎已启用,但比较 5.5 和 5.3 的 phpinfo,我发现在 5.3 中还有 2 行“Client API header version 5.1.73 MYSQLI_SOCKET /var/lib/mysql/mysql.sock " 5.5 和 5.4 中缺少的
-
因为centos自带5.3.3,Joomla需要5.3.10及以上,所以我用了多个版本。