Docs Menu
Docs Home
/ /
Administración

dropConnections (comando de base de datos)

dropConnections

El comando elimina dropConnections el Conexiones salientes de la instanciamongod/mongosa los hosts especificados. EldropConnectionsdebe ejecutarse en la base de datos admin.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El comando tiene la siguiente sintaxis:

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

El comando requiere el siguiente campo:

Campo
Tipo
Descripción

hostAndPort

arreglo

Cada elemento de la matriz representa el nombre de host y el puerto de una máquina remota.

comment

any

Opcional. Un comentario proporcionado por el usuario para adjuntar a este comando. Una vez configurado, este comentario aparece junto a los registros de este comando en las siguientes ubicaciones:

Un comentario puede ser de cualquier tipo BSON válido (string, objeto, arreglo, etc.).

Si la implementación exige autenticación/autorización, el comando dropConnections requiere la acción dropConnections en el recurso del clúster.

Cree un rol definido por el usuario en la admin base de datos donde la privilege matriz incluya el siguiente documento:

{ "resource" : { "cluster" : true } }, "actions" : [ "dropConnections" ] }
  • Utilice para crear un usuario en db.createUser() la admin base de datos con el rol personalizado.

    or

  • Utilice para otorgar el rol a un usuario existente en db.grantRolesToUser() la admin base de datos.

Por ejemplo, la siguiente operación crea un rol definido por el usuario en la admin base de datos con los privilegios para dropConnections admitir:

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

Asignar el rol personalizado a un usuario en la base de datos admin:

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

El usuario creado puede dropConnections ejecutar.

Para ver más ejemplos de creación de usuarios, consulta Crear un usuario en implementaciones autogestionadas. Para ver un tutorial sobre cómo agregar privilegios a un usuario de base de datos existente, consulta Modificar el acceso para un usuario existente.

dropConnections ignora silenciosamente hostAndPort los elementos que no incluyen tanto el nombre de host como el puerto de la máquina remota.

Considere un conjunto de réplicas con un miembro recientemente eliminado oldhost.example.com:27017 en. Al ejecutar el siguiente dropConnections comando en cada miembro activo del conjunto de réplicas, se garantiza que no queden conexiones salientes oldhost.example.com:27017 a:

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

El comando devuelve un resultado similar al siguiente:

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

Puede confirmar el estado del grupo de conexiones para mongod o mongos utilizando el connPoolStats comando.

Volver

dropDatabase

En esta página