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

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

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

Установка MongoDB

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

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

sudo apt install mongodb-server

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

sudo systemctl status mongod

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

sudo systemctl enable mongod

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

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

Если вы собираетесь удалить 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 ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

Настройка MongoDB

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

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

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

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

sudo vi /etc/mongod.conf

security:
authorization: enabled

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

sudo systemctl restart mongod

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

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

Удаление MongoDB

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

sudo apt purge mongodb-org*

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

sudo apt purge mongodb*

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

Источник

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:

Источник

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

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

Установка

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

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

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

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

* в данном примере мы скопировали ссылку на ключ для версии 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.

Источник

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 на Ubuntu 18.04

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

MongoDB – это бесплатная СУБД с открытым исходным кодом. Это документоориентированная СУБД, реализованная при помощи подхода NoSQL. На июль 2018 года MongoDB входит в пятерку самых популярных СУБД (при этом остальные четыре СУБД – реляционные).

Преимущества использования MongoDB – это высокая скорость разработки, масштабируемость, использование гибкого языка для формирования запросов, эффективное хранение двоичных данных больших объемов.

Требования

Для того чтобы выполнить инструкции из этой статьи, у вас должен быть сервер с установленной на нем ОС Ubuntu 18.04, пользователем, который может выполнять команды sudo, и файрволом.

Как установить mongodb ubuntu. Смотреть фото Как установить mongodb ubuntu. Смотреть картинку Как установить mongodb ubuntu. Картинка про Как установить mongodb ubuntu. Фото Как установить mongodb ubuntu

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

Актуальную версию MongoDB можно установить из официальных репозиториев Ubuntu. Для этого можно использовать утилиту apt.

Сначала нужно обновить список пакетов:

А затем установить MongoDB:

Эта команда устанавливает несколько пакетов, а именно саму СУБД MongoDB и полезные инструменты для работы с сервером. Сервер базы данных автоматически начнет работать сразу после установки.

Теперь надо проверить, что сервер запущен и работает корректно.

Шаг 2: Проверка работы базы данных

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

Вывод на экране будет примерно вот таким:

То есть утилита systemctl (она используется для управления службами в Linux) показывает, что сервер MongoDB запущен и работает.

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

В выводе вы увидите версию текущей базы данных, адрес сервера и порт.

Единица в поле ОК говорит о том, что сервер работает корректно.

Теперь необходимо разобраться в том, как управлять сервером.

Шаг 3: Управление MongoDB

MongoDB устанавливается в качестве службы systemd, а значит, управлять СУБД можно при помощи стандартных команд system – точно так же, как и другими службами Ubuntu.

Команда для того, чтобы проверить статус службы:

Команда для остановки сервера:

Команда для запуска сервера после остановки:

Команда для того, чтобы перезапустить службу:

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

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

Теперь можно перейти к настройке фаервола.

Шаг 4: Настройка файрвола

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

Однако если вы хотите сделать возможным доступ через интернет, то вам нужно разрешить входящие соединения в ufw.

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

Но в этом случае доступ к базе данных получат абсолютно все пользователи, что небезопасно.

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

Проверить изменения в настройках файрвола можно командой:

В выводе вы увидите, что трафик по порту 27017 разрешен:

Несмотря на то, что порт открыт, сейчас MongoDB слушает только локальный адрес 127.0.0.1. Для того чтобы разрешить удаленные подключения, вам нужно добавить в файл mongod.conf публичный IP-адрес вашего сервера.

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

Добавьте IP-адрес сервера в строку bindIP:

Обязательно поставьте запятую между уже написанным IP-адресом и тем, который вы добавляете.

Сохраните и закройте файл, а затем перезапустите MongoDB:

Теперь удаленные подключения к MongoDB разрешены.

Источник

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

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