Установка mongodb на windows 32. Установка MongoDB на Microsoft Windows

Jun 25 2013

Решил познакомиться с базами данных типа NoSQL. Для знакомства решил выбрать MongoDB, т.к. выбрал именно эту СУБД потому что часто встречал её в статьях на различных блогах. Если что то решил, лучше не откладывать на долго, что собственно я и сделал. Любое знакомство с ПО начинается с его установки, о чём будет написано ниже. Устанавливать будем как службу Windows.
1. Для начало необходимо скачать дистрибутив с официального сайта: http://www.mongodb.org/downloads

2. После того как архив скачался, распаковываем его в директорию, к примеру g:\webservwe\mongodb (в этой директории должна располагаться директория bin)

3. Для файлов БД создаём директорию data (g:\webservwe\mongodb\data)

4. В директории g:\webservwe\mongodb создаём файл mongod.cfg со следующим содержанием:

Logpath=g:\webserver\mongodb\log\mongo.log dbpath=G:\webserver\mongodb\data

5. В командной строке, запущенной от имени администратора выполняем следующую команду:

G:\webserver\mongodb\bin\mongod.exe –config G:\webserver\mongodb\mongod.cfg –install

6. И наконец проверка работы:

Запускаем клиент mongo.exe и прописываем следующие команды:

Db.test.save({ a: 1 }) db.test.find()

На экране должно отобразиться что то подобное:

{ "_id" : ObjectId("51c89ca80db214128714caca"), "a" : 1 }

Последнее обновление: 14.11.2018

Для установки MongoDB загрузим один распространяемых пакетов с официального сайта https://www.mongodb.com/download-center/community .

Официальный сайт предоставляет пакеты дистрибутивов для различных платформ: Windows, Linux, MacOS, Solaris. И каждой платформы доступно несколько дистрибутивов. Причем есть два вида серверов - Community и Enterprise. В данном случае надо установить версию Community. Хотя Enterprise-версия обладает несколько большими возможностями, но она доступна только в триальном режиме или по подписке.

На момент написания данного материала последней версией платформы была версия 4.0.4 . Использование конкретной версии может несколько отличаться от применения иных версий платформы MongoDB.

Для загрузки нобходиомго функционала выберем нужную операционную систему и подходящий тип пакета:

Для ОС Windows можно выбрать тип пакета "ZIP", то есть загрузить сервер в виде архива.

Если до установки уже была установлена более рання версия MongoDB, то ее необходимо удалить и также необходимо удалить все равне созданные базы данных.

После загрузки архивного пакета распакуем его в папку C:\mongodb .

Содержимое пакета MongoDB

Если после установки мы откроем папку C:\mongodb\bin , то сможем найти там кучу приложений, которые выполняют определенную роль. Вкратце рассмотрим их.

    bsondump : считывает содержимое BSON-файлов и преобразует их в читабельный формат, например, в JSON

    mongo : представляет консольный интерфейс для взаимодействия с базами данных, своего рода консольный клиент

    mongod : сервер баз данных MongoDB. Он обрабатывает запросы, управляет форматом данных и выполняет различные операции в фоновом режиме по управлению базами данных

    mongodump : утилита создания бэкапа баз данных

    mongoexport : утилита для экспорта данных в форматы JSON, TSV или CSV

    mongofiles : утилита, позволяющая управлять файлами в системе GridFS

    mongoimport : утилита, импорирующая данных в форматах JSON, TSV или CSV в базу данных MongoDB

    mongorestore : позволяет записывать данные из дампа, созданного mongodump, в новую или существующую базу данных

    mongos : служба маршрутизации MongoDB, которая помогает обрабатывать запросы и определять местоположение данных в кластере MongoDB

    mongorestat : представляет счетчики операций с бд

    mongotop : предоставляет способ подсчета времени, затраченного на операции чтения-записи в бд

Создание каталога для БД и запуск MongoDB

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

В ОС Windows по умолчанию MongoDB хранит базы данных по пути C:\data\db , поэтому, если вы используете Windows, вам надо создать соответствующий каталог. В ОС Linux и MacOS каталогом по умолчанию будет /data/db .

Если же возникла необходимость использовать какой-то другой путь к файлам, то его можно передать при запуске MongoDB во флаге --dbpath .

