문서 홈 → 애플리케이션 개발 → MongoDB 매뉴얼
addShard
정의
addShard
팁
mongosh
에서 이 명령은sh.addShard()
헬퍼 메서드를 통해서도 실행할 수 있습니다.헬퍼 메서드는
mongosh
사용자에게 편리하지만 데이터베이스 명령과 동일한 수준의 정보를 반환하지 않을 수 있습니다. 편의가 필요하지 않거나 추가 반환 필드가 필요한 경우 database 명령을 사용합니다.인스턴스에 연결되면 를 실행합니다. 이 명령은 다음과 같은
addShard
형식을 사용하여 샤드 복제본 세트를 추가합니다.mongos
{ 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
을 실행하여 반환된 값이 값을 초과할 때 밸런서 가 청크를 샤드로 마이그레이션하는 것을 방지합니다.
고려 사항
밸런싱
샤드 cluster에 샤드를 추가하면 기존의 모든 샤드 collection에 대한 cluster의 샤드 간 청크 밸런스에 영향을 줍니다. 밸런서가 청크 마이그레이션을 시작하여 cluster가 균형을 이룰 수 있도록 합니다. 자세한 내용은 cluster 밸런서 를 참조하세요.
소스 샤드는 기본적으로 마이그레이션된 문서를 자동으로 보관하므로 청크 마이그레이션은 디스크 공간에 영향을 미칠 수 있습니다. 자세한 내용은 moveChunk
디렉토리를 참조하세요.
숨겨진 멤버
예제
다음 명령은 복제본 세트를 샤드로 추가합니다.
use admin db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )
경고
config 서버가 localhost
에서도 실행 중인 경우가 아니라면 호스트 이름에 localhost
을 사용하지 마세요.