Как установить mongodb linux

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

Реляционные базы данных обычно используются для данных, которым важна сохранность и максимальная надёжность. Объектно-ориентированные базы данных более быстрые, но менее надёжные и часто используются для хранения различных событий и статистических данных. В этой инструкции я расскажу, как выполняется установка MongoDB Ubuntu 20.04.

Установка MongoDB

1. Установка из репозитория дистрибутива

В современных дистрибутивах утилита добавлена в официальный репозиторий современных версий Ubuntu. Для её установки достаточно выполнить:

sudo apt install mongodb-server

Как установить mongodb linux. Snimok ekrana ot 2020 04 14 13 27 16. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 14 13 27 16. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 14 13 27 16.

Затем можно посмотреть состояние службы:

sudo systemctl status mongod

Как установить mongodb linux. Snimok ekrana ot 2020 04 14 13 36 21. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 14 13 36 21. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 14 13 36 21.

И добавить её в автозагрузку, если это необходимо:

sudo systemctl enable mongod

Работать с базой данных можно через клиент командной строки Mongo. Например, давайте посмотрим версию базы данных:

Как установить mongodb linux. Snimok ekrana ot 2020 04 14 12 07 56. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 14 12 07 56. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 14 12 07 56.

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

1. Установка из репозитория разработчиков

Если вы хотите получить самую свежую версию программы, то необходимо устанавливать её из репозитория разработчиков MongoDB. Прежде чем устанавливать эту версию, надо удалить версию из официальных репозиториев, если она была установлена:

sudo apt purge mongodb*

Далее нужно интегрировать публичный ключ, чтобы система приняла пакет, для этого наберите в терминале:

С помощью следующей команды создаём список файлов пакета:

echo «deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse» | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list

Обновим базу данных локальных пакетов:

И можно переходить к установке:

Далее надо запустить сервис mongod и добавить его в автозагрузку:

sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod

Далее смотрим версию:

Как установить mongodb linux. Snimok ekrana ot 2020 04 14 13 36 36. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 14 13 36 36. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 14 13 36 36.

Настройка MongoDB

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

Переключитесь в базу данных admin и создайте нового пользователя:

Как установить mongodb linux. Snimok ekrana ot 2020 04 17 13 28 05. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 17 13 28 05. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 17 13 28 05.

Здесь мы задаём имя пользователя Admin и разрешаем ему доступ ко всем базам данных. После нажатия Enter программа запросит пароль для нового пользователя. Введите пароль и всё будет готово.

Далее откройте конфигурационный файл /etc/mongod.conf и добавьте туда такие строчки:

sudo vi /etc/mongod.conf

security:
authorization: enabled

Как установить mongodb linux. Snimok ekrana ot 2020 04 17 13 06 51. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 17 13 06 51. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 17 13 06 51.

Затем перезапустите MongoDB:

sudo systemctl restart mongod

После этого вы все ещё сможете подключится к MongoDB с помощью клиента Mongo, но чтобы выполнить какие-либо действия, вам понадобится авторизация. Например, вы не сможете посмотреть список баз данных, создать пользователя или получить данные из базы. Например, команда show databases вернёт пустой результат:

Как установить mongodb linux. Snimok ekrana ot 2020 04 17 13 29 30. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 17 13 29 30. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 17 13 29 30.

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

Как установить mongodb linux. Snimok ekrana ot 2020 04 17 13 32 05. Как установить mongodb linux фото. Как установить mongodb linux-Snimok ekrana ot 2020 04 17 13 32 05. картинка Как установить mongodb linux. картинка Snimok ekrana ot 2020 04 17 13 32 05.

Удаление MongoDB

Чтобы удалить MongoDB с компьютера, наберите:

sudo apt purge mongodb-org*

Или если вы устанавливали программу из официальных репозиториев, используйте:

sudo apt purge mongodb*

Теперь вы знаете, как установить MongoDB Ubuntu 18.04 на ваш компьютер, а также как проверить, какая версия у вас установлена, и работает ли вообще эта база данных.

Источник

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

Published on September 11, 2020

Предыдущая версия данного руководства была написана Мелиссой Андерсон.

