Установка драйвера MongoDB PHP с помощью PECL

Информация по установке этого расширения PECL может быть найдена в главе руководства Установка PECL расширений. Дополнительная информация, такая как новые версии, скачивание, исходные файлы, информация о разработчике и CHANGELOG, может быть найдена здесь: » https://pecl.php.net/package/mongodb

Пользователи Linux, Unix и macOS могут использовать следующую команду для установки драйвера:

$ sudo pecl install mongodb

Если на вашей системе установлено несколько версий PHP (например для macOS: установка по умолчанию, Homebrew и » XAMPP), обратите внимание, что каждая из них имеет собственную команду pecl и файл php.ini.

Установка драйвера с помощью PECL использует встгоенные библиотеки » libbson и » libmongoc и попытается сконфигурировать их автоматически.

Замечание: Если процесс установки не сможет найти библиотеку SSL, убедитесь, что установлены разработческие пакеты (такие как libssl-dev) и пакет » pkg-config. Если это не поможет, то произведите ручную установку.

И, в конце концов, добавьте следующую строку в php.ini:

extension=mongodb.so

add a note add a note

User Contributed Notes 8 notes

up
17
rafael_xuvisco at yahoo dot com dot br
2 years ago
Ubuntu 16.04

sudo apt-get install libcurl4-openssl-dev pkg-config libssl-dev libsslcommon2-dev

sudo pecl install mongodb

add extension=mongodb.so in fpm and cli:

sudo vim /etc/php/7.0/fpm/conf.d/30-mongodb.ini

sudo vim /etc/php/7.0/cli/conf.d/30-mongodb.ini

Restart service:

sudo systemctl restart php7.0-fpm

sudo systemctl reload nginx
up
22
contact ? automatix : info
2 years ago
An additional requirement might be pkg-config (on Ubuntu 14.04).

$ pecl install mongodb
...
configure: error: Cannot find OpenSSL's libraries
ERROR: `/tmp/pear/temp/mongodb/configure --with-php-config=/usr/bin/php-config' failed

But:

$ apt-get install pkg-config
...
Setting up pkg-config (0.26-1ubuntu4) ...
$ pecl install mongodb
...
Build process completed successfully
Installing '/usr/lib/php/20151012/mongodb.so'
install ok: channel://pecl.php.net/mongodb-1.1.7
configuration option "php_ini" is not set to php.ini location
You should add "extension=mongodb.so" to php.ini
up
4
Unmesh
1 year ago
The following steps worked for me on Centos7

sudo yum install -y openssl-devel
sudo yum install pecl
sudo yum install gcc
sudo pecl install mongodb
up
9
asologor at gmail dot com
1 year ago
On Ubuntu you can just do:

  sudo apt-get install php-mongodb

or the same for specific PHP version:

  sudo apt-get install php5.6-mongo

or

  sudo apt-get install php7.0-mongodb
up
6
Anonymous
2 years ago
I got an error "fatal error: pcre.h: No such file or directory" and had to also had to install another dependency

sudo apt-get install libpcre3-dev
up
6
Tim Greiser
2 years ago
[Editor's note: fixed typo]

There are some additional requirements you need to build the pecl package.

sudo apt-get install libcurl4-openssl-dev pkg-config libssl-dev libsslcommon2-dev
up
-7
maneesh dot singh at hof-university dot com
2 years ago
Hi,
I am looking into installation of php mongo db driver.
I have checked with phpinfo it shows mongodb module have been loaded but when I use in my code it give error "Fatal error: Uncaught Error: Class 'MongoDB' not found "

i have another module for redis and it works perfectly . Initially I was getting same error but phpinfo was showing module is not loaded .

I guess there is some problem with driver. I have tried all the documents and website links which mention to include extenstion=mongodb.so which i have already done.

I am using open suse 42.2 leap with apache server.

Could you please investigate this issue.
If you need more info please let me know.

Thanks
Maneeshg
up
-4
ovidius at email dot it
2 years ago
after installed and added extension=mongodb to php.ini, when i run php -v i get this error:

bus error php -v

what could it be? the build process completed successfully.
To Top