Search

Romua1d.ru
Обучение (курсы)

10 самых используемых комманд в MongoDB

В этой статье перечислены десять наиболее часто используемых команд для новичков MongoDB. Пожалуйста, не стесняйтесь комментировать и делать предложения, если я не упоминал о каких-либо важных моментах!

1. Вход в MongoDB

Следующая команда используется для входа в базу данных MongoDB. Убедитесь, что пользователь с учетными данными, такими как имя пользователя и пароль, существует в базе данных, указанной вместо dbname .

mongo -u <username> -p <password> --authenticationDatabase <dbname> 

2. Показать все базы данных

После входа в систему,  с ролью userAdmin или userAdminAnyDatabase пользователь может видеть все базы данных с помощью команды, такой как:

show dbs

3. Выбор базы данных для работы

Чтобы начать работу с конкретной базой данных, нужно выполнить следующую команду:

use databaseName

4. Аутентификация и выход из базы данных

При переключении на другую базу данных с use dbName команды use dbName пользователю требуется аутентификация с использованием текущего пользователя базы данных для этой базы данных. Для аутентификации можно использовать следующую команду:

//
// Авторизация
//
db.auth("username", "password");
//
// Выход
//
db.logout()
к содержанию ↑

5. Список списков, пользователей, роли и т. д.

Следующие команды могут использоваться для проверки существующих коллекций, пользователей и т. д

/
// Список коллекций текущей базы
//
show collections;
db.getCollectionNames();
//
// Список юзеров текущей базы
//
show users;
db.getUsers();
//
// Список всех ролей базы
//
show roles

6. Создание коллекции.

Для создания коллекции можно использовать следующую команду. Подробности этой команды можно найти на этой странице .

db.createCollection("collectionName");

7. Вставка документа в коллекцию

После создания коллекции следующий шаг — вставить один или несколько документов. Ниже приведен пример команды для вставки документа в коллекцию.

//
// Вставка одного документа
//
db.<collectionName>.insert({field1: "value", field2: "value"})
//
// Вставка нескольких документов
//
db.<collectionName>.insert([{field1: "value1"}, {field1: "value2"}])
db.<collectionName>.insertMany([{field1: "value1"}, {field1: "value2"}])
к содержанию ↑

8. Сохранить или обновить документ.

Команда save может использоваться для обновления существующего документа или вставки нового, в зависимости от параметра документа, переданного ему. Если _id совпадает с существующим документом, документ обновляется. В противном случае создается новый документ. Внутри метод saveиспользует либо команду insert либо команду update .

//
// Если находит _id, то обновляет, в противном случае - создает документ
//
db.<collectionName>.save({"_id": new ObjectId("jhgsdjhgdsf"), field1: "value", field2: "value"});
к содержанию ↑

9. Отображение записей коллекции

Следующие команды могут использоваться для извлечения записей коллекции:

//
// Показать все записи
//
db.<collectionName>.find();
//
// Показать 10 последних записей
//
db.<collectionName>.find().limit(10);
//
// Поиск записи по определенному _id
//
db.<collectionName>.find({"_id": ObjectId("someid")});
//
// Получить значения конкретных атрибутов коллекции, передав объект, имеющий
// имена атрибутов, назначенные 1 или 0, в зависимости от того, требуется ли это значение атрибута
// для включения в вывод или нет, соответственно
//
db.<collectionName>.find({"_id": ObjectId("someid")}, {field1: 1, field2: 1});
db.<collectionName>.find({"_id": ObjectId("someid")}, {field1: 0}); // Exclude field1
//
// Подсчет записей
//
db.<collectionName>.count();
к содержанию ↑

10. Административные команды

Ниже перечислены некоторые административные команды, которые могут быть полезны при поиске сведений, таких как размер хранилища, общий размер и общая статистика.

//
// Получить статистику коллекций
//
db.<collectionName>.stats()
db.printCollectionStats()
//
// С татистика задержек для операций чтения, записи, включая среднее время, затраченное на чтение, запись
// и связанное с ним количество выполненных операций
//
db.<collectionName>.latencyStats()
//
// Получить размер коллекции для данных и индексов
//
db.<collectionName>.dataSize() // Размер коллекциии
db.<collectionName>.storageSize() // Общий вес коллекции на диске
db.<collectionName>.totalSize() // Общий размер в байтах как для данных сбора, так и для индексов
db.<collectionName>.totalIndexSize() // Общий размер всех индексов в коллекции
<div>
 <div class="content-html">
  <p><span class="notranslate">Вот и все!</span> <span class="notranslate">Эти команды окажут большую помощь всем, кто только начинает работать с MongoDB.</span></p>
 </div>
</div>
Плагин рейтинга создан автором этого блога. Буду очень признателен, если вы сможете его поддержать (ссылка)
Рекомендую:
  • Косметология / Гальванотерапия / Уход за лицом: spalotus.me

p.s. Если статья была полезной и вас переполняет чувство благодарности, можете поддержать меня долларом на патреоне

Romuald Shmidtelson

Web Developer. I have expirience in FrontEnd, Backend, Devops. PHP, Python, Javascript (Vue.js, React.js)

Недавние Посты

Как получить первый заказ на фрилансе

Получение первого заказа на фрилансе может быть вызовом, особенно для новичков, которые еще не имеют…

1 год назад

Топ 7 css фреймворков 2021 года

Разработка сайтов и веб-приложений стала в наше время неизбежной потребностью. Тем не менее, существует несколько способов…

2 года назад

Что такое семантическое ядро и как его использовать для продвижения сайта?

Компании и специалисты по маркетингу тратят много времени и денег на изучение языка поисковых систем,…

2 года назад

Что такое адаптивные изображения? Как правильно использовать srcset.

Адаптивные изображения - это набор методов, используемых для загрузки правильного изображения в зависимости от разрешения…

2 года назад

Что такое Политика конфиденциальности для сайта и для чего она нужна?

Политика конфиденциальности - это документ, в котором подробно описывается, как компания или организация обрабатывает любую…

3 года назад

Кто такой вебмастер?

В современном мире много специалистов занятых поддержанием работы сайтов, и довольно часто многих из них…

3 года назад