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


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



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


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 и пользователей с ограниченными правами для MongoDB Linux


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

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

Сказать спасибо