정의
killSessionskillSessions명령은 지정된 세션을 종료합니다. 액세스 제어가 활성화된 경우 이 명령은 사용자가 소유한 세션만 종료합니다. []1
구문
명령은 다음과 같은 구문을 가집니다:
db.runCommand( { killSessions: [ { id : <UUID> }, ... ] } )
호환성
이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
- MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
중요
이 명령은 M0 및 Flex 클러스터에서 지원되지 않습니다. 자세한 내용은 지원되지 않는 명령을 참조하세요.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
명령 필드
이 명령은 세션 ID의 UUID 부분을 지정하는 문서 배열을 사용합니다. 빈 배열 [ ] 를 지정하여 모든 세션을 종료하거나 액세스 제어가 활성화된 경우 사용자가 소유한 모든 세션을 종료합니다. [1]
기존 세션 보기
기존 세션을 보려면 $listSessions 작업 또는 $listLocalSessions 를 참조하세요.
| [1] | (,1 2) 작업은 준비된 killSessions 상태 의 트랜잭션이 있는 세션을 무시합니다. 자세한 내용은 동작을 참조하세요. |
행동
세션 식별
MongoDB 지정된 각 UUID를 인증된 사용자 자격 증명 의 해시와 연결하여 종료할 사용자의 세션을 식별합니다. 사용자에게 일치하는 세션이 없는 경우 는 효과가 killSessions 없습니다.
진행 중인 작업
세션을 종료하면 세션에서 진행 중인 모든 작업이 종료되고 이러한 작업과 관련된 열려 있는 커서가 모두 닫힙니다.
종료된 세션 가용성
종료된 세션은 여전히 현재 세션으로 나열될 수 있으며, 향후 작업에서 종료된 세션을 사용할 수 있습니다. 기존 세션을 보려면 $listSessions 작업 또는 $listLocalSessions 를 참조하세요.
준비된 상태의 트랜잭션이 있는 세션
작업은 트랜잭션이 준비된 killSessions 상태 인 세션을 무시합니다. 준비된 상태 의 트랜잭션은 커밋 코디네이터가 를 "sendingPrepare" action 완료한 여러 샤드에 걸쳐 있는 쓰기 (write) 작업이 있는 트랜잭션을 나타냅니다.
예시
다음 작업은 사용자에 대해 지정된 세션을 종료합니다.
db.runCommand( { killSessions: [ { id: UUID("f9b3d8d9-9496-4fff-868f-04a6196fc58a") } ] } )