Статьи

Настройка MongoDB на Mac

MongoDB — это документно-ориентированная база данных NoSQL. Он набирает обороты и популярность среди разработчиков, потому что он гибкий и масштабируемый одновременно. В этой статье я опишу, как я его настроил и работал на моем Mac с OS X 10.8.2 и MAMP с PHP 5.2.17 и PHP 5.3.6.

Что такое MongoDB?

MongoDB — это приложение с открытым исходным кодом, написанное на языке программирования C ++. Это база данных типа хранилища данных NoSQL , что означает, что она хранит данные в коллекциях. Коллекции состоят из набора документов. Документы содержат набор пар ключ-значение, и их не нужно определять перед началом использования базы данных.

Установка MongoDB

Вы на самом деле не устанавливаете MongoDB, не совсем. Вы можете скачать предварительно скомпилированные двоичные файлы , поместить полученный каталог куда-нибудь (я выбрал свою домашнюю папку), и он почти готов к началу. Я выбрал версию 2.0.2 и 64-битную версию OS X, и на этом основана эта статья.

Вам необходимо создать каталог данных. На веб-сайте MongoDB есть советы, как это сделать, и это почти то, что я сделал:

$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db

Это работает?

Теперь мы можем проверить, все ли работает. Откройте приложение терминала, измените каталог в вашу домашнюю папку, если вы еще не там:

$ cd ~/

Я переименовал папку Mongo в mongodb, чтобы ее было легче набирать. Затем вы можете запустить сервер:

$ ./mongodb/bin/mongod

Затем в новой вкладке терминала подключитесь к localhost:

$ ./mongodb/bin/mongo

Это должно вернуть что-то вроде этого:

MongoDB shell version: 2.0.2
connecting to: test
>

Мы находимся на территории «это просто работает». Я прошел через эти шаги на нескольких компьютерах Mac, и это действительно работает. Мы скажем Mongo, что мы хотим использовать определенную коллекцию (эти команды должны быть набраны в окне оболочки localhost):

> use testingdb

Монго ответит, что он переключился на базу данных с именем testingdb. Далее мы добавим некоторые данные:

> db.testingdb.insert({title: "a test note", note: "This is my first note", 
  tags: "Testing"})

Здесь вы можете видеть, что я определил 3 поля: заголовок, заметку и теги. Когда вы нажмете Enter, запись будет сохранена. Добавьте еще немного, таким же образом, и тогда мы можем запросить коллекцию, чтобы увидеть наши записи:

> db.testingdb.find()

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

Установка драйверов PHP в MAMP

Во-первых, вам нужно посетить Github и скачать версию драйвера для PHP, которую вы чаще всего используете с MAMP. Доступна двоичная сборка для PHP 5.2 и PHP 5.3.

Затем вам нужно будет переместить загруженный двоичный файл (mongo.so) в правильную папку, чтобы MAMP мог его найти. Папку можно найти по адресу: /applications/MAMP/bin/php/php5.2.17/lib/php/extensions/no-debug-non-zts-20060613

Я использую MAMP 2.0.5, но он должен быть похож на другую версию. Далее нам нужно отредактировать шаблон PHP.ini в MAMP. В строке меню выберите «Файл» -> «Изменить шаблон» — выберите шаблон php, который вы хотите использовать.

Оказавшись там (вы можете нажать OK на предупреждающем сообщении), перейдите к разделу расширений и добавьте ссылку на mongo.so:

{% img break https://s3-eu-west-1.amazonaws.com/andyhawthorne.co.uk/mongo2.png ‘Mongo’ ‘Расширение Mongo’%}

Сохраните и перезапустите MAMP. Если вы затем зайдете в веб-запуск и нажмете phpInfo, вы сможете прокрутить вниз и увидеть:

{% img break https://s3-eu-west-1.amazonaws.com/andyhawthorne.co.uk/mongo1.png ‘Mongo’ ‘Расширение Mongo’%}

Это означает, что теперь вы готовы начать кодирование с MongoDB и MAMP.

В заключение…

Это быстрый и простой способ начать работу с MongoDB на OS X Lion и запустить MAMP. Существуют и другие способы установки, например, установка через Homebrew, но пока я нашел, что это работает отлично.

Хотя это в некоторой степени экспериментально, пожалуйста, поделитесь своим опытом ниже.