Semenalidery.com

IT Новости из мира ПК
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Установка mongodb linux

Руководство по MongoDB Linux

Устанавливаем MongoDB из стандартного репозитория

apt-get install mongodb

Данные mongodb по умолчанию будет хранить в каталоге /var/lib/mongodb
Логи — в каталоге — /var/log/mongodb

Заходим в mongo

Welcome to the MongoDB shell.
For interactive help, type «help».
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>

СУБД используем BSON — своеобразную интерпретацию JSON (JavaScript Object Notation)

Рассмотри примеры и убедимся в том, что синтаксис очень схож.

JSON:

<
«firstName»:»Andrey»,
«lastName»: «Ivanov»
«Age»: 25
>


JavaScript:

firstname = «Andrey»;
lastName = «Ivanov»;
Age = 25


BSON:

USER COLLECTION
<
_id:ObjectId(«7678sd6fsdfbhw367er3»),
«firstName»:»Andrey»,
«lastName»: «Ivanov»
«Age»: 25,
«projects:[«Project A», «Project B», «Project C»]»
«addresses»: [
<
street: «123 Lunacharskogo st»
city: «Yekaterinburg»,
state: «Sverdlovskaya oblast»
>,
<
street: «4568 Sadovaya st»
city: «Moscow»,
state: «Central region»
>
]
>,
<
_id:ObjectId(«7678s7826fsdfbhw367er3»),
«firstName»:»Nikolay»,
«lastName»: «Petrov»
«Age»: 54
>;

Таким образом, заметно основное отличие нереляционных БД. Определенные элементы могут иметь признаки, которых другие элементы той же таблицы не имеют. В MySQL потребовалось бы создавать ряды и колонки для адреса и проектов, в Монго это не требуется.

Выводим всех пользователей, существующих в документах — элементах БД

Создадим пользователя admin и пользователей с ограниченными правами

Переходим в каталог, в который установлен пакет

Заходим в консоль СУБД

Даем указание на необходимость использования базы

switched to db admin

И создаем пользователя с правами userAdminAnyDatabase

Добавляем другого пользователя

Просматриваем существующие базы

Инициализируем базу people (команда создает базу при первой к ней обращению, что аналогично CREATE DATABASE people в MySQL)

Добавляем пользователя с правами на чтение и запись

Successfully added user:

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

В следующей статье цикла рассматриваются понятия «документа» и «коллекции» в MongoDB

Contents

  • Русский
  • English
  • Español
  • Português

Share

Sign up for our newsletter.

Get the latest tutorials on SysAdmin and open source topics.

Write for DigitalOcean You get paid, we donate to tech non-profits.

DigitalOcean Meetups Find and meet other developers in your city.

Hacktoberfest Contribute to Open Source

Related

Как установить MongoDB в Ubuntu 16.04

Введение

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

На момент публикации данной статьи пакеты MongoDB из официальных репозиториев Ubuntu 16.04 ещё не были обновлены для использования новой системы инициализации systemd , которая включена по умолчанию в Ubuntu 16.04. Использование MongoDB, установленного с помощью этих пакетов, на новом сервере с Ubuntu 16.04 требует дополнительного для настройки MongoDB как сервиса systemd для автоматического запуска при старте сервера.

Перед установкой

Для того, чтобы следовать инструкциям, описанным в этой статье, вам необходим сервер с Ubuntu 16.04, настроенный согласно инструкциям в нашей статье о первичной настройке сервера, включая настройку не-рутового (non-root) пользователя.

Шаг 1 — Добавление репозитория MongoDB

MongoDB доступен из стандартных репозиториев Ubuntu, однако, для установки самых последних версий рекомендуется использовать официальный репозиторий MongoDB. На этом шаге мы добавим этот репозиторий на наш сервер.

Ubuntu проверяет подлинность пакетов путём проверки подписей GPG ключей, поэтому сначала нам необходимо импортировать ключ официального репозитория MongoDB.

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

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

Для этого выполните следующую команду:

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

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

Теперь мы можем установить пакеты MongoDB.

Эта команда установит несколько пакетов, содержащих последнюю стабильную версию MongoDB, а также некоторые средства настройки сервера MongoDB.

Для того, чтобы запускать MongoDB в виде сервиса Ubuntu 16.04, нам необходимо создать юнит-файл описывающий этот сервис. Юнит-файлы сообщают systemd , как управлять соответствующими ресурсами. Наиболее часто встречающимся типом юнит-файла является сервис, который указывает, как запускать и останавливать тот или иной сервис. Также этот файл указывает, надо ли запускать соответствующий сервис при старте системы, а также, имеет ли сервис зависимости от другого программного обеспечения.

