ScaleGrid सार्वजनिक क्लाउड के लिए एक MongoDB प्रबंधन समाधान है। MongoDB ("ह्यूमोंगस" से) 10gen द्वारा एक स्केलेबल, उच्च-प्रदर्शन, ओपन सोर्स NoSQL डेटाबेस है।
ScaleGrid आपको प्रावधान करने, उच्च उपलब्धता और आपदा पुनर्प्राप्ति को कॉन्फ़िगर करने, प्रावधान हटाने, मॉनिटर करने, अपग्रेड करने, क्लोन करने, बैकअप लेने और AWS, Azure और DigitalOcean पर आपके MongoDB परिनियोजन को पुनर्प्राप्त करने में मदद करेगा। स्केलग्रिड के लाभों में से एक यह है कि यह आपको अपने इंस्टेंस तक पूर्ण एसएसएच एक्सेस देता है। यह आपको अपने PHP सर्वर को अपने MongoDB सर्वर के समान मशीन पर चलाने में सक्षम बनाता है, जो देव और परीक्षण परिदृश्यों के लिए एक अत्यंत उपयोगी लाभ है। इस ट्यूटोरियल में, हम आपको पांच सरल चरणों में दिखाएंगे कि एक ही मशीन पर अपने PHP सर्वर और MongoDB सर्वर को कैसे सेटअप करें।
-
स्केलग्रिड पर अपना MongoDB इंस्टेंस बनाएं
अपना मशीन पूल बनाने, MongoDB इंस्टेंस बनाने, SSH क्रेडेंशियल और SSH को इंस्टेंस में पुनः प्राप्त करने, या हमारे MongoDB क्लस्टर दस्तावेज़ बनाने के लिए यहां आरंभ करने के निर्देशों का पालन करें।
पी> -
MongoDB से कनेक्ट करें और अपना डेटा पॉप्युलेट करें
SSH अपने MongoDB उदाहरण में। बिल्ट-इन मोंगो क्लाइंट का उपयोग करके अपने स्थानीय मोंगोडीबी इंस्टेंस से कनेक्ट करें और कुछ प्रश्नों को बंद करें:
/usr/bin/mongo MongoDB shell version: 2.0.7 connecting to: test >show dbs config (empty) local (empty) >db.version() 2.0.7 >db.stats() { "db" : "test", "collections" : 0, "objects" : 0, "avgObjSize" : 0, "dataSize" : 0, "storageSize" : 0, "numExtents" : 0, "indexes" : 0, "indexSize" : 0, "fileSize" : 0, "nsSizeMB" : 0, "ok" : 1 }
आइए एक डमी डेटाबेस बनाएं और एक संग्रह में कुछ डेटा डालें। "संग्रह" संबंधपरक तालिकाओं के बराबर हैं। एक संग्रह में कई "दस्तावेज़" हो सकते हैं जो संबंधपरक दुनिया में पंक्तियों के बराबर होते हैं।
>use testdb switched to db testdb >db.testcollection.insert({"name":"blah", "value":"humbug"}); >db.testcollection.insert({"name":"blah1", "value":"humbug1"}); >db.find(); { "_id" : ObjectId("50db292013d7f5d141a9cbfb"), "name" : "blah", "value" : "humbug" } { "_id" : ObjectId("50db292913d7f5d141a9cbfc"), "name" : "blah1", "value" : "humbug1" }
-
अपना PHP सर्वर सेटअप करें
यदि आपके पास पहले से ही एक PHP सर्वर है जो आपके MongoDB सर्वर से अलग मशीन पर चल रहा है, तो आप इस चरण को छोड़ कर चरण 4 पर जा सकते हैं। यदि आपके पास PHP सर्वर नहीं है , आप MongoDB मशीन पर PHP सर्वर स्थापित कर सकते हैं। यह आपकी MongoDB मशीनों तक पूर्ण SSH पहुंच प्राप्त करने के लाभों में से एक है:
[root@ip-10-29-173-18 ~]#yum install httpd php [root@ip-10-29-173-18 ~]#chkconfig httpd on [root@ip-10-29-173-18 ~]#service httpd start
-
मोंगो PHP एक्सटेंशन इंस्टॉल करें
PHP में MongoDB समर्थन Mongo PHP एक्सटेंशन के माध्यम से होता है। आप इसे PECL इंस्टॉलर का उपयोग करके इंस्टॉल कर सकते हैं:
[root@ip-10-29-173-18 ~]#yum install php-pear [root@ip-10-29-173-18 ~]#yum install php-devel [root@ip-10-29-173-18 ~]#yum install make [root@ip-10-29-173-18 ~]#pecl install mongo [root@ip-10-29-173-18 ~]#echo "extension=mongo.so" >> /etc/php.ini [root@ip-10-29-173-18 ~]#/etc/init.d/httpd restart
-
PHP कोड चलाएँ
MongoDB कनेक्शन स्ट्रिंग को स्क्रीन के नीचे विवरण टैब में स्केलग्रिड कंसोल से पुनर्प्राप्त करें। यदि आप उसी बॉक्स पर अपना PHP कोड चला रहे हैं, तो आप 127.0.0.1 का उपयोग कर सकते हैं।
आइए हमारे द्वारा अभी बनाए गए संग्रह में दस्तावेज़ों को क्वेरी करने के लिए कुछ PHP कोड लिखते हैं। Test.php नाम की एक फाइल बनाएं और नीचे दिए गए कोड को फाइल में डालें। "php test.php" का उपयोग करके कोड चलाएँ।
<?php try { // open connection to MongoDB server $conn = new Mongo('<connection string>'); // access database $db = $conn->testdb; // access collection $collection = $db->testcollection; // execute query // retrieve all documents $cursor = $collection->find(); // iterate through the result set // print each document echo $cursor->count() . ' document(s) found. '; foreach ($cursor as $obj) { echo 'Name: ' . $obj['name'] . ' '; echo 'Value: ' . $obj['value'] . ' '; echo ' '; } // disconnect from server $conn->close(); } catch (MongoConnectionException $e) { die('Error connecting to MongoDB server'); } catch (MongoException $e) { die('Error: ' . $e->getMessage()); } ?>
अधिक विस्तृत निर्देशों और उदाहरणों के लिए Mongo के साथ PHP का उपयोग करने पर 10gen दस्तावेज़ देखें।