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

dropConnections

이 페이지의 내용

  • 정의
  • 호환성
  • 구문
  • 명령 필드
  • 액세스 제어
  • 행동
  • 예시
dropConnections

dropConnections 명령은 지정된 호스트에 대한 mongod / mongos 인스턴스의 발신 연결을 삭제합니다. dropConnectionsadmin 데이터베이스 에 대해 실행 되어야 합니다.

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

  • MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전

  • MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전

명령의 구문은 다음과 같습니다.

db.adminCommand(
{
dropConnections: 1,
hostAndPort : [ "host1:port1", "host2:port2", ... ],
comment: <any>
}
)

명령에는 다음 필드가 필요합니다.

필드
유형
설명
hostAndPort
배열
각 배열 요소는 원격 시스템의 호스트 이름과 포트를 나타냅니다.
comment
any

선택 사항. 이 명령에 첨부할 사용자 제공 코멘트입니다. 설정되면 이 설명은 다음 위치에서 이 명령의 레코드와 함께 표시됩니다.

댓글은 유효한 모든 BSON types (문자열, 정수, 객체, 배열 등)이 될 수 있습니다.

배포에서 인증/권한 부여를 시행하는 경우 dropConnections 명령은 클러스터 리소스에 적용되는 dropConnections 조치가 필요합니다.

privilege 배열에 다음 문서가 포함된 admin 데이터베이스에 사용자 정의 역할 을 생성합니다.

{ "resource" : { "cluster" : true } }, "actions" : [ "dropConnections" ] }
  • db.createUser() 를 사용하여 admin 데이터베이스에 사용자 지정 역할로 사용자를 만듭니다.

    or

  • db.grantRolesToUser() 를 사용하여 admin 데이터베이스의 기존 사용자에게 역할을 부여합니다.

예를 예시 , 다음 작업은 dropConnections를 지원 수 있는 권한으로 admin 데이터베이스 에 사용자 정의 역할 을 생성합니다.

db.getSiblingDB("admin").createRole(
{
"role" : "dropConnectionsRole",
"privileges" : [
{
"resource" : { "cluster" : true },
"actions" : [ "dropConnections" ]
}
],
"roles" : []
}
)

admin 데이터베이스의 사용자에게 사용자 지정 역할을 할당합니다.

db.getSiblingDB("admin").createUser(
{
"user" : "dropConnectionsUser",
"pwd" : "replaceThisWithASecurePassword",
"roles" : [ "dropConnectionsRole" ]
}
)

생성된 사용자는 dropConnections를 실행할 수 있습니다.

사용자 생성에 대한 더 많은 예는 자체 관리 배포서버에서 사용자 생성하기 를 참조하세요. 기존 데이터베이스 사용자에게 권한을 추가하는 방법에 대한 튜토리얼 은 기존 사용자의 액세스 수정을 참조하세요.

dropConnections는 원격 시스템의 호스트 이름과 포트를 모두 포함하지 않는 hostAndPort 요소를 자동으로 무시합니다.

oldhost.example.com:27017 에서 최근에 제거된 멤버가 있는 복제본 세트 를 생각해 보세요. 각 활성 복제본 세트 멤버에 대해 다음 dropConnections 명령을 실행하면 oldhost.example.com:27017 에 대한 발신 연결이 남아 있지 않습니다.

db.adminCommand(
{
"dropConnections" : 1,
"hostAndPort" : [
"oldhost.example.com:27017"
]
}
)

이 명령은 다음과 유사한 출력을 반환합니다.

{
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1551375968, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
},
"operationTime" : Timestamp(1551375968, 1)
}

명령을 사용하여 connPoolStats 또는 mongod mongos 의 연결 풀 상태를 확인할 수 있습니다.

돌아가기

dropDatabase