macOS High Sierra 10.13.3 上 XAMPP 7.2.4 的 mongodb 3.6.4

Posted

技术标签:

【中文标题】macOS High Sierra 10.13.3 上 XAMPP 7.2.4 的 mongodb 3.6.4【英文标题】:mongodb 3.6.4 for XAMPP 7.2.4 on macOS High Sierra 10.13.3 【发布时间】:2018-10-28 23:37:31 【问题描述】:

我在我的mac上通过brew安装了Mongodb并将扩展添加到php.ini,但是重启XAMPP后模块没有加载。

Mongo 已安装:

me:~ me$ mongo --version
MongoDB shell version v3.6.4
git version: d0181a711f7e7f39e60b5aeb1dc7097bf6ae5856
OpenSSL version: OpenSSL 1.0.2o  27 Mar 2018
allocator: system
modules: none
build environment:
    distarch: x86_64
    target_arch: x86_64

Mongo 正在运行:

me:~ me$ mongo
MongoDB shell version v3.6.4
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.4
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

php.ini 有正确的 extension_dir 和 extension:

me:~ me$ grep mongo /Applications/XAMPP/xamppfiles/etc/php.ini
extension=mongodb.so

me:~ me$ grep extension_dir /Applications/XAMPP/xamppfiles/etc/php.ini
; extension_dir = "./"
; extension_dir = "ext"
; Be sure to appropriately set the extension_dir directive.
extension_dir=/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20170718/

还有司机在那儿:

me:~ me$ ls /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20170718/
mongodb.so  opcache.so  pdo_dblib.so    pgsql.so
opcache.a   pdo_dblib.a pgsql.a

phpinfo() 显示正确的 extension_dir,但不加载 mongodb 模块,显然因此我不能使用它。但是xampp重启后不会报错。

如果有人有提示,我很乐意听到。

【问题讨论】:

【参考方案1】:

问题是旧的 PHP 驱动类,你应该使用 php-mongo 包而不是 php-mongodb。 如何解决问题 转到 /Applications/XAMPP/xamppfiles/bin 并运行 sudo pecl 安装 mongo-1.5.8 几秒钟后你会看到 使用 Cyrus SASL(MongoDB 企业身份验证)支持构建? [不] : 输入 no 并输入 您必须在 php.ini 中将扩展名更改为 mongo.so

【讨论】:

以上是关于macOS High Sierra 10.13.3 上 XAMPP 7.2.4 的 mongodb 3.6.4的主要内容,如果未能解决你的问题,请参考以下文章

在macOS High Sierra 10.13.3上的Grails中的FixtureException

macOS High Sierra 10.13.3 上 XAMPP 7.2.4 的 mongodb 3.6.4

PhpStorm 2017.3 版本在 Mac 系统 macOS High Sierra 版本 10.13.3 中运行很卡顿

macos high sierra怎么安装

如何制作macos high sierra安装u盘

如何以编程方式在 macOS Sierra/High Sierra 上创建 PPTP *** 连接?