Введение

MongoDB (или Mongo) — это документоориентированная база данных с открытым исходным кодом, используемая во многих современных веб-приложениях. Она относится к базам данных типа NoSQL, поскольку не опирается на традиционную табличную структуру реляционных баз данных.

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

Предварительные требования

Для данного обучающего модуля вам потребуется следующее:

Шаг 1 — Установка MongoDB

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

Эта команда возвращает ключ MongoDB в выводе:

Эта единственная строка указывает APT все, что необходимо знать об источнике, и где его найти:

После запуска этой команды обновите локальный индекс пакетов вашего сервера, чтобы APT знал, где найти пакет mongodb-org :

После этого вы можете установить MongoDB:

После завершения выполнения команды MongoDB будет установлена на вашей системе. Однако она еще не готова к использованию. На следующем шаге мы запустим MongoDB и убедимся, что она работает корректно.

Шаг 2 — Начало работы службы MongoDB и тестирование базы данных

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

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

Теперь вы можете убедиться, что база данных работает, подключившись к серверу базы данных и выполнив диагностическую команду. Следующая команда подключает к базе данных и выводит текущую версию, адрес сервера и порт. Также она выводит результат внутренней команды MongoDB connectionStatus :

connectionStatus проверяет и возвращает статус подключения базы данных. Значение 1 поля ok в ответе означает, что сервер работает нормально:

Шаг 3 — Управление службой MongoDB

Как уже упоминалось ранее, команда systemctl status проверяет статус службы MongoDB:

Вы можете остановить работу службы в любое время с помощью следующей команды:

Чтобы запустить службу после остановки, введите команду:

Также вы можете перезапустить сервер, когда он уже работает:

На шаге 2 вы установили активацию MongoDB автоматически при загрузке сервера. Если вы хотите отключить автоматический запуск, введите:

Для повторной установки активации при загрузке запустите команду enable снова:

Заключение

В качестве непосредственного следующего шага мы настоятельно рекомендуем вам усилить защиту системы MongoDB с помощью нашего руководства Обеспечение безопасности MongoDB в Ubuntu 20.04. После того как вы обеспечили безопасность системы, вы можете настраивать MongoDB для удаленного подключения.

Больше обучающих модулей по настройке и использованию MongoDB можно найти в этих статьях сообщества DigitalOcean. Также мы рекомендуем вам ознакомиться с официальной документацией MongoDB, так как это большой ресурс, описывающий все возможности MongoDB.

Источник

Install MongoDB Community Edition on UbuntuВ¶

MongoDB Atlas is a hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier to get started.

OverviewВ¶

Use this tutorial to install MongoDB 4.4 Community Edition on LTS (long-term support) releases of Ubuntu Linux using the apt package manager.

MongoDB VersionВ¶

ConsiderationsВ¶

Platform SupportВ¶

MongoDB 4.4 Community Edition supports the following 64-bit Ubuntu LTS (long-term support) releases on x86_64 architecture:

MongoDB only supports the 64-bit versions of these platforms.

MongoDB 4.4 Community Edition on Ubuntu also supports the ARM64 and s390x architectures on select platforms.

See Supported Platforms for more information.

MongoDB does not support the Windows Subsystem for Linux (WSL).

Production NotesВ¶

Before deploying MongoDB in a production environment, consider the Production Notes document which offers performance considerations and configuration recommendations for production MongoDB deployments.

Official MongoDB PackagesВ¶

To install MongoDB Community on your Ubuntu system, these instructions will use the official mongodb-org package, which is maintained and supported by MongoDB Inc. The official mongodb-org package always contains the latest version of MongoDB, and is available from its own dedicated repo.

The mongodb package provided by Ubuntu is not maintained by MongoDB Inc. and conflicts with the official mongodb-org package. If you have already installed the mongodb package on your Ubuntu system, you must first uninstall the mongodb package before proceeding with these instructions.

See MongoDB Community Edition Packages for the complete list of official packages.

Install MongoDB Community EditionВ¶

Follow these steps to install MongoDB Community Edition using the apt package manager.

