Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ / /

addShard

이 페이지의 내용

  • 정의
  • 호환성
  • 구문
  • 고려 사항
  • 예시
addShard

샤딩된 클러스터에 샤드 복제본 세트 를 추가합니다.

mongosh에서는 이 명령을 sh.addShard() 헬퍼 메서드를 통해서도 실행할 수 있습니다.

헬퍼 메서드는 mongosh 사용자에게 편리하지만 데이터베이스 명령과 동일한 수준의 정보를 반환하지 못할 수 있습니다. 편의가 필요하지 않거나 추가 리턴 필드가 필요한 경우 데이터베이스 명령을 사용합니다.

이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.

  • MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스

중요

이 명령은 서버리스 인스턴스에서는 지원되지 않습니다. 자세한 내용은 지원되지 않는 명령을 참조하세요.

명령은 다음과 같은 구문을 가집니다:

db.adminCommand(
{
addShard: "<replica_set>/<hostname><:port>",
maxSize: <size>,
name: "<shard_name>"
}
)

이 명령에는 다음 필드가 포함됩니다.

필드
유형
설명
addShard
문자열

최소 한 명의 샤드 복제본 세트 멤버의 복제본 세트 이름, 호스트 이름 및 포트입니다. 모든 추가 복제본 세트 멤버 호스트 이름은 쉼표로 구분해야 합니다. 예를 들면 다음과 같습니다.

<replica_set>/<hostname><:port>,<hostname><:port>, ...
maxSize
integer
선택 사항. 샤드의 최대 크기(MB)입니다. maxSize ~ 0 로 설정하면 MongoDB는 샤드의 크기를 제한하지 않습니다.
name
문자열
선택 사항. 샤드의 이름입니다. 이 이름을 지정하지 않으면 MongoDB가 자동으로 고유한 이름을 제공합니다.

addShard 명령은 config 데이터베이스 에 샤드 구성 정보를 저장합니다. admin 데이터베이스 를 사용할 때는 항상 addShard 를 실행 합니다.

머신이 디스크 용량이 서로 다르거나 일부 샤드의 데이터 양을 제한하려는 경우 maxSize 를 지정합니다. 제약 조건은 maxSize 샤드에서 totalSize listDatabases maxSize을 실행하여 반환된 값이 값을 초과할 때 밸런서 가 청크를 샤드로 마이그레이션하는 것을 방지합니다.

샤딩된 클러스터에 샤드를 추가하면 기존의 모든 샤드 컬렉션에 대한 클러스터의 샤드 간 청크 밸런스에 영향을 줍니다. 밸런서가 청크 마이그레이션을 시작하여 클러스터가 균형을 이룰 수 있도록 합니다. 자세한 내용은 밸런서 내부를 참조하세요.

소스 샤드는 기본적으로 마이그레이션된 문서를 자동으로 보관하므로 청크 마이그레이션은 디스크 공간에 영향을 미칠 수 있습니다. 자세한 내용은 moveChunk 디렉토리를 참조하세요.

중요

addShard에 제공된 시드 목록에 숨겨진 멤버를 포함할 수 없습니다.

다음 명령은 복제본 세트를 샤드로 추가합니다.

use admin
db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )

경고

config 서버가 localhost 에서도 실행 중인 경우가 아니라면 호스트 이름에 localhost 을 사용하지 마세요.

돌아가기

abortReshardCollection