MongoDB в Linux. Установка и начало работы. Этап №1

MongoDB — одна из самых распространенных нереляционных систем управления базами данных, работает под Linux. В основе Mongo лежит «Документ», в то время как в основе самой распространенной реляционный СУБД MySQL лежат столбцы и колонки. Данный материал из нескольких частей представляет собой руководство по MongoDB Linux.

В рамках первой статьи рассматривается установка СУБД и простейшие действия по работе с элементами БД.

 

 

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

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

apt-get update

apt-get install mongodb

 

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

 

Стартуем сервис

/etc/init.d/mongodb start

 

Заходим в mongo

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 потребовалось бы создавать ряды и колонки для адреса и проектов, в Монго это не требуется.

>db.users.find()

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

 

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

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

cd /opt/mongo

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

mongo

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

>use admin

switched to db admin

 

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

db.createUser({user:»admin1",pwd:»1234",roles:[«userAdminAnyDatabase»]})

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

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

show dbs

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

use people

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

db.createUser({user:»vasiliy»,pwd:»1234",roles:[«readWrite»,»dbAdmin»]})

Successfully added user: { «user» : «vasiliy», «roles» : [ «readWrite», «dbAdmin» ] }

 

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

 

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