Ubuntu 安装 PHP MongoDB 扩展的正确方式

不晚
不晚
发布时间:2026-10-14 | 6人浏览过
原创

在 Ubuntu 环境下开发 PHP 应用时,连接 MongoDB 数据库需要安装对应的扩展。虽然旧版文档常推荐从 PECL 下载源码包手动编译,但现代 Linux 发行版通常提供包管理器支持或更简便的 PECL CLI 工具。本文将介绍通过源码编译安装 PHP MongoDB 扩展的具体操作步骤。

准备条件

在进行安装前,请确保您的 Ubuntu 系统已满足以下条件:

  • PHP 环境:已安装 PHP 及其开发头文件(通常是 php-dev 和 php-pear 包)。
  • 构建工具:系统中需安装编译器(如 build-essential)。
  • MongoDB C 库:部分扩展依赖底层的 C 驱动程序。建议先安装 libmongoc 相关库,若使用新版扩展则可能需要 libmongocrypt 等。

官方推荐的 PECL 安装法

目前 PHP 社区维护的 MongoDB 扩展名为 mongodb,而非旧的 mongo。建议使用以下命令直接安装:

sudo pecl install mongodb

安装完成后,根据提示在 php.ini 中添加 extension=mongodb.so,然后重启 Web 服务器(如 Nginx/Apache)或 PHP-FPM 服务。

从源码手动编译安装步骤

如果您需要特定版本的旧式 mongo 扩展(注意:该扩展已过时,仅限兼容老旧项目),或希望完全掌控编译过程,可参考以下操作顺序。

第1步:获取扩展源码

进入终端,使用 wget 下载指定版本的源码压缩包。例如下载版本 1.6.9:

$ wget -c https://pecl.php.net/get/mongo-1.6.9.tgz

第2步:解压并进入目录

解压下载的 tarball 并切换至源码目录:

$ tar zxvf mongo-1.6.9.tgz
$ cd mongo-1.6.9

第3步:初始化 PHP 配置脚本

运行 phpize 来生成 configure 脚本,确保其与当前安装的 PHP 版本匹配:

$ phpize

第4步:配置与编译

执行配置、编译及测试命令。此过程可能需要 root 权限进行安装:

$ ./configure
$ make all
$ make test
$ sudo make install

注意:make test 可选,但在生产环境中建议跳过以确保时间效率,除非您正在排查安装问题。make install 会将生成的 .so 文件复制到 PHP 的扩展目录。

启用扩展与验证

编译安装完成后,扩展文件并未自动生效。您需要编辑 PHP 配置文件(通常位于 /etc/php/7.x/cli/php.ini 或 /etc/php/7.x/apache2/php.ini,具体视 PHP 版本和 SAPI 而定)。

  1. 在文件中添加一行:
    extension=mongo.so(对于新版扩展则为 extension=mongodb.so)。
  2. 保存文件并退出。
  3. 重启 Web 服务器或 PHP 处理进程。

最后,创建一个包含 的 PHP 文件并在浏览器访问,查看是否出现了 Mongo 或 MongoDB 模块区块,以确认安装成功。

常见问题排错

  • 找不到 mongo.h 或 libbson 文件:这通常意味着缺少底层 C 库依赖。在 Ubuntu 上可以尝试安装 libssl-dev 和 libcurl4-openssl-dev。
  • 权限不足:在执行 sudo make install 时务必加上 sudo,否则可能无法写入 PHP 扩展目录。

以上就是 Ubuntu 下安装 PHP MongoDB 扩展的详细内容,更多关于 PHP 数据库集成的资料请关注本站其它相关文章!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表