我正在使用基于 CentOS 的 Amazon Linux AMI 在 Amazon EC2 上工作。我已经安装了 php54 和 php54-mysqlnd。
然后我执行sudo pecl install myslqnd_ms
。这安装得很好。我将扩展添加到 php.ini 文件中。然后我启动 httpd,当我在错误日志中执行此操作时,我看到:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mysqlnd_ms.so' - /usr/lib64/php/modules/mysqlnd_ms.so: undefined symbol: mysqlnd_globals in Unknown on line 0
通过谷歌搜索,我找到了这个帖子bugs.php.net和其他论坛. 这两件事都对我没什么帮助。
这里最好的解决方案是什么?如果可能的话,我会尝试坚持使用主 YUM 存储库中预先构建的二进制文件。
答案1
要解决此问题,请执行以下操作:
删除如下行:
mysqlnd_ms.enable=1
mysqlnd_ms.force_config_usage=1
mysqlnd_ms.config_file=/etc/mysqlnd_ms_cfg.ini
extension=mysqlnd_ms.so
来自php.ini
文件
创建一个名为的新文件/etc/php.d/mysqlnd_ms.ini
并将这些行放入其中并重新启动 php-fpm
service php-fpm restart