Help Center/
Document Database Service/
Getting Started/
Getting Started with Replica Sets/
Connecting to a Replica Set Instance/
Connecting to a Replica Set Instance Using Program Code/
Python
Updated on 2022-06-06 GMT+08:00
Python
This section describes how to connect to a replica set instance using Python.
Prerequisites
- To connect an ECS to an instance, the ECS must be able to communicate with the DDS instance. You can run the following command to connect to the IP address and port of the instance server to test the network connectivity.
If the message It looks like you are trying to access MongoDB over HTTP on the native driver port is displayed, the network connectivity is normal.
- Install Python and third-party installation package pymongo on the ECS. Pymongo 2.8 is recommended.
- If SSL is enabled, you need to download the root certificate and upload it to the ECS.
Connection Code
- Enabling SSL
import ssl from pymongo import MongoClient conn_urls="mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin&replicaSet=replica" connection = MongoClient(conn_urls,connectTimeoutMS=5000,ssl=True, ssl_cert_reqs=ssl.CERT_REQUIRED,ssl_match_hostname=False,ssl_ca_certs=${path to certificate authority file}) dbs = connection.database_names() print "connect database success! database names is %s" % dbs
- Disabling SSL
import ssl from pymongo import MongoClient conn_urls="mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin&replicaSet=replica" connection = MongoClient(conn_urls,connectTimeoutMS=5000) dbs = connection.database_names() print "connect database success! database names is %s" % dbs
- The authentication database in the URL must be admin. That means setting authSource to admin.
- In SSL mode, you need to manually generate the trustStore file.
- The authentication database must be admin, and then switch to the service database.
Parent topic: Connecting to a Replica Set Instance Using Program Code
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
The system is busy. Please try again later.
For any further questions, feel free to contact us through the chatbot.
Chatbot