Docs Menu
Docs Home
/ /

연결 옵션 지정

이 페이지에서는 C 운전자 에서 사용할 수 있는 연결 옵션과 이를 MongoDB 연결에 적용 방법을 설명합니다.

다음 섹션에서는 연결 옵션을 지정하는 방법에 대해 설명합니다.

연결 문자열 monogoc_client_t 구조에 전달하는 경우 문자열에 연결 옵션을 <name>=<value> 쌍으로 포함할 수 있습니다. 다음 예시 에서 연결 문자열 값이 60000connectTimeoutMS 옵션과 값이 truetls 옵션이 포함되어 있습니다.

mongoc_init();
// Specifies the connection options in the connection string
const char *uri = "mongodb+srv://localhost:27017/?connectTimeoutMS=60000&tls=true";
// Creates a new client
mongoc_client_t *client = mongoc_client_new_from_uri_with_error(uri, &error);
if (!client) {
fprintf(stderr, "%s\n", error.message);
goto cleanup;
}
// Use client...
cleanup:
mongoc_client_destroy(client);
mongoc_uri_destroy(uri);

연결 문자열 에 지정할 수 있는 옵션에 대해 자세히 학습 MongoDB Server 매뉴얼에서연결 문자열 옵션을 참조하세요.

URI 옵션을 사용하여 연결 문자열 아닌 코드에서 연결 설정을 구성할 수 있습니다. 이러한 방식으로 연결을 구성하면 런타임에 설정을 더 쉽게 변경할 수 있고, 컴파일 중에 오류를 포착하는 데 도움이 되며, 연결 문자열 보다 더 많은 구성 옵션을 제공할 수 있습니다.

URI 옵션을 사용하여 연결 옵션을 설정하다 하려면 다음 단계를 수행합니다.

  1. 연결 문자열 사용하여 mongoc_uri_t 구조체 만들기

  2. URI 옵션 함수를 사용하여 원하는 연결 옵션 지정

  3. URI를 다음에 전달하여 URI로 새 클라이언트 만듭니다. mongoc_client_new_from_uri()

다음 코드 예시 앞의 단계를 수행하는 방법을 보여줍니다.

mongoc_uri_t *uri = mongoc_uri_new_with_error("mongodb+srv://localhost:27017/", &error);
if (!uri) {
fprintf(stderr, "%s\n", error.message);
goto cleanup;
}
// Specifies the connection options by using the URI options API
if (!mongoc_uri_set_option_as_int32(uri, MONGOC_URI_CONNECTTIMEOUTMS, 60000)) {
fprintf(stderr, "Failed to set '%s'\n", MONGOC_URI_CONNECTTIMEOUTMS);
goto cleanup;
}
if (!mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLS, true)) {
fprintf(stderr, "Failed to set '%s'\n", MONGOC_URI_TLS);
goto cleanup;
}
// Creates a new client
client = mongoc_client_new_from_uri_with_error(uri, &error);
if (!client) {
fprintf(stderr, "%s\n", error.message);
goto cleanup;
}
// Use client...
cleanup:
mongoc_client_destroy(client);
mongoc_uri_destroy(uri);

다음 섹션에서는 C 운전자 에서 사용할 수 있는 연결 옵션과 연결 문자열 또는 URI 옵션을 직접 사용하여 지정하는 방법에 대해 설명합니다.

모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대한 자세한 학습 은 연결 문자열 가이드 참조하세요.

기본값 은 false입니다. 호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false (으)로 설정하다 해야 합니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb://localhost:27017/?directConnection=true");

연결할 복제본 세트의 이름입니다. 기본값은 null입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?replicaSet=yourReplicaSet");

모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대한 자세한 학습 은 연결 문자열 가이드 참조하세요.

기본값 은 false입니다. 호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false (으)로 설정하다 해야 합니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_DIRECTCONNECTION, true);

연결할 복제본 세트의 이름입니다. 기본값은 null입니다.

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_REPLICASET, "yourReplicaSet");

서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true");

TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다. 기본값 은 false입니다.

다음 코드 예시 이 옵션을 true로 설정하다 방법을 보여줍니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsAllowInvalidCertificates=true");

TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다. 기본값 은 false입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsDisableCertificateRevocationCheck=true");

클라이언트 인증서, 해지 처리, TLS/SSL 프로토콜 활성화 및 비활성화를 포함한 TLS/SSL 옵션. 기본값 은 null입니다.

이 옵션은 URI 옵션을 통해서만 설정하다 수 있습니다. SSL 옵션을 설정하다 방법을 학습 MongoC URI Option 탭 아래의 SSL 옵션 섹션을 참조하세요.

서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLS, true);

TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다. 기본값 은 false입니다.

다음 코드 예시 이 옵션을 true로 설정하다 방법을 보여줍니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSINSECURE, true);

TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다. 기본값 은 false입니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSDISABLECERTIFICATEREVOCATIONCHECK, true);

클라이언트 인증서, 해지 처리, TLS/SSL 프로토콜 활성화 및 비활성화를 포함한 TLS/SSL 옵션. 기본값 은 null입니다.

SslSettings.CheckCertificateRevocationfalse 로 설정하다 있고 AllowInsecureTlstrue로 설정하다 되어 있으면 C 운전자 예외가 발생합니다.

mongoc_client_t *client;
mongoc_ssl_opt_t ssl_opts = {0};
ssl_opts.pem_file = "/path/to/client-cert.pem";
ssl_opts.pem_pwd = "password";
ssl_opts.ca_file = "/path/to/ca.pem";
ssl_opts.allow_invalid_hostname = false;
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true");
client = mongoc_client_new_from_uri(uri);
mongoc_client_set_ssl_opts(client, &ssl_opts);

TLS 옵션에 대한 자세한 내용은 TLS(전송 계층 보안) 구성 가이드 참조하세요.

운전자 시간이 초과되기 전에 서버 에 대한 단일 TCP 소켓 연결을 설정하려고 시도하는 시간입니다. 기본값 은 10 초입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?connectTimeoutMS=60000");

운전자 시간이 초과되기 전에 소켓에서 전송 또는 수신을 시도하는 시간입니다. 기본값 은 운영 체제에서 설정하다 .

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketTimeoutMS=60000");

운전자 시간이 초과되기 전에 서버 에 대한 단일 TCP 소켓 연결을 설정하려고 시도하는 시간입니다. 기본값 은 10 초입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_CONNECTTIMEOUTMS, 60000);

운전자 시간이 초과되기 전에 소켓에서 전송 또는 수신을 시도하는 시간입니다. 기본값 은 운영 체제에서 설정하다 .

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SOCKETTIMEOUTMS, 60000);

서버 와 주고받는 유선 프로토콜 메시지에 대한 기본 압축 유형(순서대로)입니다. 선택적 빌드 시간 종속성으로 " 스내피", "zlib" 및 "zstd "를 활성화 할 수 있습니다. 운전자 서버 지원하는 이러한 압축 유형 중 첫 번째를 사용합니다. 기본값 은 비어 있습니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?compressors=zlib,snappy");

서버 와 주고받는 유선 프로토콜 메시지에 대한 기본 압축 유형(순서대로)입니다. 선택적 빌드 시간 종속성으로 " 스내피", "zlib" 및 "zstd "를 활성화 할 수 있습니다. 운전자 서버 지원하는 이러한 압축 유형 중 첫 번째를 사용합니다. 기본값 은 비어 있습니다.

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_COMPRESSORS, "zlib,snappy");

운전자 연결 풀 에서 만들 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다. 기본값 은 100입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?maxPoolSize=150");

운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?waitQueueTimeoutMS=30000");

운전자 연결 풀 에서 만들 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다. 기본값 은 100입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_MAXPOOLSIZE, 150)

mongoc_client_pool_t 구조를 사용하여 최대 연결 풀 크기를 설정하다 수도 있습니다.

mongoc_client_pool_t *pool = mongoc_client_pool_new(uri);
// Specifies max pool size
mongoc_client_pool_max_size(pool, 150);

운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_WAITQUEUETIMEOUTMS, 30000);

연결 풀에 대해 자세히 학습 연결 가이드 참조하세요.

쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?w=2");

쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?wTimeoutMS=5000");

쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다. 기본값 은 writeConcernMajorityJournalDefault 설정의 값에 따라 달라집니다. j 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?journal=true");

쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

MONGOC_URI_W 옵션을 사용하여 w 을 설정하다 수 있습니다.

// Use the int32 version of the mongoc_uri_t set function to set integer values
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_W, 2);
// Use the utf8 version of the mongoc_uri_t set function to set string values
mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_W, "majority");

mongoc_write_concern_t 구조를 사용하여 w 를 설정하다 수도 있습니다.

// Creates a write concern structure
mongoc_write_concern_t *write_concern = mongoc_write_concern_new();
// Sets w=2
mongoc_write_concern_set_w(write_concern, 2);
mongoc_client_set_write_concern(client, write_concern);

쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

MONGOC_URI_WTIMEOUTMS 옵션을 사용하여 wtimeoutms 을 설정하다 수 있습니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_WTIMEOUTMS, 5000);

mongoc_write_concern_t 구조를 사용하여 wtimeoutms 를 설정하다 수도 있습니다.

// Creates a write concern structure
mongoc_write_concern_t *write_concern = mongoc_write_concern_new();
// Sets w=2
mongoc_write_concern_set_wtimeout(write_concern, 5000);
// Apply write concern to client
mongoc_client_set_write_concern(client, write_concern);

쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다. 기본값 은 writeConcernMajorityJournalDefault 설정의 값에 따라 달라집니다. j 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

MONGOC_URI_JOURNAL 옵션을 사용하여 journal 을 설정하다 수 있습니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_JOURNAL, true);

mongoc_write_concern_t 구조를 사용하여 journal 를 설정하다 수도 있습니다.

// Creates a write concern structure
mongoc_write_concern_t *write_concern = mongoc_write_concern_new();
// Sets journal to true
mongoc_write_concern_set_journal(write_concern, true);
// Apply write concern to client
mongoc_client_set_write_concern(client, write_concern);

클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readConcernLevel=local");

클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.

MONGOC_URI_READCONCERNLEVEL 옵션을 사용하여 읽기 고려 (read concern) 수준을 설정하다 수 있습니다.

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_READCONCERNLEVEL, "local")

mongoc_read_concern_t 구조를 사용하여 읽기 고려 (read concern) 수준을 설정하다 수도 있습니다.

mongoc_read_concern_t *read_concern = mongoc_read_concern_new();
// Set the read concern level to "local"
mongoc_read_concern_set_level(read_concern, MONGOC_READ_CONCERN_LEVEL_LOCAL);
mongoc_client_set_read_concern(client, read_concern);

클라이언트의 기본값 읽기 설정입니다. 기본값 은 primary 입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 설정을 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=primaryPreferred");

최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=secondary&maxStalenessSeconds=120");

서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다. 기본값 은 15 밀리초입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?localThresholdMS=150");

클라이언트의 기본값 읽기 설정입니다. 기본값 은 primary 입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 설정을 참조하세요.

mongoc_read_prefs_t 구조를 사용하여 읽기 설정 (read preference) 을 설정하다 수 있습니다.

mongoc_client_t *client = mongoc_client_new("mongodb+srv://localhost:27017/");
// Specifies the read preference
mongoc_read_prefs_t *read_prefs = mongoc_read_prefs_new(MONGOC_READ_PRIMARY_PREFERRED);
mongoc_client_set_read_prefs(client, read_prefs);

MONGOC_URI_READPREFERENCE 옵션을 사용하여 읽기 설정 (read preference) 설정하다 수도 있습니다.

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_READPREFERENCE, "primaryPreferred")

최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.

MONGOC_URI_MAXSTALENESSSECONDS 옵션을 사용하여 최대 비활성 상태를 설정하다 수 있습니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_MAXSTALENESSSECONDS, 120);

mongoc_read_prefs_t 구조를 사용하여 최대 비활성 상태를 설정하다 수도 있습니다.

mongoc_client_t *client = mongoc_client_new("mongodb+srv://localhost:27017/");
mongoc_read_prefs_t *read_prefs = mongoc_read_prefs_new(MONGOC_READ_SECONDARY);
// Specifies max staleness to 120 seconds
mongoc_read_prefs_set_max_staleness_seconds(read_prefs, 120);
mongoc_client_set_read_prefs(client, read_prefs);

서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다. 기본값 은 15 밀리초입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_LOCALTHRESHOLDMS, 150);

운전자 MongoDB Server 에 인증하는 데 사용하는 메커니즘입니다. 인증 메커니즘 지정하지 않으면 운전자 SCRAM-SHA-1 SCRAM-SHA-256서버 버전에 따라 또는 를 사용합니다. 사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?authSource=admin&authMechanism=GSSAPI");

운전자 MongoDB Server 에 인증하는 데 사용하는 메커니즘입니다. 인증 메커니즘 지정하지 않으면 운전자 SCRAM-SHA-1 SCRAM-SHA-256서버 버전에 따라 또는 를 사용합니다. 사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.

mongoc_uri_set_auth_mechanism(uri, "GSSAPI");

서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?heartbeatFrequencyMS=5000");

운전자 시간이 초과되기 전에 서버 선택하려고 시도하는 시간입니다. 기본값 은 30000 ms(30 초)입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?serverSelectionTimeoutMS=40000");

단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 다시 사용하기 전에 빠른 "hello" 호출로 연결을 확인합니다. 기본값은 5000 ms(5 초)입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketCheckIntervalMS=10000");

서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_HEARTBEATFREQUENCYMS, 5000);

운전자 시간이 초과되기 전에 서버 선택하려고 시도하는 시간입니다. 기본값 은 30000 ms(30 초)입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SERVERSELECTIONTIMEOUTMS, 40000);

단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 다시 사용하기 전에 빠른 "hello" 호출로 연결을 확인합니다. 기본값은 5000 ms(5 초)입니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SOCKETCHECKINTERVALMS, 10000);

재시도 가능 읽기를 활성화합니다. 기본값은 true입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?retryReads=false");

재시도 가능 쓰기를 활성화합니다. 기본값은 true입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?retryWrites=false");

재시도 가능 읽기를 활성화합니다. 기본값은 true입니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_RETRYREADS, false)

재시도 가능 쓰기를 활성화합니다. 기본값은 true입니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_RETRYWRITES, false);

운전자 연결 핸드셰이크의 일부로 클라이언트 메타데이터 에서 서버 에 전달하는 앱 이름입니다. 연결이 설정되면 서버 이 값을 MongoDB 로그에 출력합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다. 기본값 은 비어 있습니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?appName=yourAppName");

운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.

  • 호스팅하다 이름을 하나만 지정합니다.

  • 복제본 세트 에 연결하지 않습니다.

  • SrvMaxHosts 속성 사용하지 않습니다.

  • DirectConnection 속성 사용하지 않습니다.

기본값은 false입니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?loadBalanced=true");

시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지 에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다. 기본값 은 0입니다.

이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?srvMaxHosts=5");

운전자 연결 핸드셰이크의 일부로 클라이언트 메타데이터 에서 서버 에 전달하는 앱 이름입니다. 연결이 설정되면 서버 이 값을 MongoDB 로그에 출력합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다. 기본값 은 비어 있습니다.

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_APPNAME, "yourAppName");

운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.

  • 호스팅하다 이름을 하나만 지정합니다.

  • 복제본 세트 에 연결하지 않습니다.

  • SrvMaxHosts 속성 사용하지 않습니다.

  • DirectConnection 속성 사용하지 않습니다.

기본값은 false입니다.

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_LOADBALANCED, true);

시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지 에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다. 기본값 은 0입니다.

이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SRVMAXHOSTS, 5);

이 페이지에 사용된 유형에 대한 자세한 내용은 다음 API 문서를 참조하세요.

돌아가기

MongoClient 만들기

이 페이지의 내용