我最近从mysql 5.5切换到mariadb 5.5,但现在看来mysqli的php扩展程序无法加载。我收到以下错误:
PHP警告:PHP启动:无法加载动态库'/usr/lib/php/modules/mysqli.so' - /usr/lib/php/modules/mysqli.so:符号mysql_client_errors,版本libmysqlclient_18未定义文件libmysqlclient.so.18,链接时间参考在第0行的未知中
我已经检查了我的/ usr / lib / mysql /并且具有以下内容:
lrwxrwxrwx 1 root root 26 Jan 2 23:56 libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0
-rwxr-xr-x 1 root root 2140588 Dec 23 2010 libmysqlclient_r.so.16.0.0
lrwxrwxrwx 1 root root 24 Jan 2 23:56 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
-rwxr-xr-x 1 root root 2146532 Dec 23 2010 libmysqlclient.so.16.0.0
lrwxrwxrwx 1 root root 24 Feb 4 03:00 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
lrwxrwxrwx 1 root root 29 Feb 4 01:25 libmysqlclient.so.18.0.0 -> /usr/lib/libmysqlclient.so.18
在/ usr / lib /
中-rw-r--r-- 1 root root 3516274 Jan 29 17:50 libmysqlclient.a
lrwxrwxrwx 1 root root 16 Feb 4 03:50 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx 1 root root 17 Feb 4 04:03 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx 1 root root 26 Feb 4 03:00 libmysqlclient_r.so.15 -> libmysqlclient_r.so.15.0.0
-rwxr-xr-x 1 root root 1890068 Jan 29 17:49 libmysqlclient_r.so.15.0.0
lrwxrwxrwx 1 root root 26 Feb 4 03:00 libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0
-rwxr-xr-x 1 root root 2039444 Jan 29 17:49 libmysqlclient_r.so.16.0.0
lrwxrwxrwx 1 root root 17 Feb 4 04:03 libmysqlclient_r.so.18 -> libmysqlclient.so
lrwxrwxrwx 1 root root 17 Feb 4 04:03 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so
lrwxrwxrwx 1 root root 20 Feb 4 04:03 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx 1 root root 24 Feb 4 03:00 libmysqlclient.so.15 -> libmysqlclient.so.15.0.0
-rwxr-xr-x 1 root root 1881264 Jan 29 17:49 libmysqlclient.so.15.0.0
lrwxrwxrwx 1 root root 24 Feb 4 03:00 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
-rwxr-xr-x 1 root root 2029136 Jan 29 17:49 libmysqlclient.so.16.0.0
lrwxrwxrwx 1 root root 24 Feb 4 04:03 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
-rwxr-xr-x 1 root root 4572480 Jan 29 17:28 libmysqlclient.so.18.0.0
lrwxrwxrwx 1 root root 24 Feb 2 12:23 libmysqlclient.so.18.bak -> libmysqlclient.so.18.0.0
-rw-r--r-- 1 root root 17728804 Jan 29 17:50 libmysqld.a
lrwxrwxrwx 1 root root 15 Feb 4 03:00 libmysqld.so -> libmysqld.so.18
-rwxr-xr-x 1 root root 51104132 Jan 29 17:48 libmysqld.so.18
-rw-r--r-- 1 root root 5590 Jan 29 17:49 libmysqlservices.a
这是在CentOS 6.3上
答案 0 :(得分:1)
我遇到了和你一样的问题,这是我提出的解决方案。我使用MariaDB 5.5运行CentOS 6.3并运行PHP 5.4.11,但在此解决方案中我恢复到PHP 5.4.10。我绝不是一个Linux大师,所以拿出我所说的一点点。
我设法使用MySQLi使MariaDB正常工作,并通过yum卸载PHP不再收到此错误。然后我使用此处http://www.webtatic.com/packages/php54/给出的说明重新安装它。 PHP我遇到麻烦的版本是PHP 5.4.11,在这个指令站点提供的RPM中给出的版本是版本5.4.10,所以我认为在新发行版中做出的更新打破了东西。
因此,无论如何都要尝试安装PHP 5.4.10,看看它是否适合您,或者如果您更容易使用该网站上的说明。记得包括" yum install php54w-mysql"作为您安装的软件包之一,以及您可能想要的任何其他软件包。