MongoDB commands: los comandos más importantes de un vistazo
Con los comandos adecuados de MongoDB, trabajar con el sistema de gestión de bases de datos MongoDB es mucho más fácil y eficaz. A continuación, hemos enumerado los comandos más importantes.
Lo que debes saber sobre MongoDB antes de empezar
La base de datos NoSQL MongoDB ha avanzado hasta convertirse en una seria alternativa a MySQL. Los usuarios aprecian la gran escalabilidad y flexibilidad de este sistema de gestión de bases de datos. Si estás pensando en probar el software, merece la pena echar un vistazo a nuestro tutorial de MongoDB. Además, el siguiente resumen de los comandos más importantes de MongoDB te facilitará su uso.
Sintaxis de los comandos
Antes de ver los diferentes comandos de MongoDB, es importante entender cómo es la sintaxis de estos comandos, que siempre sigue el mismo patrón. Los comandos de MongoDB se forman de la siguiente manera:
db.runCommand ( { hello: 1 } )
Los comandos más importantes de MongoDB para empezar
Los comandos básicos de MongoDB te ayudarán a trabajar eficazmente con el software. A continuación, te mostramos los comandos que probablemente sean los más importantes para empezar:
Comandos de MongoDB | Descripción |
---|---|
db.help() | Este comando muestra todos los comandos disponibles de MongoDB. |
mongo -version | Utiliza este comando para averiguar qué versión de MongoDB estás utilizando. Ejecuta el comando en la terminal de Linux o macOS. Si estás utilizando Windows, usa el símbolo del sistema CMD. A continuación, se mostrará la versión del shell que estás utilizando y el servidor MongoDB correspondiente. |
Comandos para bases de datos
Para poder almacenar tus datos, necesitas bases de datos. Los siguientes comandos de MongoDB te resultarán particularmente importantes para trabajar con ellas:
Comandos de MongoDB | Descripción |
---|---|
show dbs | Muestra todas las bases de datos en forma de lista. |
use DATABASE_NAME | Crea una nueva base de datos cuyo nombre puedes elegir libremente. |
db | Pregunta qué base de datos has seleccionado. |
db.dropDatabase() | Elimina la base de datos actualmente seleccionada. |
Comandos para las colecciones
Mientras que las bases de datos relacionales como MySQL se basan en tablas, MongoDB utiliza colecciones. Los siguientes comandos de MongoDB se refieren al manejo de colecciones:
Comandos de MongoDB | Descripción |
---|---|
db.createCollection (Name, Options) | Crea una colección simple y especifica tu nombre (si es necesario, también otras opciones). La colección puede ser limitada. |
show collections | Muestra y enumera todas las colecciones disponibles. |
collectionName.drop() | Elimina una colección. Si la colección se ha eliminado con éxito, el sistema lo confirma con “true”. Si hay un error, aparece como “false”. |
Administración de usuarios
Para trabajar con diferentes usuarios en una base de datos, tienes que crear perfiles de usuario y gestionarlos. Los siguientes comandos de MongoDB, entre otros, te ayudarán a hacerlo:
Comandos de MongoDB | Descripción |
---|---|
createUser (user, writeConcern) | Crea un nuevo usuario. Utiliza “writeConcern” para establecer un nivel de autorización. |
dropUser | Elimina un usuario individual de la base de datos. |
dropAllUsersFromDatabase | Elimina todos los usuarios depositados para una base de datos. |
usersInfo | Muestra toda la información disponible sobre un usuario. |
updateUser | Actualiza los datos de un usuario. |
grantRolesToUser | Da a un usuario ciertos derechos o roles. |
revokeRolesFromUser | Elimina ciertos derechos o roles de un usuario. |
Comandos para roles
Puedes asignar a los usuarios determinados derechos o funciones. Para gestionar, especificar o eliminarlos puedes usar los siguientes comandos de MongoDB:
Comandos de MongoDB | Descripción |
---|---|
createRole | Crea un rol y define sus derechos y deberes. |
rolesInfo | Consulta las especificaciones de un rol en particular. |
updateRole | Actualiza un rol y la información existente. |
dropRole | Elimina un rol específico. |
dropAllRolesFromDatabase | Elimina todos los roles de una base de datos. |
grantPrivilegesToRole | Añade privilegios claramente definidos a un rol. |
revokePrivilegesFromRole | Elimina los privilegios individuales de un rol. |
grantRolesToRole | Define los roles cuyos privilegios se transfieren a otro rol. |
revokeRolesFromRole | Elimina los roles heredados. |
invalidateUserCache | Borra la caché de usuarios y elimina la información sobre los roles. |
Añadir y gestionar documentos
Para llenar las colecciones, asígnales documentos específicos o crea otras nuevas usando los siguientes comandos de MongoDB:
Comandos de MongoDB | Descripción |
---|---|
insert | Añade un documento (o varios) a una colección. |
update | Actualiza uno o varios documentos. |
delete | Elimina los documentos de una colección. |
find | Selecciona y muestra documentos específicos de una colección. |
findAndModify | Muestra y modifica un documento específico. |
getMore | Da salida a los documentos seleccionados con el cursor. |
getLastError | Muestra el estado de la última operación realizada. |
Agrupar y clasificar
Para poder clasificar aún mejor los documentos, la base de datos ofrece los llamados comandos de agregación. La agrupación se realiza con los siguientes comandos:
Comandos de MongoDB | Descripción |
---|---|
aggregate | Documentos agrupados. |
count | Cuenta los diferentes documentos de una colección. |
distinct | Muestra los valores definidos y determina la frecuencia con la que aparecen en una colección. |
mapReduce | Se utiliza para grandes conjuntos de datos y los reduce u ordena. |
Comandos de MongoDB relevantes para la seguridad
MongoDB también es muy adecuado para trabajar con datos sensibles, porque el sistema permite limitar los accesos y ofrece opciones para proteger los registros de datos mediante autenticación. Para usar estas opciones debes conocer los siguientes comandos:
Comandos de MongoDB | Descripción |
---|---|
authenticate | Inicia una sesión autentificada que requiere un nombre de usuario y una contraseña. |
getnonce | Genera una contraseña única para un inicio de sesión protegido. |
logout | Finaliza la sesión protegida actual. |
Comandos para las sesiones
Desde la versión 3.6 o 4, MongoDB también ofrece comandos para sesiones específicas. Estos comandos pueden ser interesantes para tu trabajo:
Comandos de MongoDB | Descripción |
---|---|
startSession | Inicia una nueva sesión. |
refreshSessions | Actualiza las sesiones inactivas. |
endSessions | Termina las sesiones antes de la hora prevista. |
killSessions | Detiene las sesiones específicas y fijas. |
killAllSessions | Detiene todas las sesiones inmediatamente. |
killAllSessionsByPattern | Detiene todas las sesiones que coinciden con ciertos parámetros definidos. |
commitTransaction | Realiza una transacción. |
abortTransaction | Cancela una transacción. |
Otros comandos administrativos
MongoDB tiene otros comandos para facilitar el trabajo administrativo. Algunas de las más importantes se enumeran en la siguiente tabla por orden alfabético:
Comandos de MongoDB | Descripción |
---|---|
cloneCollectionAsCapped | Copia una colección sin límite como una nueva colección con límite. |
collMod | Añade opciones a una colección. |
compact | Desfragmenta una colección y rediseña los índices. |
convertToCapped | Convierte una colección sin límite en una colección con límite. |
createIndexes | Añade uno o más índices a una colección. |
getParameter | Muestra las opciones de configuración. |
listIndexes | Enumera todos los índices disponibles de una colección. |
setParameter | Modifica las opciones de configuración. |
shutdown | Interrumpe el proceso de MongoDB o Mongos. |
Diagnóstico y seguimiento
MongoDB también proporciona comandos para la supervisión y el diagnóstico. Estos son algunos de ellos:
Comandos de MongoDB | Descripción |
---|---|
dbStats | Proporciona estadísticas sobre el tipo y la utilización de una base de datos específica. |
features | Enumera todas las funciones disponibles. |
serverStatus | Indica el estado del servidor en uso. |
buildInfo | Muestra toda la información disponible sobre la compilación actual de MongoDB. |
connectionStatus | Proporciona información sobre la conexión actual. |
dataSize | Muestra el tamaño de un archivo o de una serie seleccionada de archivos diferentes. |
setFreeMonitoring | Permite o prohíbe el monitoreo libre durante el tiempo de ejecución. |