연결 옵션 지정
개요
이 섹션에서는 PyMongo에서 사용할 수 있는 MongoDB 연결 및 인증 옵션에 대해 설명합니다. 연결 URI 또는 MongoClient
생성자에 대한 인수를 사용하여 연결을 구성할 수 있습니다.
연결 URI 사용
연결 URI를 MongoClient
생성자에 전달하는 경우 문자열에 연결 옵션을 <name>=<value>
쌍으로 포함할 수 있습니다. 다음 예시에서 연결 URI에는 값이 60000
인 connectTimeoutMS
옵션과 값이 true
인 tls
옵션이 포함되어 있습니다.
uri = "mongodb://<hostname>:<port>/?connectTimeoutMS=60000&tls=true" client = pymongo.MongoClient(uri)
다음을 사용합니다. MongoClient
연결 옵션을 연결 URI에 포함하는 대신 MongoClient
생성자에 인수로 전달할 수 있습니다. 이러한 방식으로 연결을 구성하면 런타임에 설정을 더 쉽게 변경할 수 있고 컴파일 중에 오류를 포착하는 데 도움이 됩니다. 다음 예에서는 MongoClient
생성자를 사용하여 연결 옵션을 설정하는 방법을 보여 줍니다.
uri = "mongodb://<hostname>:<port>" client = pymongo.MongoClient(uri, connectTimeoutMS=60000, tls=True)
연결 옵션
다음 섹션에서는 PyMongo에서 사용할 수 있는 연결 옵션에 대해 설명합니다. MongoClient
매개 변수가 연결 string 에서 둘 이상의 옵션에 매핑되는 경우 연결 URI 예제 에 모든 관련 옵션이 표시됩니다.
네트워크 압축
연결 옵션 | 설명 |
---|---|
압축기 | The preferred compression types, in order, for wire-protocol messages sent to or received from the server. The driver uses the first of these compression types that the server supports. Data Type: str Default: None MongoClient Example: compressors = "snappy,zstd,zlib" Connection URI Example: compressors=snappy,zstd,zlib |
zlibCompressionLevel | The compression level for zlib to use. This option accepts an integer value between -1 and 9 :- -1: (Default). zlib uses its default compression level (usually 6 ).- 0: No compression. - 1: Fastest speed but lowest compression. - 9: Best compression but slowest speed. Data Type: int Default: -1 MongoClient Example: zlibCompressionLevel = 3 Connection URI Example: zlibCompressionLevel=3 |
시간 초과
연결 옵션 | 설명 |
---|---|
timeoutMS | The number of milliseconds each driver operation must complete within. If an operation doesn't finish in the specified time, PyMongo raises a timeout exception. For more information, see Limit Server Execution Time. Data Type: int Default: None MongoClient Example: timeoutMS = 10000 Connection URI Example: timeoutMs=10000 |
서버 선택
연결 옵션 | 설명 |
---|---|
server_selector | A user-defined Python function called by PyMongo to choose the server to run an operation against. For more information, see Data Type: callable Default: None MongoClient Example: server_selector = your_function Connection URI Example: N/A |
인증
연결 옵션 | 설명 |
---|---|
authMechanism | The mechanism PyMongo uses to authenticate the application. Valid options are defined in MECHANISMS. Data Type: str Default: "SCRAM-SHA-256" when connecting to MongoDB v4.0 or later."SCRAM-SHA-1" when connecting to MongoDB v3.0 through v3.13.MongoClient Example: authMechanism = "MONGODB-X509" Connection URI Example: authMechanism=MONGODB-X509 |
authMechanismProperties | Options specific to the authentication mechanism. Not needed for all authentication mechanisms. Data Type: str Default: "" MongoClient Example: authMechanismProperties = "AWS_SESSION_TOKEN:12345" Connection URI Example: authMechanismProperties=AWS_SESSION_TOKEN:12435 |
authSource | The database to authenticate against. Data Type: str Default: The database in the connection URI, or "admin" if none is providedMongoClient Example: authSource = "admin" Connection URI Example: authSource=admin |
사용자 이름 | The username for authentication. When this option is included in a connection URI, you must percent-escape it. Data Type: str Default: "" MongoClient Example: username = "my user" Connection URI Example: username=my+user |
비밀번호 | The password for authentication. When this option is included in a connection URI, you must percent-escape it. Data Type: str Default: "" MongoClient Example: password = "strong password" Connection URI Example: password=strong+password |
이 섹션의 연결 옵션에 대한 자세한 내용은 인증 메커니즘을 참조하세요.
읽기 및 쓰기 작업
연결 옵션 | 설명 |
---|---|
복제본 세트 | Specifies the name of the replica set to connect to. Data Type: str Default: null MongoClient Example: replicaSet='replicaSetName' Connection URI Example: replicaSet=replicaSetName |
directConnection | Whether to connect only to the primary member of the replica set. Data Type: bool Default: False MongoClient Example: directConnection=True Connection URI Example: directConnection=true |
읽기 설정 | Specifies the client's read-preference settings. Data Type: read_preferences Default: ReadPreference.Primary MongoClient Example: readPreference=ReadPreference.SECONDARY_PREFERRED Connection URI Example: readPreference=secondaryPreferred |
readConcern | Specifies the client's read-concern settings. For more information, see /reference/read-concern/. Data Type: str Default: None MongoClient Example: readConcern="majority" Connection URI Example: readConcern=majority |
쓰기 고려 | Specifies the client's write-concern settings. For more information, see
/reference/write-concern/. Data Type: str Default: None MongoClient Example: writeConcern="majority" Connection URI Example: writeConcern=majority |
localThresholdMS | The latency window for a replica-set members eligibility. If a member's
round trip ping takes longer than the fastest server's round-trip ping
time plus this value, the server isn't eligible for selection. Data Type: read_preferences Default: ``int`` MongoClient Example: localThresholdMS=35 Connection URI Example: localThresholdMS=35 |
이 섹션의 연결 옵션에 대한 자세한 내용은 데이터베이스 및 컬렉션을 참조하세요.