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, но пока я нашел, что это работает отлично.
Хотя это в некоторой степени экспериментально, пожалуйста, поделитесь своим опытом ниже.