MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

जावा ड्राइवर के माध्यम से एटलस एम0 (फ्री टियर) क्लस्टर से सही तरीके से कैसे कनेक्ट करें?

इसे सुलझा लिया!तो, मैंने क्या किया है:

  1. मैंने केवल driver3.6 . के माध्यम से टियर क्लस्टर से कनेक्ट करने का प्रयास किया और लिखा

    mongodb+srv://user:@cluster0-ox90k.mongodb.net/test?retryWrites=true

मुझे हमेशा एक त्रुटि मिलती है: Connection strings must start with 'mongodb://'

  1. ठीक है, मैंने +srv स्निपेट मिटा दिया है और उसी तरह लिखा

    mongodb://user:@cluster0-ox90k.mongodb.net/test?retryWrites=true

और फिर से त्रुटि प्राप्त करें:

com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting for a server that matches ReadPreferenceServerSelector{readPreference=primary}. Client view of cluster state is {type=UNKNOWN, servers=[{address=cluster0-ox90k.mongodb.net:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketException: cluster0-ox90k.mongodb.net}, caused by {java.net.UnknownHostException: cluster0-ox90k.mongodb.net}}]

तो, मैंने driver3.4 या इससे पहले . के माध्यम से लिखा था पसंद है

mongodb://user:<PASSWORD>@cluster0-shard-00-00-ox90k.mongodb.net:27017,cluster0-shard-00-01-ox90k.mongodb.net:27017,cluster0-shard-00-02-ox90k.mongodb.net:27017/test?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin&retryWrites=true

और अंत में यह हल हो गया।

नोट:आप अपने जावा ड्राइवर को '3.4 या बाद के संस्करण' पर सेट करके एटलस प्रबंधन कंसोल से यह कनेक्शन स्ट्रिंग प्राप्त कर सकते हैं। यह आपको स्वयं कनेक्शन स्ट्रिंग के साथ आने से बचने में मदद करेगा।

अपडेट किया गया: यदि आप ड्राइवरों का उपयोग करना चाहते हैं 3.7+ , आपको प्रारूप कनेक्शन के बजाय लिखना होगा (और ऊपर मेरी समस्याओं से बचने के लिए)

MongoClientURI uri = new MongoClientURI("mongodb+srv://admin:[email protected]/test?retryWrites=true");
MongoClient mongoClient = new MongoClient(uri);

MongoClients.create() . का उपयोग करते हुए एक अन्य प्रकार (3.7 रिलीज के अनुसार), और जैसा कि यहां बताया गया है:

   MongoClient mongoClient = MongoClients.create("mongodb+srv://admin:[email protected]/test?retryWrites=true");

नोट: पासवर्ड लिखने की जरूरत नहीं है जैसे mongodb://user:<mypassword>@... ,

बस प्रारूप में mongodb://user:[email protected]

ब्रेसिज़ के बिना <>



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. एक निश्चित प्रकार के रिकॉर्ड की सीमित संख्या, लेकिन अन्य रिकॉर्ड की असीमित संख्या लौटाएं?

  2. मोंगोडीबी $stdDevPop

  3. स्वचालित डेटाबेस स्वास्थ्य जांच

  4. MongoDB के लिए एक प्रदर्शन धोखा पत्रक

  5. 2 क्षेत्रों की तुलना करने पर MongoDb क्वेरी की स्थिति