Мы создадим юнит-файл для управления сервисом MongoDB. Создайте файл конфигурации mongodb.service в директории /etc/systemd/system с помощью nano или любого другого текстового редактора.

Вставьте следующий текст в этот файл, сохраните и закройте его.

Этот файл имеет простую структуру:

Секция Unit описание сервиса MongoDB, а также его зависимостей, которые должны быть удовлетворены до запуска сервиса. В нашем случае MongoDB требует наличия сетевого подключения для запуска, поэтому мы указали директиву network.target .

Секция Service описывает параметры запуска сервиса. Директива User указывает, что сервис будет запущен от имени пользователя mongodb , а директива ExecStart задаёт команду запуска сервера MongoDB.

Последняя секция Install сообщает systemd , когда необходимо автоматически запускать сервис. Параметр multi-user.target задаёт стандартную последовательность запуска, что означает, что сервер будет автоматически запущен в процессе загрузки.

Далее запустим только что созданный нами сервис с помощью systemctl .

Эта команда не выводит ничего в консоль после завершения. Мы можем использовать systemctl для проверки успешного запуска сервиса.

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

Теперь сервер MongoDB настроен и запущен, и вы можете управлять им с помощью команды systemctl (например, sudo systemctl mongodb stop , sudo systemctl mongodb start ).

Шаг 3 — Настройка файрвола (Опционально)

Если вы следовали инструкциям в нашей статье о первичной настройке сервера и настроили файрвол на вашем сервере, сервер MongoDB будет не доступен из Интернета.

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

Для разрешения доступа к MongoDB на порту по умолчанию 27017 откуда угодно, вы можете использовать команду sudo ufw allow 27017 . Тем не менее, разрешение удалённого доступа через Интернет к серверу MongoDB с настройками по умолчанию даёт полный доступ к серверу баз данных.

Чаще всего доступ к MongoDB должен осуществляться только из определённых приложений, находящихся на других заранее известных серверах. Для этого мы можем разрешить доступ к порту по умолчанию MongoDB с указанием IP адресов серверов, которым разрешено соединяться с MongoDB.

Вы можете проверить настройки файрвола ufw следующей командой.

В выводе вы должны видеть, что трафик разрешён для порта 27017 . Если вы решили разрешить трафик только с определённых IP адресов, эти IP адреса будут указаны вместо слова Anywhere.

Описание более продвинутых настроек файрвола можно найти в статье Настройка UFW: распространённые правила и команды файрвола.

Заключение

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

Как установить MongoDB на Ubuntu 16.04

В этой статье мы установим MongoDB на Ubuntu 16.04.

Требования:

  • Сервер на Ubuntu 16.04 – 64 бит
  • Пользователь root или не корневой пользователь sudo

Добавление официального репозитория MongoDB

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

Затем добавьте репозиторий MongoDB в /etc/apt/sources.list.d с помощью этой команды:

А затем выполните команду обновления, так Ubuntu может прочитать пакеты из добавляемого хранилища:

Установка MongoDB

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

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

Теперь нам нужно создать файл Systemd для MongoDB. Во-первых, давайте кратко объясним, какие файлы в Systemd. файлы Unit хранят информацию об услугах, сокетов, устройств, в основном, любой ресурс, управляемый Systemd, который является системой инициализации и используется большинством дистрибутивов Linux.

Создайте файл в каталоге /etc/systemd/system/ с использованием nano:

Вставьте следующий текст ниже:

Убедитесь в том, чтобы сохранить (нажмите Ctrl + O) и закрыть файл (нажмите Ctrl + X).
Теперь мы должны обновить Systemd и включить нашу вновь созданную службу и запустить службу:

Проверьте, что служба запущена:

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

Настройка MongoDB от имени администратора

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

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

Теперь давайте создадим имя администратора и установим пароль для пользователя:

Введите эту команду в оболочке для выхода из оболочки:

Включение проверки подлинности MongoDB

Откройте /lib/systemd/system/mongod.service с помощью nano или любого удобного вам редактора:

На линии ExecStart добавьте новый аргумент -auth, строка должна выглядеть следующим образом:

Убедитесь в том, чтобы сохранить (нажмите Ctrl + O) и закрыть файл (нажмите Ctrl + X).
Перезапустите Systemd, чтобы включить новую версию нашего измененного файла службы:

Затем перезапустите MongoDB, чтобы изменения вступили в силу:

Теперь подключитесь к оболочки MongoDB с помощью этой команды:

Вы получите запрос на ввод пароля, введите пароль, установленный выше.
После того, как вы внутри оболочки убедитесь, сделав проверку подлинности администратора, который мы создали, выполните эту команду:

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

Вот и все, вы успешно установили MongoDB на Ubuntu 16.04.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Как установить MongoDB на Ubuntu 18.04?

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

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

В этой статье мы расскажем, как установить MongoDB, управлять его сервисами и как установить базовую аутентификацию на Ubuntu 18.04.

Важно: вы должны помнить, что разработчики MongoDB предлагают только пакеты для 64-битных LTS выпусков Ubuntu, таких как 14.04 LTS (trusty), 16.04 LTS (xenial) и т.д.

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

1. Репозитории официального пакета программного обеспечения Ubuntu поставляются с последней версией MongoDB и могут быть легко установлены с помощью диспетчера пакетов APT.

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

2. Затем установите пакет MongoDB, который включает в себя несколько других пакетов, таких как mongo-tools, mongodb-clients, mongodb-server и mongodb-server-core.

3. После того, как вы установили его, служба MongoDB автоматически запустится через systemd, и процесс будет прослушивать порт 27017. Вы можете проверить его состояние, используя команду systemctl:

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

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

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

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

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

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

Чтобы снова включить службу MongoDB, введите следующую команду:

Шаг 3. Включите удаленный доступ к MongoDB на брандмауэре.

5. По умолчанию MongoDB работает на порте 27017, чтобы разрешить доступ извне, вы можете использовать:

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

6. По умолчанию порт 27017 прослушивает только локальный адрес 127.0.0.1. Чтобы разрешить удаленные соединения MongoDB, вам необходимо добавить IP-адрес своего сервера в файл конфигурации /etc/mongodb.conf, как показано ниже:

Сохраните файл, выйдите из редактора и перезапустите MongoDB.

Шаг 4: Создание root пользователя и пароля для базы данных MongoDB

7. По умолчанию MongoDB поставляется с отключенной аутентификацией пользователя, поэтому MongoDB запускается без контроля доступа. Чтобы запустить оболочку mongo, выполните следующую команду:

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

9. Чтобы включить контроль доступа для MongoDB мы включим аутентификацию; которая требует от пользователей идентифицировать себя каждый раз, когда они подключаются к серверу базы данных.

MongoDB по умолчанию использует механизм аутентификации проверки ответа на Salted Challenge Response (SCRAM). Используя SCRAM, MongoDB проверяет предоставленные учетные данные пользователя в отношении имени пользователя, пароля и базы данных аутентификации (база данных, в которой пользователь был создан, служит для идентификации пользователя).

Вам необходимо создать администратора пользователя (аналогичного пользователю root в MySQL/MariaDB) в базе данных администратора. Этот пользователь может управлять пользователями и ролями, такими как создание пользователей, предоставление или отмена ролей пользователей, а также создание или изменение прав доступа.

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

Теперь выйдите из оболочки mongo, чтобы включить аутентификацию, как описано ниже.

10. Экземпляр mongodb был запущен без опции —auth командной строки. Вам необходимо включить аутентификацию пользователей, отредактировав файл /lib/systemd/system/mongod.service, сначала откройте файл для редактирования:

В разделе конфигурации [Service] найдите параметр ExecStart.

Измените его содержание на следующее:

Сохраните файл и выйдите из него.

11. После внесения изменений в файл конфигурации запустите «systemctl daemon-reload», чтобы перезагрузить устройства и перезапустить службу MongoDB для проверки её состояния:

12. Теперь, когда вы пытаетесь подключиться к mongodb, вы должны аутентифицироваться как пользователь MongoDB. Например:

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

Вот и все! MongoDB — это система управления базами данных без использования SQL с открытым исходным кодом, которая обеспечивает высокую производительность, высокую доступность и автоматическое масштабирование.

В этой статье мы объяснили, как установить и начать работу с MongoDB в Ubuntu 18.04.

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Как установить MongoDB на Ubuntu 18.04

Введение

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

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

Требования

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Шаг 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 разрешены.

Читать еще:  Оптимизация и дефрагментация диска что это
Ссылка на основную публикацию
Adblock
detector