Import the public key used by the package management system.В¶

From a terminal, issue the following command to import the MongoDB public GPG Key from https://www.mongodb.org/static/pgp/server-4.4.asc:

However, if you receive an error indicating that gnupg is not installed, you can:

Install gnupg and its required libraries using the following command:

Once installed, retry importing the key:

Create a list file for MongoDB.В¶

Create the list file /etc/apt/sources.list.d/mongodb-org-4.4.list for your version of Ubuntu.

Reload local package database.В¶

Issue the following command to reload the local package database:

Install the MongoDB packages.В¶

You can install either the latest stable version of MongoDB or a specific version of MongoDB.

Optional. Although you can specify any available version of MongoDB, apt-get will upgrade the packages when a newer version becomes available. To prevent unintended upgrades, you can pin the package at the currently installed version:

For help with troubleshooting errors encountered while installing MongoDB on Ubuntu, see our troubleshooting guide.

Run MongoDB Community EditionВ¶

If you installed via the package manager, the data directory /var/lib/mongodb and the log directory /var/log/mongodb are created during the installation.

By default, MongoDB runs using the mongodb user account. If you change the user that runs the MongoDB process, you must also modify the permission to the data and log directories to give this user access to these directories.

Configuration File The official MongoDB package includes a configuration file ( /etc/mongod.conf ). These settings (such as the data directory and log directory specifications) take effect upon startup. That is, if you change the configuration file while the MongoDB instance is running, you must restart the instance for the changes to take effect.

ProcedureВ¶

Init System

To run and manage your mongod process, you will be using your operating system’s built-in init system. Recent versions of Linux tend to use systemd (which uses the systemctl command), while older versions of Linux tend to use System V init (which uses the service command).

If you are unsure which init system your platform uses, run the following command:

Then select the appropriate tab below based on the result:

Uninstall MongoDB Community EditionВ¶

To completely remove MongoDB from a system, you must remove the MongoDB applications themselves, the configuration files, and any directories containing data and logs. The following section guides you through the necessary steps.

This process will completely remove MongoDB, its configuration, and all databases. This process is not reversible, so ensure that all of your configuration and data is backed up before proceeding.

Stop MongoDB.В¶

Stop the mongod process by issuing the following command:

Источник

Install MongoDB Community Edition on UbuntuВ¶

MongoDB Atlas is a hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier to get started.

OverviewВ¶

Use this tutorial to install MongoDB 5.0 Community Edition on LTS (long-term support) releases of Ubuntu Linux using the apt package manager.

MongoDB VersionВ¶

ConsiderationsВ¶

Platform SupportВ¶

MongoDB 5.0 Community Edition supports the following 64-bit Ubuntu LTS (long-term support) releases on x86_64 architecture:

MongoDB only supports the 64-bit versions of these platforms.

MongoDB 5.0 Community Edition on Ubuntu also supports the ARM64 architecture on select platforms.

See Supported Platforms for more information.

To run MongoDB in Windows Subsystem for Linux (WSL), refer to the WSL documentation.

Production NotesВ¶

Before deploying MongoDB in a production environment, consider the Production Notes document which offers performance considerations and configuration recommendations for production MongoDB deployments.

Official MongoDB PackagesВ¶

To install MongoDB Community on your Ubuntu system, these instructions will use the official mongodb-org package, which is maintained and supported by MongoDB Inc. The official mongodb-org package always contains the latest version of MongoDB, and is available from its own dedicated repo.

The mongodb package provided by Ubuntu is not maintained by MongoDB Inc. and conflicts with the official mongodb-org package. If you have already installed the mongodb package on your Ubuntu system, you must first uninstall the mongodb package before proceeding with these instructions.

See MongoDB Community Edition Packages for the complete list of official packages.

Install MongoDB Community EditionВ¶

Follow these steps to install MongoDB Community Edition using the apt package manager.

Import the public key used by the package management system.В¶

From a terminal, issue the following command to import the MongoDB public GPG Key from https://www.mongodb.org/static/pgp/server-5.0.asc:

However, if you receive an error indicating that gnupg is not installed, you can:

