Как да инсталирам системата от бази данни MongoDB на Ubuntu?

MongoDB

В този блог говорихме за някои системи за бази данни, сред които най-популярни са MariaDB и MySQL, тъй като те са системите, които обикновено се включват в Xampp или Lampp. Този път ще говорим за друга система, която е MongoDB.

MongoDB е система за бази данни NoSQL, ориентирана към документ с отворен код, Това е модерна система за управление на база данни на документи, проектирана за високоефективно съхранение на данни, висока наличност, както и автоматично мащабиране, базирано на технологията на техниката NoSQL.

Вместо да запазва данни в таблици, както се прави в релационни бази данни, MongoDB записва структури от данни в документ, която представлява структура от данни, състояща се от двойки полета и стойност (документите MongoDB са сравними с JSON обектите).

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

Инсталиране на MongoDB на Ubuntu

За да инсталирате тази система от бази данни в нашата система, Трябва само да отворим терминал и да изпълним следната команда в него:

sudo apt install mongodb

Инсталацията завършена, Услугата MongoDB ще стартира автоматично чрез systemd и процесът ще се стартира на порт 27017. Можете да проверите състоянието му с помощта на командата:

sudo systemctl status mongodb

Ако не, можем да принудим старта с тази команда:

sudo systemctl start mongodb

Активиране на отдалечени връзки към MongoDB

Mongo DB 1

Системата за бази данни MongoDB по подразбиране използва порт 27017, който трябва да отворим За да приемем отдалечени връзки, ние го активираме само със следната команда.

sudo ufw allow 27017

По подразбиране порт 27017 може да бъде достъпен само от локалния адрес 127.0.0.1. За да позволите отдалечени връзки към MongoDB, е необходимо да добавите IP адреса на сървъра във файла /etc/mongodb.conf

Просто го редактирайте с:

sudo nano

И можем да видим нещо подобно на това:

bind_ip = 127.0.0.1, your_server_ip

#port = 27,017

Която редактираме с данните от нашия сървър.

Разрешавайки достъп до MongoDB отвсякъде, той дава неограничен достъп до данните в базата данни. Ето защо е по-добре да се даде достъп до специфичния за местоположението IP адрес по подразбиране на порта MongoDB.

sudo ufw allow from your_server_IP/32 to any port 27017

sudo ufw status

След като това е направено, достатъчно е да рестартирате услугата, така че новите промени да бъдат заредени в началото, това правим с:

sudo systemctl restart mongodb

Създайте потребител в MongoDB с парола

По подразбиране базата данни има доста лесен достъп, така че за да я подсилим, можем да създадем потребител с парола.

MongoDB използва механизма за удостоверяване SCRAM по подразбиране. Използването на SCRAM в системата проверява предоставените потребителски идентификационни данни спрямо потребителско име, парола и база данни за удостоверяване.

Просто стартирайте конзолата на базата данни със следната команда:

Mongo

Можем да направим списък на съществуващите бази данни с:

show dbs

Можем да създадем потребител, който ще ни позволи да управляваме потребители и функции като създаване на потребители, предоставяне или отмяна на потребителски роли и създаване или модифициране на митнически роли.

Просто напишете

use admin

И ние създаваме потребителя със следната команда, където заместваме името на потребителя "root" и паролата "парола", от crecenciales за достъп, които смятаме за подходящи.

db.createUser({user:"root", pwd:"password", roles:[{role:"root", db:"admin"}]})

След като това стане, трябва да активираме метода за удостоверяване за това ще редактираме следния файл:

sudo nano /lib/systemd/system/mongodb.service

И ние ще търсим следващия ред:

ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

И редактирайте така, че да е както следва:

ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Сега ние просто се рестартираме в базата данни

systemctl daemon-reload

sudo systemctl restart mongodb

sudo systemctl status mongodb              

Y Тестваме метода за удостоверяване с:

mongo -u "usuario" -p --authenticationDatabase "contraseña"

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Откриваем каза той

    Помогнете ми с тази ГРЕШКА.

    2021-03-24T21: 33: 16.233 + 0000 E ЗАПИТВАНЕ [thread1] Грешка: listDatabases не успя: {
    «Добре»: 0,
    "Errmsg": "не е упълномощен на администратора да изпълнява команда {listDatabases: 1.0, $ db: \" admin \ "}",
    "Код": 13,
    "CodeName": "Неразрешено"
    }:
    _getErrorWithCode@src/mongo/shell/utils.js: 25:13
    Mongo.prototype.getDBs@src/mongo/shell/mongo.js: 65: 1
    shellHelper.show@src/mongo/shell/utils.js: 816: 19
    shellHelper@src/mongo/shell/utils.js: 706: 15
    @ (shellhelp2): 1: 1