—»     —»   MongoDB для новичков: введение и установка (часть 1/3)
  Раздел: Базы данных   Нет комментариев  

MongoDB для новичков: введение и установка (часть 1/3)



Mongo представляет собой open source систему баз данных без схем, которая сильно отличается от более популярной MySQL. Самое главное различие заключается в том, что MySQL состоит из sql-запросов, а MongoDB сосредоточена на BSON (Binary JSON).

MongoDB для новичков: введение и установка (часть 1/3)

Это значит, что к большей части функционала можно осуществить доступ напрямую посредством javascript-значений.

Но Mongo представлена с собственным интерфейсом для запуска команд напрямую в вашей базе данных. В данном руководстве мы хотим сделать следующее:

* Раскрыть этапы настройки вашей системы (Windows и Mac) и запуска Mongo,
* Работу команд в Mongo (в скором будущем)
* Настройку MongoDB при помощи PHP (в скором будущем)

Веб-разработчикам действительно понравится Mongo, если они знакомы с JSON. Этот язык на базе javascript сосредоточен на объектах, которые содержат пары ключ-значение.

Это немного отличается от обычных SQL-таблиц, которые состоят из данных в виде строк и колонок. Но MongoDB все равно представляет собой привлекательную систему баз данных, которую обязательно следует изучить и опробовать.

Почему мы рекомендуем MongoDB?

Кроме Mongo есть и несколько других баз данных без схем, которые вы можете опробовать. Лично мы слышали только положительные отзывы об этом проекте и он, к тому же, поддерживается многими ОС (Windows, OSX, Linux), а команда разработчиков продолжает радовать нас новыми релизами на регулярной основе.

На сайте MongoDB мы наткнулись на статью, в которой MongoDB сравнивается с CouchDB, которую на данный момент приобрела Apache. Оба эти проекта используют JSON для хранения данных, и обе способны поддерживать крупные приложения. Это может быть очередной случай, где на выбор влияет лишь личное мнение, но нам кажется, что Mongo предлагает гораздо больше расширенной документации для новичков.

MongoDB для новичков: введение и установка (часть 1/3)

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

Существует даже open source библиотека MongoDB для iPhone-разработчиков, и множество других ресурсов для Android-программистов, использующих java.

Можно сказать, надежность MongoDB и доступность коллективной базы кода – это самые веские причины к тому, чтобы начать изучать эту систему. Здесь имеются драйвера практически для любого языка, включая /C++, Python, PHP, Ruby, Perl, .NET и даже Node.js.

Это мощное решение для веб-разработчиков, которые устали от ограничений SQL, и хотят попробовать нечто новое.

Ключевые термины

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

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

Коллекцию можно расценивать как таблицу, за исключением того, что здесь нет привязанных колонок. Каждая запись (строка) может использовать различные динамические схемы в парах ключ-значение.

Пример:
Внутри коллекции Users может быть одна запись с First name и Last name. Другая запись может содержать First, Last и Middle name, а также email-адрес и дату рождения. Это и есть гибкая система MongoDB, которая упрощает работу с этими базами данных.

Каждая из этих записей или строк внутри коллекции называется документом (document). Они не являются физическими документами вроде txt или html, они больше представляют собой объекты на базе документов. В общем, они являются блоками данных JSON, размещенных в файлах управляемых памятью, которые действуют как отдельные записи в ваших коллекциях.

Пример:
В нашей коллекции Users у нас может быть всего 500 объектов document для всех 500 пользователей. Как уже было отмечено выше, документы не должны соответствовать друг другу с точки зрения одинаковых полей. Единственное требование – это уникальный ID-номер, который MongoDB добавляет в каждый объект document автоматически.

Мы понимаем, что данная терминология поначалу может быть непонятной. Гораздо больше станет понятно, когда вы увидите весь этот процесс в действии. Если у вас есть пара минут, проштудируйте онлайн-документацию Mongo, чтобы иметь более четкое представление.

И даже если вы поняли суть не совсем полностью – это не страшно! Многие люди ежедневно используют MySQL с таким же слабым понимаем того, как работает база данных.

Давайте приступим к работе, и настроим нашу базу MongoDB.

Процесс настройки MongoDB

Мы проведем процесс установки для обеих платформ:

* Настройка MongoDB под Mac OS X и
* Настройка MongoDB под Windows

Мы используем последние версии OSX Mountain Lion и Windows 7. После установки Mongo, нам нужно будет настроить локальный сервер с WAMP для Windows или MAMP для OS X.

Установка Mongo на Mac OS X

Настройка MongoDB в Mac происходит гораздо проще, чем в Windows. Через командную (или терминал) мы запускаем несколько команд, чтобы получить последние версии MacPorts. Онлайн-документация предлагает нам небольшое руководство по Mac OS X, где нам дается такая же информация.

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

sudo port selfupdate

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

sudo port -d selfupdate

Процесс может занять несколько минут, так как производится закачка и установка.

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

port install mongodb

Этот процесс может занять 10-15 минут, даже если у вас будет быстрый интернет. Установка потребует немного времени, но должна произойти быстрее, но обязательно дождитесь запуска терминала.

Затем у вас должна появиться возможность запустить сервер, используя команду:

mongod

Все должно завершиться фразой «waiting for connections on port 27017» (ожидаю подключения к порту 27017).

Это означает, наша база данных запущена и работает корректно. Вы можете протестировать ее, набрав в браузере http://localhost:28017/. MongoDB предоставляет небольшой веб-интерфейс, который позволяет вам получить информацию о ваших базах данных и установке.

И последнее, что здесь интересно, это процесс принудительной загрузки MongoDB при включении компьютера. Hunter Ford опубликовал замечательное руководство на своем сайте, которое является основной представленного здесь кода. Реализуя принудительную загрузку, вам не придется держать окно командной строки открытой для разработки.

Сначала вам нужно скачать, разархивировать и переместить этот документ org.mongodb.mongod.rar [476 b] (cкачиваний: 36) в /Library/LaunchDaemons/, т.е. у вас должно получиться так: /Library/LaunchDaemons/org.mongo.mongod.plist.

Затем в терминале создать небольшой Log-файл, и директорию для новых системных данных:

sudo touch /var/log/mongodb.log
sudo mkdir /var/lib/mongodb

Наконец, запустить следующие команды для настройки запускающего модуля. Вы можете выставить перезагрузку компьютера после процесса, чтобы проверить, будет ли Mongo работать правильно после перезагрузки.

sudo chown root:wheel /Library/LaunchDaemons/org.mongo.mongod.plist  
sudo launchctl load /Library/LaunchDaemons/org.mongo.mongod.plist
sudo launchctl start org.mongo.mongod

Устанавливаем Mongo на Windows

Мы столкнулись с серьезными трудностями при попытке запустить MongoDB без аккаунта администратора. Это не так уж и сложно, если вам доступна опция «Открыть с правами администратора».

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

net user administrator /active:yes

Если вы столкнетесь с проблемами, то у MongoDB есть отличное онлайн-руководство по установке, разработанное специально для пользователей Windows. Чтобы получить свою копию, откройте страницу закачек, где вы увидите версию для Windows. На момент написания этой статьи, последний стабильный релиз был MongoDB 2.2.0: отсюда вы можете скачать версию win32, а здесь - win64.

Нам нужно поместить все эти файлы прямо в каталог C:\mongodb\. То есть, как только завершится закачка, распакуйте архив, и открывайте папки до тех пор, пока не дойдете до /bin/ с несколькими файлами. Выделите все эти файлы, вырежьте их и вставьте в новый каталог C:\mongodb\.

Теперь, в этой папке, кроме \bin\, создайте новую папку «log», в которой мы будем хранить все log-файлы нашей системы MongoDB. Нам также нужно создать две внешние папки для хранения данных: C:\data\ и C:\data\db\.

И именно здесь использование не администраторского аккаунта может вызвать проблему. Откройте командную строку и запустите cd C:\mongodb\bin.

Теперь нам нужно запустить mongod.exe, но после запуска вы заметите, что операция будет заморожена в момент прослушивания подключений. На самом деле, она не заморожена, мы запустили Mongo напрямую через терминал.

Это будет вам надоедать, поэтому давайте запустим команду, которая настроит автоматический запуск Mongo в качестве сервиса Windows.

> echo logpath=C:\mongodb\log\mongo.log > C:\mongodb\mongod.cfg

Первая команда создаст log-файл и конфигурацию для сервиса. Это не обязательно, но желательно уметь делать, будучи администратором базы данных.

Теперь запустите следующие 2 строки кода в терминале, чтобы создать сервис и запустить его.

> C:\mongodb\bin\mongod.exe --config C:\mongodb\mongod.cfg --install  
> net start MongoDB

Если у вас не возникло никаких ошибок, то все сделано правильно!

Проверьте, активен ли сервис. Сделать это можно, открыв меню «Пуск» (Windows + R), и вписав services.msc.

Эта команда откроет перед вами перечень активных сервисов, и если вы прокрутите его вниз, то увидите Mongo DB в статусе «активный» и типом запуска «автоматический».

В Mac вы можете осуществить доступ к терминалу Mongo прямо посредством командной строки. Измените директории на C:\mongodb\bin\ и впишите mongo, а затем нажмите Enter.

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

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

> show dbs

Будьте в курсе!

На сегодня все! Надеемся, что теперь у вас есть хоть какое-то понимание системы MongoDB, и вы сможете запустить ее на собственном компьютере! В следующей статье мы раскроем для вас базовые команды для MongoDB. Следите за новостями!
Обнаружили ошибку или мёртвую ссылку?
Выделите проблемный фрагмент мышкой и нажмите CTRL+ENTER.
В появившемся окне опишите проблему и отправьте уведомление Администрации ресурса.
Нужна органическая вечная ссылка из данной статьи? Постовой?
Подробности здесь
Вам понравился материал? Поблагодарить легко!
Будем весьма признательны, если поделитесь этой статьей в социальных сетях:

Ключевые тэги: MongoDB
Опубликовал Design FactoRy   Прочитано (раз): 20388   |   Нет комментариев
Автор перевода — CoolWebmasters.Com ©   |   Источник материала / оригинал статьи   Распечатать
Другие статьи и новости по теме:
Добавление комментария
Уважаемые пользователи!
При добавлении комментариев на сайт Вам следует учитывать следующее - все комментарии проверяются Администрацией на предмет отсутствия спама. При обнаружении признаков спама, в оставленном Вами комментарии, сам комментарий будет незамедлительно удалён, а Ваш IP-адрес будет забанен без предупреждения! Учётные записи пользователей, рассылающих спам, блокируются/удаляются без права последующего восстановления.

С уважением, Администрация сайта.
* = поля обязательны к заполнению
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Вопрос : Национальная денежная единица России
Подтверждение кода безопасности :

Включите эту картинку для отображения кода безопасности
обновить, если не виден код


Популярные публикации


















Свежие шаблоны сайтов каждый день
С миру по нитке
«    Апрель 2017    »
ПнВтСрЧтПтСбВс
 12
3456789
10111213141516
17181920212223
24252627282930