abortMoveCollection 명령을 사용하여 샤딩되지 않은 컬렉션 이동을 중지할 수 있습니다.
이 작업에 대하여
진행 중인 moveCollection 작업을 중지하려면 admin 데이터베이스 에서 abortMoveCollection 명령을 실행 합니다.
액세스 제어
배포서버 에 액세스 제어 가 활성화되어 있는 경우 enableSharding 역할 통해 abortMoveCollection 명령을 실행 수 있습니다.
단계
1
컬렉션 이동 중지
컬렉션 이동을 중지하려면 abortMoveCollection 명령을 실행 합니다. 다음 예시 에서는 shard01 에서 shard02 로 진행 중인 app.inventory 컬렉션 의 이동을 중지합니다.
db.adminCommand( { abortMoveCollection: "app.inventory" } )
abortMoveCollection 명령을 실행 한 후 명령 출력은 ok: 1 를 반환하며 다음과 유사합니다.
{ ok: 1, '$clusterTime': { clusterTime: Timestamp( { t: 1726524884, i: 28 } ), signature: { hash: Binary.createFromBase64('AAAAAAAAAAAAAAAAAAAAAAAAAAA=', 0), keyId: Long('0') } }, operationTime: Timestamp({ t: 1726524884, i: 28 }) }
2
이동 작업이 중지되었는지 확인
컬렉션 이 새 샤드 로 이동되지 않았는지 확인하려면 $collStats 파이프라인 단계를 사용합니다.
다음 예시 에서는 app.inventory 컬렉션 이 동일한 샤드 에 남아 있는지 확인하는 방법을 보여 줍니다.
db.inventory.aggregate( [ { $collStats: {} }, { $project: { "shard": 1 } } ] )
이 파이프라인 단계의 출력은 다음과 유사합니다.
[ { shard: 'shard01' } ]