मैं ubuntu 16.04 पर php संस्करण 7.0 का उपयोग कर रहा हूं। मैं mongo ड्राइवर / क्लाइंट को स्थापित करने के लिए एक विस्तृत जानकारी दे रहा हूं। पहले मैंने मैन्युअल रूप से मोंगॉडब स्थापित किया और फिर इसके लिए मोंगोडब-पीएचपी ड्राइवर।
1) मोंगो डीबी स्थापित करना। निम्नलिखित कमांड दर्ज करें:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
$ echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org
मोंगडब को एक सेवा के रूप में ठीक से लॉन्च करने के लिए, यानी स्वचालित रूप से मोंगोडब शुरू होने पर, सिस्टम शुरू होता है, निम्नलिखित चरणों का पालन करें:
कमांड में प्रवेश करके / etc / systemd / system / में फ़ाइल mongodb.service बनाएँ:
$ sudo nano /etc/systemd/system/mongodb.service
इसमें निम्नलिखित सामग्री पेस्ट करें:
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
फिर निम्नलिखित कमांड दर्ज करें:
$ sudo systemctl start mongodb
$ sudo systemctl enable mongodb
2) mongo-php ड्राइवर स्थापित करना:
$ sudo pecl install mongodb
इसके अलावा आप त्रुटि प्राप्त कर सकते हैं: phpize नहीं मिला। Phpize एक कमांड है जिसका उपयोग बिल्ड वातावरण बनाने के लिए किया जाता है। यह त्रुटि किसी भी pecl एक्सटेंशन की स्थापना के समय दिखाई दे सकती है। नहीं मिला phpize कमांड की इस समस्या को हल करने के लिए, उपयोगकर्ता को php5-dev पैकेज स्थापित करना होगा। इसे स्थापित करने के लिए कमांड दर्ज करें:
$ sudo apt-get install php7.0-dev
फिर php.ini फ़ाइल में जो /etc/php/7.0/apache2 डायरेक्टरी में है, मानगो db एक्सटेंशन जोड़ें:
$ sudo nano /etc/php/7.0/apache2/php.ini
फ़ाइल में निम्न पंक्ति जोड़ें:
विस्तार = mongo.so;
(आपको फ़ाइल का सही स्थान निर्दिष्ट करना पड़ सकता है। मेरे मामले में फ़ाइल /usr/lib/php/20151012/mongodb.so में थी।)
तो mongo db अपने ड्राइवर के साथ स्थापित है।
3) अब ध्यान रखें कि मोंगो-php क्लासेस को बदल दिया गया है। नेट में उपलब्ध संसाधनों में से अधिकांश पुराने वर्गों का उपयोग करके समाधान देते हैं जो अलंकृत है। नीचे ऐसे लिंक दिए गए हैं जिनका आप उल्लेख कर सकते हैं:
http://php.net/manual/en/set.mongodb.php
http://zetcode.com/db/mongodbphp/
यहाँ बुनियादी डेटाबेस संचालन के लिए कुछ कमांड हैं:
$mng = new MongoDB\Driver\Manager(); // Driver Object created
डेटाबेस में डेटा डालने के लिए:
$bulk = new MongoDB\Driver\BulkWrite;
$doc = ["_id" => new MongoDB\BSON\ObjectID, "data" => $someData, "info" => $someInfo];
$bulk->insert($doc);
$mng->executeBulkWrite('dbName.collectionName', $bulk);
डेटा लाने के लिए:
$query = new MongoDB\Driver\Query([]);
$rows = $mng->executeQuery("dbName.collectionName", $query);
foreach ($rows as $row)
{
echo "$row->data - $row->info\n";
}
sudo apt-get install php7-mongo
भी यह कोशिश की थी, लेकिन कोई सकारात्मक परिणाम नहीं मिला