MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

PHP kann den MongoDB-Treiber nicht finden

Ich kann Ihnen mein Build-Rezept von einer frischen 12.04-Installation geben. Fresh läuft einfach durch die Konfiguration und wählt der Einfachheit halber am Ende nur die Option "SSH-Server".

Die Installation von MongoDB ist optional. Wenn Sie dies also auf einem anderen Server möchten, überspringen Sie die Installation. Aber die allgemeinen Anweisungen kommen von:

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

Alle Befehle sind aufgeteilt und nicht automatisiert, sodass Sie die Schritte sehen können:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get install software-properties-common
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install mongodb-10gen
sudo apt-get install build-essential
sudo apt-get install php5-dev
sudo apt-get install libcurl4-openssl-dev
sudo pecl install mongo

Viele Compiler-Ausgaben. Beenden Sie mit Erfolg und fragen Sie nach mofidy php.ini

Bearbeiten Sie die CLI-Einstellungen. Und machen Sie dasselbe auch für die Apache-Konfiguration

sudo vi /etc/php5/cli/php.ini
sudo vi /etc/php5/apache2/php.ini

Persönliche Präferenz, nach den Kommentaren zu 'Dynamic Extensions'

extension=mongo.so

Testen Sie, dass die Verwendung und Verbindung keinen Fehler auslöst. test.php erstellen:

<?php

    $m = new MongoClient('mongodb://localhost/',
        array('connectTimeoutMS'=> 500, 'socketTimeoutMS' => 500 ));

?>

Und über die Befehlszeile ausführen:

php test.php

Keine Fehler. Dann sind Sie fertig.

$ php -v
PHP 5.5.3-1ubuntu2.1 (cli) (built: Dec 12 2013 04:24:35)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies