Docs Menu
Docs Home
/ / /
C#/.NET
/ /

연결 가이드

이 페이지의 내용

  • 연결 URI
  • MongoClientSettings
  • 기타 연결 대상
  • Atlas에 연결
  • 복제본 세트에 연결

이 가이드는.NET/C# 드라이버를 사용하여 MongoDB 인스턴스 또는 복제본 세트 배포에 연결하는 방법을 보여줍니다.

연결 문자열이라고도 하는 connection URI는 드라이버에 MongoDB deployment에 연결하는 방법과 연결된 상태에서 동작하는 방법을 알려줍니다.

표준 연결 문자열에는 다음과 같은 부분이 포함됩니다.

조각
설명
mongodb://
필수 사항입니다. 표준 연결 형식의 문자열로 식별하는 접두사입니다.
username:password@
선택 사항입니다. 인증 자격 증명. 이를 포함하면 클라이언트는 authSource 에 지정된 데이터베이스에 대해 사용자를 인증합니다.
host[:port]
필수입니다. MongoDB가 실행 중인 호스트 및 선택적 포트 번호입니다. 포트 번호를 포함하지 않으면 드라이버는 기본 포트인 27017을 사용합니다.
/defaultauthdb
선택 사항입니다. 연결 문자열에 username:password@ 인증 자격 증명이 포함되어 있지만 authSource 옵션이 포함되어 있지 않은 경우 사용할 인증 데이터베이스입니다. 이 부분을 포함하지 않으면 클라이언트는 admin 데이터베이스에 대해 사용자를 인증합니다.
?<options>
선택 사항 연결별 옵션을 <name>=<value> 쌍으로 지정하는 쿼리 문자열입니다. 이러한 옵션에 대한 전체 설명은 연결 옵션을 참조하세요.

연결 URI를 사용하려면 이를 문자열로 MongoClient 생성자에 전달하세요. 다음 예시에서 드라이버는 샘플 연결 URI를 사용하여 localhost의 포트 27017에 있는 MongoDB 인스턴스에 연결합니다.

using MongoDB.Driver;
// Sets the connection URI
const string connectionUri = "mongodb://localhost:27017";
// Creates a new client and connects to the server
var client = new MongoClient(connectionUri);

클라이언트 재사용

MongoClient는 데이터베이스에 대한 연결 풀을 나타내므로, 대부분의 애플리케이션은 여러 요청에 걸쳐 MongoClient의 단일 인스턴스만 필요로 합니다. 드라이버에서 연결 풀이 작동하는 방식에 대해 자세히 알아보려면 FAQ 페이지를 참고하세요.

연결 문자열을 만드는 방법에 대한 자세한 내용은 MongoDB 매뉴얼을 참조하세요.

MongoClientSettings 객체를 사용하여 연결 URI가 아닌 코드에서 연결을 구성할 수 있습니다. MongoClientSettings 객체를 사용하려면 클래스의 인스턴스를 생성하고 이를 MongoClient 생성자에 인수로 전달합니다.

다음 예시에서 드라이버는 MongoClientSettings 객체를 사용하여 localhost의 포트 27017에 있는 MongoDB 인스턴스에 연결합니다.

using MongoDB.Driver;
// Creates a MongoClientSettings object
var settings = new MongoClientSettings()
{
Scheme = ConnectionStringScheme.MongoDB,
Server = new MongoServerAddress("localhost", 27017)
};
// Creates a new client and connects to the server
var client = new MongoClient(settings);

Atlas에서 MongoDB deployment에 연결하려면 클라이언트를 생성합니다. MongoClientSettings 객체를 MongoClient 생성자에 전달하여 연결 문자열과 기타 클라이언트 옵션을 사용하는 클라이언트를 만들 수 있습니다.

연결 URI를 지정하려면 이를 새 MongoClientSettings 인스턴스를 반환하는 FromConnectionString() 메서드에 전달하세요. 다른 클라이언트 옵션을 지정하려면 MongoClientSettings 객체의 관련 필드를 설정합니다.

새 서버 버전으로 업그레이드할 때 호환성이 손상되는 변경을 피하려면 Stable API 버전을 클라이언트 옵션으로 설정할 수 있습니다. Stable API 기능에 대해 자세히 알아보려면 Stable API 페이지를 참조하세요.

다음 코드는 MongoDB 배포에 연결할 때 연결 문자열과 Stable API 클라이언트 옵션을 지정하고 연결이 성공했는지 확인하는 방법을 보여 줍니다:

using MongoDB.Driver;
using MongoDB.Bson;
// Replace the placeholder with your Atlas connection string
const string connectionUri = "<connection string>";
var settings = MongoClientSettings.FromConnectionString(connectionUri);
// Sets the ServerApi field of the settings object to Stable API version 1
settings.ServerApi = new ServerApi(ServerApiVersion.V1);
// Creates a new client and connects to the server
var client = new MongoClient(settings);
// Sends a ping to confirm a successful connection
try {
var result = client.GetDatabase("admin").RunCommand<BsonDocument>(new BsonDocument("ping", 1));
Console.WriteLine("Pinged your deployment. You successfully connected to MongoDB!");
} catch (Exception ex) { Console.WriteLine(ex);}

연결 문자열을 검색하려면 Atlas 드라이버 연결 가이드를 따르세요.

복제 세트 배포에 연결하려면 복제 세트 구성원의 호스트 이름 (또는 IP 주소) 과 포트 번호를 지정합니다.

복제본 세트의 전체 호스트 목록을 제공할 수 없는 경우 복제본 세트에 있는 하나 이상의 호스트를 지정하고 다음 방법 중 하나로 자동 검색을 수행하도록 드라이버에 지시할 수 있습니다.

  • 복제본 세트의 이름을 replicaSet 매개변수의 값으로 지정합니다.

  • directConnection 매개 변수의 값으로 false를 지정합니다.

  • 복제본 세트에 둘 이상의 호스트를 지정합니다.

다음 예시에서 드라이버는 샘플 연결 URI를 사용하여 sample.host1를 포함하여 서로 다른 세 호스트의 27017 포트에서 실행 중인 MongoDB 복제본 세트 sampleRS에 연결합니다.

using MongoDB.Driver;
// Sets the connection URI than includes the replica set name
const string connectionUri = "mongodb://sample.host1:27017/?replicaSet=sampleRS";
// Creates a new client and connects to the server
var client = new MongoClient(connectionUri);

돌아가기

연결