खोज…
परिचय
MongoDB एक स्वतंत्र और ओपन-सोर्स क्रॉस-प्लेटफ़ॉर्म दस्तावेज़ ओरिएंट डेटाबेस प्रोग्राम है। क्लासिक SQL डेटाबेस के विपरीत, MongoDB डेटा स्टोर करने के लिए BSON (जैसे JSON) का उपयोग करता है। उल्का डेटाबेस भंडारण के लिए MongoDB का उपयोग करने के लिए डिज़ाइन किया गया था और यह विषय बताता है कि MongoDB भंडारण को Meteor अनुप्रयोगों में कैसे लागू किया जाए।
एक दूरस्थ Mongo DB निर्यात करें, एक स्थानीय उल्का Mongo DB में आयात करें
मददगार जब आप स्थानीय स्तर पर खेलने के लिए किसी प्रोडक्शन डेटाबेस की कॉपी को हथियाना चाहते हैं।
-
mongodump --host some-mongo-host.com:1234 -d DATABASE_NAME -u DATABASE_USER -p DATABASE_PASSWORD
यह एक स्थानीयdump
निर्देशिका बनाएगा; उस निर्देशिका के भीतर आप अपनेDATABASE_NAME
साथ एक निर्देशिका देखेंगे। - अपने स्थानीय उल्का ऐप के साथ,
dump
डायरेक्टरी के भीतर से, रन करें:mongorestore --db meteor --drop -h localhost --port 3001 DATABASE_NAME
अपने स्थानीय उल्का Mongo DB के Mongo URL प्राप्त करें
जबकि आपका उल्का ऐप स्थानीय रूप से चल रहा है:
meteor mongo --url
एक वैकल्पिक Mongo DB के लिए अपने स्थानीय उल्का ऐप कनेक्ट करें
अपने स्थानीय उल्का ऐप को शुरू करने से पहले MONGO_URL
पर्यावरण चर सेट करें।
लिनक्स / मैकओएस उदाहरण:
MONGO_URL="mongodb://some-mongo-host.com:1234/mydatabase" meteor
या
export MONGO_URL="mongodb://some-mongo-host.com:1234/mydatabase"
meteor
विंडोज उदाहरण
नोट: उपयोग न करें "
set MONGO_URL=mongodb://some-mongo-host.com:1234/mydatabase
meteor
NPM
//package.json
"scripts": {
"start": "MONGO_URL=mongodb://some-mongo-host.com:1234/mydatabase meteor"
}
$ npm start
MongoDB के बिना उल्का चल रहा है
MONGO_URL
को डेटाबेस URL के अलावा किसी भी मनमाने मूल्य पर सेट करें और यह सुनिश्चित करें कि आपकी Meteor परियोजना में कोई संग्रह परिभाषित नहीं है (Meteor संकुल द्वारा परिभाषित संग्रह सहित) MongoDB के बिना Meteor को चलाने के लिए।
ध्यान दें कि MongoDB के बिना, Meteor के उपयोगकर्ता-खाता प्रणाली से संबंधित किसी भी पैकेज के साथ सर्वर / क्लाइंट तरीके अपरिभाषित होंगे। Ex: Meteor.userId()
लिनक्स / मैक:
MONGO_URL="none" meteor
या
export MONGO_URL="none"
meteor
खिड़कियाँ:
set MONGO_URL=none
meteor
शुरू करना
आप अपने Meteor प्रोजेक्ट के अंदर निम्न कमांड चलाकर mongo
शेल शुरू कर सकते हैं:
meteor mongo
कृपया ध्यान दें: सर्वर-साइड डेटाबेस कंसोल को शुरू करना केवल तभी काम करता है जब उल्का स्थानीय रूप से एप्लिकेशन चला रहा हो।
उसके बाद, आप mongo
शेल के माध्यम से निम्नलिखित कमांड निष्पादित करके सभी संग्रहों को सूचीबद्ध कर सकते हैं:
show collections
आप मूल MongoDB संचालन भी चला सकते हैं, जैसे कि क्वेरी करना, सम्मिलित करना, अपडेट करना और हटाना।
क्वेरी दस्तावेज़
दस्तावेज़ों को find()
विधि का उपयोग करके उद्धृत किया जा सकता है, उदाहरण के लिए:
db.collection.find({name: 'Matthias Eckhart'});
यह उन सभी दस्तावेज़ों को सूचीबद्ध करेगा जिनके पास name
विशेषता है जो Matthias Eckhart
लिए निर्धारित है।
दस्तावेज़ सम्मिलित करना
यदि आप किसी संग्रह में दस्तावेज़ सम्मिलित करना चाहते हैं, तो दौड़ें:
db.collection.insert({name: 'Matthias Eckhart'});
अद्यतन दस्तावेज़
यदि आप दस्तावेज़ अद्यतन करना चाहते हैं, तो उदाहरण के लिए update()
विधि का उपयोग करें:
db.collection.update({name: 'Matthias Eckhart'}, {$set: {name: 'John Doe'}});
इस आदेश को निष्पादित करने से फ़ील्ड name
लिए मूल्य John Doe
(शुरुआत में मूल्य Matthias Eckhart
) निर्धारित करके एक एकल दस्तावेज़ को अपडेट किया जाएगा।
यदि आप उन सभी दस्तावेज़ों को अपडेट करना चाहते हैं जो एक विशिष्ट मापदंड से मेल खाते हैं, तो उदाहरण के लिए multi
पैरामीटर को true
सेट करें:
db.collection.update({name: 'Matthias Eckhart'}, {$set: {name: 'John Doe'}}, {multi: true});
अब, संग्रह के सभी दस्तावेज जो शुरू में Matthias Eckhart
लिए निर्धारित name
विशेषता John Doe
लिए अद्यतन किए गए थे।
दस्तावेज़ हटाना
उदाहरण के लिए, remove()
विधि का उपयोग करके दस्तावेज़ों को आसानी से हटाया जा सकता है:
db.collection.remove({name: 'Matthias Eckhart'});
यह उन सभी दस्तावेजों को हटा देगा जो name
फ़ील्ड में निर्दिष्ट मूल्य से मेल खाते हैं।