MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да инсталирате MongoDB на Ubuntu 18.04

MongoDB е модерна система за управление на база данни с документи с отворен код, предназначена за постоянство на данни с висока производителност, висока наличност, както и автоматично мащабиране, базирана на най-съвременната технология на NoSQL . Под MongoDB , записът е документ, който е структура от данни, която се състои от двойки полета и стойности (документите MongoDB са сравними с JSON обекти).

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

В тази статия ще обясним как да инсталирате MongoDB , управлява услугата му и настройва основното удостоверяване на Ubuntu 18.04 .

Важно :Трябва да отбележите, че разработчиците на MongoDB предлагат само пакети за 64-битов LTS (дългосрочна поддръжка) Издания на Ubuntu като 14.04 LTS (доверен),16.04 LTS (xenial) и т.н.

Стъпка 1:Инсталиране на MongoDB на Ubuntu 18.04

1. Официалните хранилища на софтуерни пакети на Ubuntu идват с най-новата версия на MongoDB , и може лесно да се инсталира с помощта на мениджъра на пакети APT.

Първо актуализирайте кеша на системния софтуерен пакет, за да имате най-новата версия на списъците на хранилището.

$ sudo apt update

2. След това инсталирайте пакета MongoDB, който включва няколко други пакета като mongo-tools ,mongodb-клиенти , mongodb-сървър и mongodb-server-core .

$ sudo apt install mongodb

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

$ sudo systemctl status mongodb

Стъпка 2:Управление на услугата MongoDB

4. MongoDB инсталацията идва като услуга на systemd и може лесно да се управлява чрез стандартни команди на systemd, както е показано.

За да спрете да изпълнявате услугата MongoDB, изпълнете следната команда.

$ sudo systemctl stop mongodb	

За да стартирате услуга MongoDB, въведете следната команда.

$ sudo systemctl start mongodb

За да рестартирате услуга MongoDB, въведете следната команда.

$ sudo systemctl restart mongodb	

За да деактивирате автоматично стартираната услуга MongoDB, въведете следната команда.

$ sudo systemctl disable mongodb	

За да активирате отново услугата MongoDB, въведете следната команда.

$ sudo systemctl enable mongodb	

Стъпка 3:Активирайте отдалечения достъп до MongoDB на защитната стена

5. По подразбиране MongoDB работи на порт 27017 , за да разрешите достъп отвсякъде, където можете да използвате.

$ sudo ufw allow 27017

Но активиране на достъп до MongoDB отвсякъде дава неограничен достъп до данните в базата данни. Така че е по-добре да дадете достъп до конкретно местоположение на IP адрес на порта на MongoDB по подразбиране, като използвате следната команда.

$ sudo ufw allow from your_server_IP/32 to any port 27017 
$ sudo ufw status

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

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

Запазете файла, излезте от редактора и рестартирайте MongoDB.

$ sudo systemctl restart mongodb

Стъпка 4:Създайте root потребител и парола на базата данни MongoDB

7. По подразбиране MongoDB идва с деактивирано удостоверяване на потребителя, поради което стартира без контрол на достъпа. За да стартирате обвивката mongo , изпълнете следната команда.

$ mongo 

8. След като сте се свързали с обвивката на mongo , можете да изброите всички налични бази данни със следната команда.

> show dbs

9. За да активирате контрола на достъпа във вашето внедряване на MongoDB, за да наложите удостоверяване; изискване на потребителите да се идентифицират всеки път, когато се свързват със сървъра на базата данни.

MongoDB използва Механизма за удостоверяване на отговор на Salted Challenge (SCRAM ) механизъм за удостоверяване по подразбиране. Използване на SCRAM , MongoDB проверява предоставените потребителски идентификационни данни спрямо името на потребителя, паролата и базата данни за удостоверяване (базата данни, в която е създаден потребителят, и заедно с името на потребителя служи за идентифициране на потребителя).

Трябва да създадете потребителски администратор (аналогично на root потребител под MySQL/MariaDB ) в администраторската база данни. Този потребител може да администрира потребители и роли, като например създаване на потребители, предоставяне или отмяна на роли от потребители и създаване или промяна на персонализирани роли.

Първо превключете към администратора база данни, след което създайте root потребител като използвате следните команди.

> use admin 
> db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})

Сега излезте от mongo shell, за да активирате удостоверяването, както е обяснено по-нататък.

10. mongodbът екземплярът е стартиран без --auth опция за команден ред. Трябва да активирате удостоверяването на потребителите, като редактирате /lib/systemd/system/mongod.service файл, първо отворете файла за редактиране по този начин.

$ sudo vim /lib/systemd/system/mongodb.service 

Под [Service] config, намерете параметъра ExecStart .

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

Променете го на следното:

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

Запазете файла и излезте от него.

11. 8. След като направите промени в конфигурационния файл, стартирайте „systemctl daemon-reload ‘, за да презаредите единици и да рестартирате услугата MongoDB и да проверите състоянието й, както следва.

$ systemctl daemon-reload
$ sudo systemctl restart mongodb	
$ sudo systemctl status mongodb	

12. Сега, когато се опитате да се свържете с mongodb , трябва да се удостоверите като потребител на MongoDB. Например:

$ mongo -u "root" -p --authenticationDatabase "admin"

Забележка :Не се препоръчва да въвеждате паролата си в командния ред, тъй като тя ще бъде съхранена във файла с история на обвивката и може да бъде видяна по-късно от нападател.

Това е всичко! MongoDB е модерна система за управление на база данни No-SQL с отворен код, която осигурява висока производителност, висока наличност и автоматично мащабиране.

В тази статия сме обяснили как да инсталирате и да започнете с MongoDB в Ubuntu 18.04 . Ако имате някакви въпроси, използвайте формуляра за коментари по-долу, за да се свържете с нас.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $anyElementTrue

  2. Драйверът на Mongodb C# връща само съвпадащи поддокументи в масива

  3. Разберете дали една заявка използва индекс в MongoDB

  4. MongoDB $weeklyUpdate #65 (15 април 2022 г.):GDELT, Mongoose и Hackathon Time!

  5. MongoDB група по стойности в поле на масив