Database/NoSQL

[MongoDB] 몽고DB Connection URI (연결문자열)

코딩for 2022. 10. 25. 09:33
반응형

MongoDB 연결 URI 소개(번역)

 

Format Connection URI with MongoDB Database Information

Learn how to encode MongoDB connection details in connection URIs for applications and libraries, including authentication details and other parameters.

www.prisma.io

 

URI 유형 지정

연결 URI의 항목은 일반적으로 프로토콜 사양 또는 응용 프로그램 유형입니다. URI는 MongoDB 데이터베이스에 연결하고 인증하는 데 사용되므로 사용 중인 애플리케이션과 라이브러리에 이를 나타내는 기표를 사용해야 합니다.

MongoDB 프로젝트는 mongodb유효한 URI 스키마 지정자로만 허용합니다. 따라서 항상 다음과 같이 연결 URI를 시작해야 합니다.

mongodb://

스키마 지정자는 다음 정보가 올바른 컨텍스트에서 해석되도록 합니다.

 

사용자 이름 및 암호 지정

URI의 다음 부분은 사용자 자격 증명입니다. 사용자 자격 증명은 선택 사항이지만 일반적으로 응용 프로그램이나 데이터베이스에서 구성한 기본값에 의존하지 않으려는 경우 필수입니다.

사용자 자격 증명을 포함하려면 스키마 식별자 뒤에 사용자 이름을 입력하고 콜론( :), 암호, 마지막으로 at 기호( @)를 입력합니다.

mongodb://username:password@

사용자 자격 증명은 선택 사항이지만 포함된 경우 사용자 이름과 암호 구성 요소를 모두 제공해야 합니다.

 

서버가 수신 대기 중인 위치 지정

사용자 자격 증명 다음에 서버가 수신 대기하는 위치를 정의하는 호스트 지정자가 옵니다. 호스트 지정자 내에서 하나 이상의 호스트를 정의할 수 있지만 호스트 지정자는 필수 이므로 하나 이상의 호스트를 제공해야 합니다.

각 호스트 정의는 host및 선택적 으로 구성됩니다 port. host로컬에서 확인할 수 있는 호스트 이름, DNS와 같은 외부 이름 시스템에서 확인된 이름, IP 주소 또는 기타 직접 주소가 될 수 있습니다 . 포트는 MongoDB가 수신 대기 중인 호스트의 포트 번호를 나타냅니다.

애플리케이션이 로컬 컴퓨터의 기본 MongoDB 포트(27017)에 연결을 시도하도록 지정하려면 다음을 사용할 수 있습니다.

mongodb://localhost

사용자 이름과 암호를 포함해야 하는 경우 해당 정보가 먼저 표시되고 at 기호로 구분됩니다.

mongodb://username:password@localhost

비표준 포트에서 실행되는 원격 서버를 지정하려면 해당 세부 정보를 콜론으로 구분합니다. 예를 들어 에서 호스트의 포트 3333에 연결하려면 198.51.100.22다음을 사용할 수 있습니다.

mongodb://username:password@198.51.100.22:3333

둘 이상의 호스트 및 포트 쌍을 정의하려면 쉼표( ,)로 세트를 구분하여 첫 번째 서버에 연결할 수 없는 경우 후자의 서버를 시도하도록 애플리케이션에 지시합니다. 예를 들어 포트 5555에서 수신 대기하는 대체 서버를 포함하도록 이전 예제를 확장하려면 다음 198.51.100.33을 사용할 수 있습니다.

mongodb://username:password@198.51.100.22:3333,198.51.100.33:5555

준수하는 클라이언트 및 응용 프로그램은 먼저 에서 수신 대기 중인 서버에 연결을 시도합니다 198.51.100.22:3333. 실패하면 에서 수신하는 MongoDB 데이터베이스에 도달하려고 시도합니다 198.51.100.33:5555

 

기본 인증 데이터베이스 제공

호스트 지정자 다음의 데이터는 기본 인증 데이터베이스입니다. 모든 데이터베이스 관리 시스템에 해당되는 것은 아니지만 MongoDB를 사용하면 연결을 설정할 때 특정 데이터베이스에 대해 인증해야 합니다.

데이터베이스 이름은 슬래시( /)로 시작하여 줄 끝이나 물음표( ?)까지 계속됩니다. authSource매개변수 목록에 옵션이 제공되지 않으면 기본 인증 데이터베이스가 사용됩니다 . 둘 다 제공되지 않으면 클라이언트는 admin데이터베이스에 대해 인증합니다.

sales에서 수신하는 MongoDB 서버에서 호스팅 되는 데이터베이스에 연결하려면 198.51.100.22:3333다음을 입력할 수 있습니다.

mongodb://username:password@198.51.100.22:3333/sales

 

추가 매개변수 지정

연결 URI의 마지막 부분은 연결에 대한 추가 매개변수를 제공하는 데 사용됩니다. 매개변수 목록은 선행 물음표( ?)로 시작되며 줄 끝까지 계속됩니다. 기본 인증 데이터베이스가 제공되지 않으면 호스트 사양의 끝을 나타내는 후행 슬래시가 물음표( /?) 바로 앞에 와야 합니다.

나열된 각 매개변수는 등호( =)로 결합된 키 및 값 쌍으로 정의됩니다. 첫 번째 매개변수 쌍 다음에 각각의 추가 키-값 쌍은 앰퍼샌드( &)로 구분됩니다.

예를 들어 클라이언트가 이전에 정의한 연결에 대해 10초 제한 시간을 적용하도록 지정하려면 다음을 사용할 수 있습니다.

mongodb://username:password@198.51.100.22:3333/sales?connectTimeoutMS=10000

추가 매개변수를 제공하려면 나중에 &각 쌍 사이에 앰퍼샌드( )를 사용하여 매개변수를 추가합니다. 예를 들어 SSL이 필요하고 지정된 호스트가 연결하려는 복제본 세트의 구성원임을 추가로 지정할 수 있습니다.

mongodb://username:password@198.51.100.22:3333,198.51.100.33:5555/sales?connectTimeoutMS=10000&tls=true&replicaSet=someReplicaSet

MongoDB 설명서에는 자세히 알아보기 위해 읽을 수 있는 전체 매개변수 목록이 있습니다.

 

 

 

반응형