fsync 잠금 해제
정의
fsyncUnlock
서버 또는 cluster의 잠금 횟수를 줄입니다. 쓰기 작업을 활성화하려면 잠금 횟수가 0이어야 합니다.
MongoDB 5.0.22 부터는
fsync
및fsyncUnlock
명령을mongos
에서 실행 하여 샤딩된 클러스터 를 락 그거나 잠금 해제할 수 있습니다.백업 작업을 완료한 후 쓰기 차단을 해제하려면 이 명령을 사용합니다.
중요
서버는 fsync 잠금 횟수를 유지합니다.
lock
필드를true
으)로 설정한fsync
명령은 잠금 수를 늘리고fsyncUnlock
명령은 잠금 수를 줄입니다. 잠긴 서버 또는 클러스터에서 쓰기를 활성화하려면 잠금 횟수가 0이 될 때까지fsyncUnlock
명령을 호출합니다.fsyncUnlock
은(는) 관리 작업입니다. 일반적으로fsyncUnlock
데이터베이스 백업 작업 후에 를 사용합니다.팁
mongosh
에서 이 명령을db.fsyncUnlock()
헬퍼 메서드를 통해서도 실행할 수 있습니다.헬퍼 메서드는
mongosh
사용자에게 편리하지만 데이터베이스 명령과 동일한 수준의 정보를 반환하지 못할 수 있습니다. 편의가 필요하지 않거나 추가 리턴 필드가 필요한 경우 데이터베이스 명령을 사용합니다.
호환성
이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
fsyncUnlock
명령을 실행하려면 db.adminCommand()
메서드를 사용합니다.
db.adminCommand( { fsyncUnlock: 1, comment: <any> } )
comment
필드는 선택 사항이며 모든 데이터 유형의 주석을 포함할 수 있습니다.
이 작업은 다음 필드가 있는 문서를 반환합니다.
필드 | 설명 |
---|---|
| 작업 상태에 대한 정보 |
| 작업 후 인스턴스에 남아 있는 잠금 수입니다. |
| 상태 코드입니다. |
예시
db.fsyncLock()
가 두 번 발행된 경우를 예로 들어보겠습니다. 다음 fsyncUnlock
작업은 db.fsyncLock()
이 수행하는 잠금을 1씩 줄입니다.
db.adminCommand( { fsyncUnlock: 1 } )
연산은 다음 문서를 반환합니다.
{ "info" : "fsyncUnlock completed", "lockCount" : NumberLong(1), "ok" : 1 }
lockCount
가 0보다 크면 mongod
인스턴스가 쓰기에 대해 잠깁니다. 쓰기를 위해 인스턴스의 잠금을 해제하려면 잠금 해제 작업을 다시 실행합니다.
db.adminCommand( { fsyncUnlock: 1 } )
연산은 다음 문서를 반환합니다.
{ "info" : "fsyncUnlock completed", "lockCount" : NumberLong(0), "ok" : 1 }
mongod
인스턴스는 쓰기에 대해 잠금 해제됩니다.