Наиболее распространенные команды MongoDB для начинающих MongoDB [2022]
Опубликовано: 2021-01-06Оглавление
Ведение журнала с помощью MongoDB
Следующая команда применяется для входа в MongoDB.
mongo -u <имя пользователя> -p <пароль> –authenticationDatabase <db_name> |
Примечание. Для доступа пользователи должны иметь правильные учетные данные и имя базы данных.
Создание базы данных и выбор базы данных для работы
В MongoDB команда « use» — это первый шаг для создания новой базы данных.
Синтаксис:
использовать имя_базы_данных |
При выполнении эта команда создаст новую базу данных для определенного имени. Если есть база данных с определенным именем, она вернется с существующей базой данных.
Та же самая команда ' use' также используется для выбора базы данных и начала работы с ней.

Пример:
Предположим, вы начинаете новый образовательный проект с базой данных edudb. Тогда команда будет такой:
>используй эдудб Перешел на БД edudb |
Читайте: Примеры использования MongoDB в реальном мире: преимущества и лучшие компании
Проверить текущую базу данных
Вы также можете проверить текущую базу данных с помощью команды db как:
>дб Эдудб |
Для отображения в общем списке в базе данных должен быть хотя бы один файл или документ. Вы можете легко сделать это, используя команду вставки.
Синтаксис:
> дб . файл . вставить({"имя":"классы"}) |
Показать все текущие базы данных
Вы можете использовать следующие команды для проверки существующей базы данных с помощью show dbs as:
>показать БД местный 0,53443 ГБ тест 0.12332 ГБ edudb 0.02423 ГБ |
В MongoDB тест присутствует как база данных по умолчанию. Все коллекции по умолчанию хранятся только в тесте.
Вы можете использовать командный интерфейс MongoDB для управления задачами, связанными с операциями, не относящимися к CRUD. Интерфейс позволяет пользователям получать точную информацию с сервера, воспроизводить текущие сценарии и запускать определенные задачи по уменьшению карты.
Существуют также специальные команды для запуска в текущей базе данных и базе данных администратора.
Для текущей базы данных в MondDB используйте следующую команду db.runCommand():
db.runCommand( { <команда> } ) |
Для базы данных администратора используйте следующую команду db.adminCommand():
дБ. adminCommand ( { <команда> } ) |
Для создания коллекции используйте следующую команду:
db.createCollection («имя_коллекции»); |
Для вставки документа в Коллекцию:
// // Для вставки одного документа в коллекцию // db.<имя_коллекции>.insert({поле1: «значение», поле2: «значение»}) // // Для вставки нескольких документов в коллекцию // db.<имя_коллекции>.insert([{поле1: «значение1»}, {поле1: «значение2»}]) db.<имя_коллекции>.insertMany([{поле1: «значение1»}, {поле1: «значение2»}]) |
Сохранить и обновить документ
Здесь команда «сохранить» может выполнять обе функции: вставлять совершенно новый документ или обновлять существующий документ.
db.<имя_коллекции>.save({"_id": новый ObjectId("jhgsdjhgdsf"), поле1: "значение", поле2: "значение"}); |
Примечание. Если имеется совпадающий идентификатор документа, он обновляется; в противном случае создается новый документ.
Список пользователей, ролей и коллекций
Эти команды отображают количество пользователей, их роли и коллекции.
// // Команда для получения списка всех коллекций из текущей базы данных // показать коллекции; db.getCollectionNames(); // // Команда всем пользователям из текущей базы данных // показать пользователей; db.getUsers(); // // Команда для вывода списка всех ролей пользователей // показать роли |
Отображение записей коллекции
// // Команда для получения всех записей // db.<имя_коллекции>.find(); // // Эта команда извлекает первые 10 результатов; // db.<имя_коллекции>.find().limit(10); // // Эта команда извлекает записи по id // db.<имя_коллекции>.find({"_id": ObjectId("someid")}); // // Эта команда извлекает значение из определенного атрибута коллекции с объектом и присвоенным значением 0 или 1. // db.<имя_коллекции>.find({"_id": ObjectId("someid")}, {field1: 1, field2: 1}); db.<имя_коллекции>.find({"_id": ObjectId("someid")}, {field1: 0}); // Исключаем поле1 // // Эта команда проверяет количество коллекций в базе данных // db.<имя_коллекции>.count();
|
Для административных команд
Эта команда позволяет получить информацию о деталях коллекции с общим размером, хранилищем и множественной статистикой.
// // Эта команда извлекает статистику коллекции // db.<имя_коллекции>.stats() db.printCollectionStats() // // // Эта команда извлекает статистику задержки для чтения и записи, а также определенное количество операций // db.<имя_коллекции>.latencyStats() // // Эта команда извлекает определенный размер коллекции для индексов и данных // db.<collectionName>.dataSize() // извлекает размер коллекции db.<collectionName>.storageSize() // извлекает общий размер сохраненного документа db.<collectionName>.totalSize() // извлекает общий размер в байтах как для данных коллекции, так и для индексов db.<collectionName>.totalIndexSize() // извлекает общий размер всех индексов в коллекции |
Для выхода из базы данных:
db.logout() |
Существуют различные типы команд, которые вы можете использовать в MongoDB, начиная с:
Пользовательские команды

Операции с базой данных
1. Пользовательские команды
Команды агрегации
Имя | Описание |
агрегат | Команда для выполнения задач агрегации в группе. |
считать | Команда для подсчета определенного количества документов. |
отчетливый | Команда для отображения отдельного значения для определенного ключа в коллекции. |
уменьшение карты | Команда для выполнения агрегирования задач map-reduce в больших наборах данных. |
Геопространственные команды
Имя | Описание |
геоПоиск | Команда, которая выполняет геопространственный запрос через функцию индекса стога сена MongoDB. |
Команды операций запроса и записи
Имя | Описание |
удалять | Команда для удаления одного или нескольких документов. |
найти | Команда для выбора одного или нескольких документов в представлении. |
вставлять | Команда для вставки одного или нескольких документов в представление. |
Обновить | Команда для обновления одного или нескольких документов. |
Команды кэширования плана запроса
Имя | Описание |
планКэшОчистить | Команда для удаления кэшированных планов запросов из коллекции. |
планКэшОчиститьФильтры | Команда, очищающая индексные фильтры из коллекции. |
планCacheListFilters | Команда, которая выводит список фильтров индекса из коллекции. |
планCacheSetFilter | Команда, устанавливающая индексный фильтр из коллекции. |
2. Операции с базой данных
Проблемы аутентификации
Имя | Описание |
аутентифицировать | Команда, запускающая аутентифицированный сеанс после проверки имени пользователя и пароля. |
getnonce | Команда для генерации одноразового пароля для аутентификации. |
выйти | Команда для завершения данного аутентифицированного сеанса. |
Команды управления пользователями
Имя | Описание |
Создать пользователя | Команда для создания нового пользователя. |
dropUser | Команда для удаления определенного пользователя. |
updateUser | Команда для обновления определенных пользовательских данных. |
информация о пользователях | Команда для получения информации от определенного одного или нескольких пользователей. |
Команды управления ролями
Имя | Описание |
создать роль | Команда для создания определенной роли пользователя и привилегий. |
dropRole | Команда для удаления определенной определяемой пользователем роли из базы данных. |
updateRole | Команда, которая обновляет определенную определяемую пользователем роль. |
Команды репликации
Имя | Описание |
применитьOps | Команда, которая добавляет записи oplog с текущим набором данных. |
исмастер | Команда, которая отображает информацию для конкретного пользователя в текущем наборе реплик, чтобы проверить, является ли он мастером или нет. |
replSetInitiate | Команда, которая инициализирует конкретный новый набор реплик. |
Команды шардинга
Имя | Описание |
addShard | Команда, которая добавляет новый сегмент или сегментированный кластер. |
список осколков | Команда, которая возвращает список предварительно настроенных шардов. |
удалитьОсколок | Команда, удаляющая определенный сегмент из кластера. |
Команды сеанса
Имя | Описание |
прервать транзакцию | Команда для отмены транзакции. |
endSessions | Команда для завершения сеансов до истечения времени ожидания. |
killAllSessions | Команда для уничтожения всех сессий |
обновить сеансы | Команда для обновления простаивающих сессий. |
startSession | Команда для запуска нового сеанса. |
Административные команды
Имя | Описание |
чистый | Команда, представляющая внутреннее пространство имен. |
Создайте | Команда для создания коллекции или определенного представления. |
уронить | Команда для удаления определенной коллекции из текущей базы данных. |
переиндексировать | Команда, которая перестраивает все индексы для определенной коллекции. |
неисправность | Команда для закрытия процесса mongos или mongod. |
Бесплатные команды мониторинга
Имя | Описание |
setFreeМониторинг | Это позволяет пользователям включать или отключать бесплатный мониторинг во время выполнения. |
Команды аудита

Имя | Описание |
logApplicationMessage | Команды добавляют или публикуют настроенное сообщение с текущим журналом аудита. |
Ответы команды
При каждом выполнении команды MongoDB получает ответ с определенным полем:
Поле | Описание |
Ok | Индикация того, что команда была выполнена успешно (1) или неудачно (0). |
время операции | Это представляет конкретное время для выполнения операций в MongoDB с отметкой времени из записи оплога. В случае, если операция не работает, она не создает никакой записи оплога. Затем время операции возвращается; локальный: из самой последней записи через oplog. А для большинства и линеаризуемых чтений — временная метка недавней записи, подтвержденной большинством, через oplog. |
$кластертиме | Это определяет логическое время для заказа конкретной операции. |
Оформление заказа: операции CRUD в MongoDB
Что дальше?
Если вам интересно узнать больше о больших данных, ознакомьтесь с нашей программой PG Diploma в области разработки программного обеспечения со специализацией в области больших данных, которая предназначена для работающих профессионалов и включает более 7 тематических исследований и проектов, охватывает 14 языков и инструментов программирования, практические занятия. семинары, более 400 часов интенсивного обучения и помощь в трудоустройстве в ведущих фирмах.
Изучайте онлайн-курсы по разработке программного обеспечения в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.