Итак, после создания каталога для хранения БД можно запустить сервер MongoDB. Сервер представляет приложение mongod , которое находится в папке bin. Для этого запустим командную строку (в Windows) или консоль в Linux и там введем соответствующие команды. Для ОС Windows это будет выглядеть так:

Командная строка отобразит нам ряд служебной информации, например, что сервер запускается на localhost на порту 27017.

И после удачного запуска сервера мы сможем производить операции с бд через оболочку mongo . Эта оболочка представляет файл mongo.exe , который располагается в выше рассмотренной папке установки. Запустим этот файл:

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

Теперь поизведем какие-либо простейшие действия. Введем в mongo последовательно следующие команды и после каждой команды нажмем на Enter:

Use test db.users.save({ name: "Tom" }) db.users.find()

Первая команда use test устанавливает в качестве используемой базу данных test. Даже если такой бд нет, то она создается автоматически. И далее db будет представлять текущую базу данных - то есть базу данных test. После db идет users - это коллекция, в которую затем мы добавляем новый объект. Если в SQL нам надо создавать таблицы заранее, то коллекции MongoDB создает самостоятельно при их отсутствии.

С помощью метода db.users.save() в коллекцию users базы данных test добавляется объект { name: "Tom" } . Описание добавляемого объекта определяется в формате, с которым вы возможно знакомы, если имели дело с форматом JSON. То есть в данном случае у объекта определен один ключ "name", которому сопоставляется значение "Tom". То есть мы добавляем пользователя с именем Tom.

Если объект был успешно добавлен, то консоль выведет результа в виде выражения WriteResult({ "nInserted" : 1 }) .

А третья команда db.users.find() выводит на экран все объекты из бд test.

Из вывода вы можете увидеть, что к начальным значениям объекта было добавлено какое-то непонятно поле ObjectId . Как вы помните, MongoDB в качестве уникальных идентификаторов документа использует поле _id . И в данном случае ObjectId как раз и представляет значение для идентификатора _id.

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

Конечно, мы можем работать и через консоль mongo, добавляя и отображая объекты в бд. Но нам также было бы неплохо, если бы mongoDB взаимодействовала бы с нашими приложениями, написанными на PHP, C++, C# и других языках программирования. И для этой цели нам потребуются специальные драйверы.

На офсайте на странице https://docs.mongodb.com/ecosystem/drivers/ можно найти драйвера для таких языков программирования, как PHP, C++, C#, Java, Python, Perl, Ruby, Scala и др.

MongoDB — это система управления базами данных, которая значительно отличается от MySQL. Основная разница заключается в том, что в MySQL запросы пишутся на языке SQL, а в MongoDB на BSON (бинарный JSON). Это значит, что работа с этой системой может осуществляться в основном через JavaScript выражения.

Также MongoDB включает в себя собственную утилиту для выполнения команд, направленных на работу с БД. В данном цикле статей, мы затронем следующие темы:

  • Установка и запуск MongoDB на Windows
  • Работа с MongoDB через консоль
  • Интеграция MongoDB и

Разработчикам не составляет труда быстро освоить работу с Mongo, если они знакомы с JSON. Этот формат использует выражения, которые состоят из пар “ключ”: “значение”.

Почему MongoDB

Между не табличными СУБД многие пользователи делают выбор в пользу MongoDB. Во-первых, данную систему можно установить практически на всех операционных системах (Windows, OSX, Linux). Во-вторых, проект до сих пор активно развивается и с завидной частотой команда разработчиков публикует обновления. Также мне кажется, что MongoDB предоставляет хорошую документацию для начинающих.

MongoDB лучше подходит в тех случаях, когда таблицы можно представить в виде объектов. По-моему, подобные системы лучше использовать при разработке приложений для мобильный устройств. В этом плане, Mongo предоставляет отдельные библиотеки, как для iOS, так и для Adndroid-а.

Ещё один весомый аргумент в пользу MongoDB: работать с данной системой можно на многих языках программирования, таких как C/C++, Python, , Rubym Perl, .NET и даже Node.js.

MongoDB — это реальное решение, если вы хотите отступить от SQL и попробовать что-то новенькое.

Ключевая терминология

Перед тем как приступить к установке MongoDB, давайте разберёмся с основными понятиями.

Как и MySQL, MongoDB может содержать множество баз данных, только вместо таблиц они содержат “коллекции”.

