Instalarea driver-ului PHP MongoDB cu PECL

Informație despre instalarea acestei extensii PECL poate fi găsită în capitolul manualului, întitulat Instalarea extensiilor PECL. Informații adiționale, cum ar fi lansări noi, descărcări, fișiere-sursă, informații despre persoana care întreține extensia și istoria schimbărilor poate fi localizată aici: » https://pecl.php.net/package/mongodb

Utilizatorii Linux, Unix și macOS pot rula următoarea comandă pentru a instala driver-ul:

$ sudo pecl install mongodb

Dacă sistemul dumneavoastră are instalate multiple versiuni PHP (de ex. macOS implicit, Homebrew, » XAMPP), atrageți atenția că fiecare versiune PHP își are propria comandă pecl și fișier php.ini.

Instalarea driver-ului cu ajutorul PECL va utiliza versiunile încorporate ale bibliotecilor » libbson și » libmongoc și va încerca configurarea lor automată.

Notă: Dacă procesul de asamblare nu găsește o bibliotecă SSL, verificați dacă pachetele de dezvoltare (de ex. libssl-dev) și » pkg-config sunt instalate. Dacă aceasta nu soluționează problema, considerați procesul de instalare manuală.

În final, adăugați următoarea linie în fișierul php.ini:

extension=mongodb.so

add a note add a note

User Contributed Notes 9 notes

up
39
mohammadhoseinmazalahi at gmail dot com
4 years ago
As of Ubuntu 20.04, php-mongodb in the database is outdated and you'll need the PECL method to install latest version of MongoDB.

To do this in Ubuntu, you'll need the php-pear plugin and php-dev:
sudo apt install php-dev php-pear

then you can run:
sudo pecl install mongodb
up
27
contact ? automatix : info
8 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
14
asologor at gmail dot com
7 years 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
16
rafael_xuvisco at yahoo dot com dot br
8 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
6
Tim Greiser
8 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
6
Anonymous
8 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
-1
Unmesh
7 years 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
-13
maneesh dot singh at hof-university dot com
7 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
-12
ovidius at email dot it
7 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