Install gnupg and its required libraries using the following command:

Once installed, retry importing the key:

Create a list file for MongoDB.В¶

Create the list file /etc/apt/sources.list.d/mongodb-org-5.0.list for your version of Ubuntu.

Reload local package database.В¶

Issue the following command to reload the local package database:

Install the MongoDB packages.В¶

You can install either the latest stable version of MongoDB or a specific version of MongoDB.

Optional. Although you can specify any available version of MongoDB, apt-get will upgrade the packages when a newer version becomes available. To prevent unintended upgrades, you can pin the package at the currently installed version:

For help with troubleshooting errors encountered while installing MongoDB on Ubuntu, see our troubleshooting guide.

Run MongoDB Community EditionВ¶

If you installed via the package manager, the data directory /var/lib/mongodb and the log directory /var/log/mongodb are created during the installation.

By default, MongoDB runs using the mongodb user account. If you change the user that runs the MongoDB process, you must also modify the permission to the data and log directories to give this user access to these directories.

Configuration File The official MongoDB package includes a configuration file ( /etc/mongod.conf ). These settings (such as the data directory and log directory specifications) take effect upon startup. That is, if you change the configuration file while the MongoDB instance is running, you must restart the instance for the changes to take effect.

ProcedureВ¶

Init System

To run and manage your mongod process, you will be using your operating system’s built-in init system. Recent versions of Linux tend to use systemd (which uses the systemctl command), while older versions of Linux tend to use System V init (which uses the service command).

If you are unsure which init system your platform uses, run the following command:

Then select the appropriate tab below based on the result:

Uninstall MongoDB Community EditionВ¶

To completely remove MongoDB from a system, you must remove the MongoDB applications themselves, the configuration files, and any directories containing data and logs. The following section guides you through the necessary steps.

This process will completely remove MongoDB, its configuration, and all databases. This process is not reversible, so ensure that all of your configuration and data is backed up before proceeding.

Stop MongoDB.В¶

Stop the mongod process by issuing the following command:

Источник

Установка и подключение к MongoDB

В данной инструкции мы рассмотрим процесс установки MongoDB на Linux Ubuntu (Debian). Также будут приведены примеры настройки подключения по сети, защита соединения с помощью шифрования и аутентификации.

Установка

На странице MongoDB Community Downloads смотрим стабильные версии программного продукта. На момент обновления инструкции это была 4.4.

Обратите внимание, установка MongoDB возможна на большое число популярных операционных систем — Amazon, Debian, Ubuntu, macOS, CentOS, Red Hat, Windows и другие.

Переходим на страницу загрузки ключей для проверки подлинности репозитория. Копируем ссылку для версии MongoDB, которую мы планируем установить:

Как установить mongodb linux. 01. Как установить mongodb linux фото. Как установить mongodb linux-01. картинка Как установить mongodb linux. картинка 01.

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

С помощью скопированной ссылки скачиваем и устанавливаем ключ:

Создаем файл для настройки репозитория Ubuntu:

deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse

* focal — название релиза Ubuntu. В данном примере, версия 20.04. На данный момент возможны варианты:

Обновляем список пакетов:

apt-get install mongodb-org

Стартуем сервис и разрешаем его автозапуск:

systemctl start mongod

systemctl enable mongod

Для подключения к СУБД вводим команду:

Можно для проверки ввести команду, которая покажет созданные базы данных:

После первой установки мы должны увидеть следующее:

admin 0.000GB
config 0.000GB
local 0.000GB

В качестве примера работы мы можем попробовать создать новую базу данных и коллекцию. Объекты в MongoDB создаются автоматически при первом к ним обращении.

Для создания базы просто обращается к ней:

* в данном примере будут создана база newDB.

Для создания коллекции, выполняем команду на вставку данных:

Выходим из оболочки SQL:

Доступ по сети

По умолчанию к установленной базе можно подключиться только с локального компьютера. Рассмотрим процесс настройки сетевого доступа.

Для начала, откроем порт в брандмауэре:

* по умолчанию, MongoDB работает на TCP-порту 27017.

