Новости
Serverspace запустил обновленную партнерскую программу
Serverspace Black Friday
АМ
Александр Мельников
сентября 26, 2019
Обновлено августа 25, 2022

Установка MongoDB на Ubuntu 18.04

Ubuntu Базы данных

Описание процесса установки СУБД MongoDB и проверки подключения на виртуальных серверах Ubuntu 18.04.
В Serverspace вы можете создать сервер с уже установленным приложением MongoDB.

Что такое MongoDB?

MongoDB - это документо-ориентированная база данных с открытым исходным кодом, которая обеспечивает высокую производительность, высокую доступность и автоматическое масштабирование. MongoDB предоставляется бесплатно по лицензии General Public, а также по коммерческой лицензии от производителя.

Компания-производитель определила MongoDB как:

«MongoDB is a scalable, open source, high performance, document-oriented database.»

Преимущества MongoDB

  • прежде всего, СУБД  очень легко установить и настроить;
  • самой основной особенностью MongoDB является то, что это база данных без схемы. Поскольку MongoDB не содержит схемы, только ваш код определяет вашу схему.
  • возможность вывести модель данных на основе документов. Способ хранения данных в формате BSON (двоичный JSON), хэши ruby ​​и т.д. помогает хранить данные удобным образом, в то же время он способен хранить массивы и другие документы;
  • язык запросов документов, играет важную роль в поддержке динамических запросов;
  • легко масштабируется;
  • настройка производительности абсолютно проста по сравнению с любыми реляционными базами данных;
  • нет необходимости сопоставлять объекты приложения с объектами данных;
  • обеспечивает более быстрый доступ к данным благодаря своей природе использования внутренней памяти для хранения;
  • MongoDB также можно использовать в качестве файловой системы, которая помогает распределять нагрузку:
  • MongoDB поддерживает поиск по регулярным выражениям и полям;
  • MongoDB также может быть запущена как служба Windows;
  • доступно большое количество документации;
  • поддержка Sharding является одной из ключевых функций. Разделение - это процесс хранения данных на разных машинах и способность MongoDB обрабатывать данные по мере увеличения размера данных. Это приводит к горизонтальному масштабированию. С помощью шардинга можно записывать и считывать больший объем данных по мере увеличения объема данных.

Установка

Прежде чем начать устанавливать документо-ориентированную СУБД MongoDB, необходимо скачать и импортировать ключ GPG в операционную систему.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

После импорта ключа GPG добавьте репозиторий:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu
xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

Обновите локальную базу пакетов и установите MongoDB:

sudo apt-get update
sudo apt-get install mongodb

Запустите СУБД на виртуальном сервере:

sudo systemctl start mongodb

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

sudo systemctl enable mongodb

Проверьте статус запущенного сервиса:

sudo systemctl status mongodb

Если все установлено корректно, то в консоли отобразится подобное сообщение:

● mongodb.service - An object/document-oriented database
   Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-07-22 14:30:11 MSK; 36min ago
     Docs: man:mongod(1)
 Main PID: 31599 (mongod)
    Tasks: 23 (limit: 507
   CGroup: /system.slice/mongodb.service
           └─31599 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf
Jul 22 14:30:11 Ubuntu1804x64 systemd[1]: Started An object/document-oriented database.

По умолчанию сервис должен прослушивать порт 27017, чтобы это проверить выполните следующую команду:

ss -tunelp | grep 27017

Вы увидите следующий вывод:

tcp    LISTEN   0    128     127.0.0.1:27017        0.0.0.0:*
users:(("mongod",pid=31599,fd=11)) uid:112 ino:72894 sk:1 <->

Проверка подключения

Для тестового соединения с СУБД MongoDB можно выполнить команду:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Краткая информация по результату подключения в формате json:

MongoDB shell version v3.6.3
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.3
{
        "authInfo" :
                "authenticatedUsers" : [ ],
                "authenticatedUserRoles" : [ ]
        },
        "ok" : 1
}

Для подключения к субд используйте простую команду:

mongo

Ниже приведены простые примеры по работе с mongo.

Создание базы данных:

> use cloud_db
switched to db cloud_db

Показать текущую БД:

> db
cloud_db

Вставить данные:

> db.files.insert({"name":"serverspace"})
WriteResult({ "nInserted" : 1 })

Вывести все БД на сервере:

> show dbs
admin    0.000GB
config   0.000GB
local    0.000GB
сloud_db  0.000GB

Удалить текущую БД:

> db.dropDatabase()
{ "dropped" : "cloud_db", "ok" : 1 }

Команда выхода:

> exit
bye

Оценка:
4 из 5
Аverage rating : 4.5
Оценок: 2
050000 г. Алматы пр. Сейфуллина, д. 502
+7 (777) 555-36-66
ООО «ИТГЛОБАЛКОМ ЛАБС»