Коллекция — это что-то типа таблицы, только без колонок. Вместо этого каждая строка содержит наборы записей в виде ключ:значение.

Пример:

Внутри коллекции Users (пользователи) может располагаться запись с ключами firstname (имя) и lastname (фамилия). В то же время, та же коллекция может содержать запись с другими ключами: firstname, lastname, e-mail, birth (день рождения). В этом-то и заключается гибкость MongoDB.

Каждая из этих записей, или строк, называется “документ”, но это не тот документ типа.txt или.. Данная запись хранится в памяти в JSON формате.

Пример:

Предположим, в нашей коллекции содержится 500 документов. Как уже говорилось раньше, каждый из них может содержать разные поля. Единственное поле, которое должно быть у каждой записи, — это уникальный идентификатор (id), который добавляется автоматически.

Поначалу данная терминология может быть непривычной. Всё будет намного понятнее, когда вы увидите работу с СУБД на практике.

Установка MongoDB на Windows

Сперва качаем архив с MongoDB для win32 или win64 .

Распаковываем скачанный архив и помещаем его, к примеру, на диск C, в каталог mongodb. Причём, проследите за тем, чтобы каталог bin был доступен по адресу C:\mongodb\bin .

Далее прописываем путь к папке bin в настройках нашей ОС, для того чтобы к.exe файлам данной папки мы могли достучаться из любого места. Итак, делаем правый клик на Компьютер — Свойства. В списке слева, выбираем “Дополнительные параметры системы”:

В открывшемся окне ищем системную переменную Path. Кликаем по ней дважды. В поле “значение переменной” переходим в самый конец, ставим знак “;” и вписываем путь к каталогу bin:

Отлично! Жмём “ок”… и переходим к следующему шагу.

Для начала, нам необходимо создать каталог, где будут храниться наши БД. К примеру, C:\databases . Создаём эту папку.

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

Данная команда создаст специальный лог файл и настройки конфигурации для сервиса.

Mongod --config C:\mongodb\mongod.cfg --install

Прежде чем запустить его, давайте отредактируем файл mongod.cfg , вписав туда настройку dbpath — путь к папке с нашими базами данных. В моём случае, после правки файла его содержание должно выглядеть примерно так:

Logpath=C:\mongodb\log\mongo.log dbpath=C:\databases

Возвращаемся к командной строке и запускаем сервис MongoDB:

Net start MongoDB

Для того чтобы проверить, будет ли сервис запускаться автоматически, нажимаем сочетание клавиш “windows+r”, пишем “services.msc”, нажимаем ОК.

В списке сервисов ищем MongoDB и, если его тип запуска не автоматический, то выставляем данный пункт, предварительно сделав правый клик, и выбрав, “свойства”.

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

Для проверки работы MongoDB открываем командную строку и пишем:

Show dbs

В ответе вы должны увидеть вот такую вот строку:

Local (empty)

Итог

Итак, MongoDB установлена и сконфигурирована. В следующей части мы рассмотрим основные команды для работы с данной СУБД.

MongoDB популярная реализация не реляционной базы данных. Если в двух словах то базы данных бывают нескольких типов. Базы реляционного типа, самые популярные, хранят данные в записях таблицы которая состоит из столбцов и строк. MongoDB принадлежит к объектно-ориентированному типу.

Главное отличие этого типа в том что работа и хранение данных осуществляется с помощью объектов, точно так же как это делается в популярных объективно ориентированных языках программирования (C++, Java). В этой инструкции я расскажу как установить MongoDB в Ubuntu.

Так как программа не добавлена в официальный репозиторий Ubuntu, устанавливать будем из собственного репозитория MongoDB. Первым делом нужно интегрировать публичный ключ чтобы система нормально приняла пакет, для этого наберите в терминале:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

С помощью следующей команды создаем список файлов пакета:

echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

Обновим базу данных локальных пакетов:

sudo apt-get update

И можно переходить к установке:

sudo apt-get install -y mongodb-org

Запуск MongoDB

Для начала запустим сервис командой:

sudo service mongod start

Все теперь можно запускать консольный клиент Mongo и начинать работать с базой данных.

Логи сервиса можно посмотреть в папке /var/log/mongodb, файлы баз данных - /var/lib/mongodb