В системах на базе Ubuntu и Debian брандмауэр работает по принципу разрешения. Если мы не меняли данной настройки, то нам не обязательно создавать разрешающее правило для Mongo.

Открываем конфигурационный файл СУБД:

Находим директиву net и в ней опцию bindIp — добавляем IP-адрес, на котором наш сервер должен принимать запросы для MongoDB:

net:
port: 27017
bindIp: 127.0.0.1, 192.168.1.15

* в нашем примере мы добавили к 127.0.0.1 адрес 192.168.1.15 — это сетевой адрес нашего сервера, на котором он должен принимать запросы.

Перезапускаем сервис mongod:

systemctl restart mongod

Чтобы проверить подключение, на другом компьютере должен быть установлен клиент для подключения к Mongo. Процесс его установки схож с установкой сервера. Рассмотрим пример для Ubuntu.

Устанавливаем ключ для репозитория:

deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse

* как в случае с сервером, focal — название релиза Ubuntu. В данном примере, версия 20.04. Другие варианты: bionic: 18.04, xenial: 16.04.

Обновляем список пакетов:

Устанавливаем клиентскую часть:

apt-get install mongodb-org-shell

Теперь можно подключиться к нашему серверу:

* в данном примере мы подключаемся к серверу MongoDB 192.168.1.15.

Также мы можем использовать MongoDB Compass — это приложение под Windows, Linux и macOS для работы с базой Mongo в графическом интерфейсе. Скачать его можно на странице официального сайта.

Аутентификация

По умолчанию, мы можем подключиться к СУБД без авторизации. Если нам необходимо повысить безопасность работы с базой, можно требовать ввода логина и пароля.

Заходим в командную оболочку Mongo:

Подключаемся к базе admin:

Создаем пользователя, под которым будем авторизовываться:

* в данном примере мы создадим пользователя с правами доступа на все базы. Логин root, пароль будет запрошен после ввода.

Придумываем и вводим пароль

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

Successfully added user: <
«user» : «root»,
«roles» : [
<
«role» : «userAdminAnyDatabase»,
«db» : «admin»
>,
«readWriteAnyDatabase»
]
>

Выходим из командной оболочки:

Открываем конфигурационный файл:

Находим директиву security и задаем параметр authorization:

security:
authorization: enabled

Перезапускаем сервис mongod:

systemctl restart mongod

Теперь пробуем подключиться к mongo. Мы можем авторизоваться несколькими способами.

а) Авторизация при подключении:

* в данном примере мы подключимся к базе под пользователем root. Пароль будет запрошен системой после ввода команды.

б) Авторизация после подключения:

Теперь усилим безопасность, зашифровав передачу данных. Для этого нам понадобиться сертификат. В нашем примере, мы будем использовать самоподписанный сертификат, но в продуктивной среде, лучше его купить или запросить у Let’s Encrypt.

Создаем каталог, в котором разместим наши сертификаты:

Сгенерируем самоподписанный сертификат:

Выставим в качестве владельца на файлы сертификата пользователя mongodb:

chown mongodb:mongodb /etc/ssl/mongodb/cert.pem

Открываем конфигурационный файл СУБД:

В директиву net дописываем опции TLS:

net:
.
tls:
mode: requireTLS
certificateKeyFile: /etc/ssl/mongodb/cert.pem

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

Перезапускаем сервис mongod:

systemctl restart mongod

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

* в данном примере мы указываем при подключении использовать шифрование с использованием TLS. Опция tlsAllowInvalidCertificates говорит, что клиент должен принять неправильный сертификат (так как у нас он самоподписанный).

Так как у нас еще настроена аутентификация, для подключения введем такую команду:

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

Примеры подключения из языков программирования

Рассмотрим небольшие примеры для подключения к MongoDB из языков программирования PHP и Python.

Для возможности работы PHP с Mongo необходимо установить соответствующее расширение. Выполняем пошагово следующие действия:

apt-get install php-pear php-dev

pecl channel-update pecl.php.net

pecl install mongodb

Для каждого возможного варианта использования PHP необходимо создать отдельный конфигурационной файл. В данном примере, под php 7.4 для cli, php-fpm, apache.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *