Использование базы данных MongoDB в приложении Windows
В этой статье содержатся шаги, необходимые для работы с базой данных MongoDB из приложения Windows. Здесь также приведены небольшие фрагменты кода, в которых показано, как с взаимодействовать с базами данных программным способом.
Настройка решения
Этот пример можно использовать с любым проектом WPF, Windows Forms, WinUI 3 и UWP для подключения приложения Windows к MongoDB. Выполните следующие действия, чтобы установить пакет и попробовать пример кода для чтения данных из существующей базы данных MongoDB.
Откройте Консоль диспетчера пакетов (Представление -> Другие окна -> Консоль диспетчера пакетов). Используйте команду Install-Package MongoDB.Driver , чтобы установить пакет NuGet для официального драйвера для MongoDB. Это позволит получать доступ к базам данных MongoDB программным способом.
Проверка подключения с помощью примера кода
Следующий пример кода возвращает коллекцию из удаленного клиента MongoDB, а затем добавляет новый документ в эту коллекцию. Затем он использует API MongoDB для получения и отображения нового размера коллекции и вставленного документа.
var client = new MongoClient("mongodb://10.xxx.xx.xxx:27017"); IMongoDatabase database = client.GetDatabase("foo"); IMongoCollection collection = database.GetCollection("bar"); var document = new BsonDocument < < "name","MongoDB">, < "type","Database">, < "count",1>, < "info",new BsonDocument < < "x", 203 >, < "y", 102 >>> >; collection.InsertOne(document); long count = collection.CountDocuments(document); Console.WriteLine(count); IFindFluent document1 = collection.Find(document); Console.WriteLine(document1.ToString());
Обратите внимание, что необходимо настроить IP-адрес и имя базы данных. Порт 27017 — номер порта MongoDB по умолчанию. В рабочем приложении сведения о подключении, такие как адрес сервера и имя базы данных, должны храниться в конфигурации приложения, а не жестко закодированы (см. раздел «Добавление Конфигурация приложений Azure с помощью Visual Studio Подключение ed Services«).
См. также
- Использование базы данных SQL Server в приложении Windows
- Использование базы данных MySQL в приложении Windows
Как установить mongodb на windows 10
Официальный сайт предоставляет пакеты дистрибутивов для различных платформ: Windows, Linux, MacOS, Solaris. И каждой платформы доступно несколько дистрибутивов. Причем есть два вида серверов — бесплатный Community и платный Enterprise. В данном руководстве будем использовать бесплатную версию Community.
Для установки MongoDB загрузим один распространяемых пакетов с официального сайта https://www.mongodb.com/try/download/community.
Для загрузки всех необходимых файлов выберем нужную операционную систему и подходящий тип пакета. Рассмотрим на примере установки на ОС Windows.
MongoDB можно загрузить в ряде вариантов. Так, для Windows доступна загрузка установщика msi и также доступна загрузка архива zip . В реальности нам достаточно загрузить zip-архив и распаковать в нужной нам папке. Поэтому выберем этот вариант загрузки (хотя также можно выбрать вариант установщика msi ):

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

- mongod : сервер баз данных MongoDB. Он обрабатывает запросы, управляет форматом данных и выполняет различные операции в фоновом режиме по управлению базами данных
- mongos : служба маршрутизации MongoDB, которая помогает обрабатывать запросы и определять местоположение данных в кластере MongoDB
Создание каталога для БД и запуск MongoDB
После установки надо создать на жестком диске каталог, в котором будут находиться базы данных MongoDB.
В ОС Windows по умолчанию MongoDB хранит базы данных по пути C:\data\db , поэтому, если вы используете Windows, вам надо создать соответствующий каталог.
Если же возникла необходимость использовать какой-то другой путь к файлам, то его можно передать при запуске MongoDB во флаге —dbpath .
Итак, после создания каталога для хранения БД можно запустить сервер MongoDB. Сервер представляет приложение mongod , которое находится в каталоге bin в папке сервера. Для этого запустим терминал/командную строку и там введем соответствующие команды. Для ОС Windows это будет выглядеть так:

Командная строка отобразит нам ряд служебной информации, например, что сервер запускается на localhost на порту 27017.
И после удачного запуска сервера мы сможем производить операции с бд через клиент.
Установка клиента Mongosh
Выше мы установили сервер MongoDb. Однако для работы с сервером нам нужен клиент. Наиболее простым клиентом в данном случае является MongoDB Shell или mongosh — консольная оболочка для отправки запросов к серверу, которая также предоставляется непосредственно компанией MongoDB.

Здесь опять же мы можем выбрать версии клиента для разных операционных систем. Для Windows пакет клиента доступен в виде архива zip. Загрузим этот пакет и распакуем его в папку C:\mongosh .
Если в распакованном архиве мы зайдем в папку bin (то есть C:\mongosh\bin ), то обнаружим там консольную утилиту mongosh , которая будет применяться для работы с сервером MongoDB:

Подключение к серверу из клиента
Используем выше установленное клиентское приложение mongosh для взаимодействия с сервером mongodb. (При работе с mongosh не стоит забывать, что у нас должен быть запущен сервер mongod). Итак, запустим файл mongosh , который располагается в выше рассмотренной папке установки:

При запуске программы mongosh вначале она спросит пользователя, какую строку подключения использовать для подключения к серверу MongoDB. В этом моменте просто нажмем на Enter, чтобы использовать строку подключения к MongoDB по умолчанию. А по умолчанию сервер mongodb запускается на порту 27017, а полная строка подключения выглядит следующим образом: mongodb://localhost:27017 или mongodb://127.0.0.1:27017
После подключения консоль отобразит ряд служебной информации и подключится к базе данных test.
Теперь поизведем какие-либо простейшие действия. Введем в консоль последовательно следующие команды и после каждой команды нажмем на Enter:
db.users.insertOne( < name: "Tom" >) db.users.find()
С помощью функции db.users.insertOne() в коллекцию users базы данных test добавляется объект < name: "Tom" >. Идентификатор db представляет текущую базу данных. В нашем случае мы подключены к базе данных по умолчанию — то есть к базе данных test, соответственно db здесь представляет базу данных test. При этом не важно, есть или нет такая бд — если ее нет, то она создается
После db идет users — это коллекция, в которую затем мы добавляем новый объект. Если в SQL нам надо создавать таблицы заранее, то коллекции MongoDB создает самостоятельно при их отсутствии.
Описание добавляемого объекта определяется в формате, с которым вы возможно знакомы, если имели дело с форматом JSON. То есть в данном случае у объекта определен один ключ «name», которому сопоставляется значение «Tom». То есть мы добавляем пользователя с именем Tom.
Если объект был успешно добавлен, то консоль выведет результат операции, в частности, идентификатор добавленного объекта.
А вторая команда db.users.find() выводит на экран все объекты из бд test.

Из вывода вы можете увидеть, что к начальным значениям объекта было добавлено какое-то непонятно поле ObjectId . Как вы помните, MongoDB в качестве уникальных идентификаторов документа использует поле _id . И в данном случае ObjectId как раз и представляет значение для идентификатора _id.
Установка драйверов MongoDB
В дальнейшем в рамках данного руководства мы будет рассматривать взаимодействие с сервером MongoDB преимущественно через выше использованную оболочку mongo . Однако, мы также можем взаимодействовать с mongodb в наших приложениях, написанных на PHP, C++, C# и других языках программирования. И для этой цели необходим специальный драйвер.
На офсайте на странице https://docs.mongodb.com/ecosystem/drivers/ можно найти список драйверов для всех поддерживаемых языков программирования, в частности, для PHP, C, C++, C#, Java, Go, Python, Rust, Ruby, Scala, Swift, а также для Node.js.
Работа с драйверами на конкретных языках программирования будет рассмотрена в соответствующих разделах, посвященных этим языкам..
Как установить и запустить MongoDB на Windows 10
Данный материал предоставлен сайтом PacificSky.Ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.

Установка и запуск MongoDB на Windows 10.
В первую очередь необходимо скачать MongoDB с официального сайта.
После перехода по ссылке на официальный сайт перед вами будет представлена форма, в которой необходимо указать требуемую версию системы управления базами данных, вашу версию операционной системы, тип устанавливаемого пакета и нажать кнопку «Download» для скачивания.

После того как файл будет скачан, приступаем к установке:
Начиная с версии 4.0, MongoDB можно настроить и запустить как службу Windows в процессе установки.
Сама служба MongoDB будет запущена после успешной установки.
Для запуска MongoDB как службы в процессе установки необходимо отметить checkbox с пунктом: «Install MongoD as service».
Так-же вы можете установить MongoDB со своими параметрами или оставить все по умолчанию.

После выполнения установки MongoDB будет запущена как служба и будет доступна для работы с ней.
Если по каким то причинам вы не хотите запускать MongoDB как службу, то необходимо убрать галочку с «Install MongoD as service».

- Создайте каталог данных, в котором MongoDB будет хранить данные.
По умолчанию это должен быть абсолютный путь — «C:\data\db».
Для этого создайте на диске «C» папку с названием «data» и внутри папки дата создайте папку «db«. - Для старта MongoDB необходимо запустить файл mongod.exe с указанием пути к базе данных.
Для этого запустить «cmd» консоль и выполните команду:
"C:\Program Files\MongoDB\Server\4.2\bin\mongod.exe" --dbpath="c:\data\db"
"C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
Установка MongoDB на разные ОС: Windows, Ubuntu, CentOS
MongoDB — это документо-ориентированная база данных NoSQL, которая используется для хранения больших объемов данных. Вместо таблиц и строк, как в традиционных реляционных базах данных, в данные в MongoDB хранятся в виде документов, подобных JSON-формату.
У MongoDB открытый исходный код, и она имеет бесплатную версию. В этом материале вы узнаете, как установить MongoDB на разные операционные системы: Windows, Ubuntu и CentOS.
Установка MongoDB на Windows 10
В MongoDB установка на Windows начинается с загрузки дистрибутива. Переходим на официальный сайт систему управления базами данных mongodb.com и нажимаем кнопку «Products». В окне выбираем версию Community. Community — это бесплатная версия MongoDB, поэтому установим её. Выбираем версию СУБД, в нашем случае 5.0.9 и загружаем его в удобном формате — мы выбрали .msi.
После загрузки пакета установщика переходим к непосредственно к установке. Во время установки инсталлятор предложит вам сделать MongoDB службой Windows:
Служба Windows — это приложение, исполняемое при запуске операционной системой Windows и выполняющееся вне зависимости от статуса пользователя. В чем-то служба Windows схожа с демонами из Linux. Если вы по какой-то причине не хотите, чтобы MongoDB была установлена на ваше устройство как служба Windows, то снимите галочку на этом этапе.
Для установки MongoDB Compass не снимайте галочку на этом этапе:
MongoDB Compass — это графический клиент для просмотра и администрирования базы данных.
После нажатия кнопки «Next» начнется установка MongoDB. Во время процесса установщик может не обнаружить некоторых пакетов и предложит их установить. Для их полноценной установки устройство придется перезагрузить. После завершения установки откроется MongoDB Compass.
Установка MongoDB на Ubuntu
Устанавливать MongoDB будем на Ubuntu 22.04. На момент написания статьи репозиторий для Ubuntu 22.04 ещё не вышел, поэтому будет использовать репозиторий для 20.04. Для установки MongoDB на Debian 10/11 руководствуйтесь туториалом на сайте MongoDB.
Заказать облачный сервер с предустановленной ОС Ubuntu или Debian можно в Timeweb Cloud.
Настройка прокси
Репозитории MongoDB недоступны для пользователей из России, и для установки софта понадобится прокси-сервер, расположенный за рубежом. Прокси-сервер — это промежуточный узел между клиентом и целевым сервером. Для того, чтобы apt использовал прокси, его нужно прописать в настройках. Будем использовать простой SOCKS5-прокси.
Откроем конфигурационный файл прокси apt /etc/apt/apt.conf.d/proxy.conf :
sudo nano /etc/apt/apt.conf.d/proxy.conf
И добавим в него информацию о прокси:
Acquire::http::Proxy "socks5h://IpAddres:port";
Acquire::https::Proxy "socks5h://IpAddres:port";
Acquire::socks::Proxy "socks5h://IpAddres:port";
Вместо IpAddres и Port необходимо указать IP-адрес вашего прокси и порт.
Шаг 1. Установка libssl1
Так как используем репозиторий не для нашей системы, то для корректной работы MongoDB необходимо установить пакет libssl1. В ином случае получим такую ошибку:
The following packages have unmet dependencies:
mongodb-org-mongos : Depends: libssl1.1 (>= 1.1.1) but it is not installable
mongodb-org-server : Depends: libssl1.1 (>= 1.1.1) but it is not installable
mongodb-org-shell : Depends: libssl1.1 (>= 1.1.1) but it is not installable
Для установки пакета выполняем следующие команды в терминале:
echo "deb http://security.ubuntu.com/ubuntu focal-security main" | sudo tee /etc/apt/sources.list.d/focal-security.list
sudo apt update
sudo apt install libssl1.1
Добавляем GPG-ключ репозитория MongoDB:
curl -fsSL https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
Добавляем репозиторий MongoDB:
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
sudo apt update
sudo apt install -y mongodb-org
Вот полный список команд для установки MongoDB на Ubuntu 22.04:
echo "deb http://security.ubuntu.com/ubuntu focal-security main" | sudo tee /etc/apt/sources.list.d/focal-security.list
sudo apt update
sudo apt install libssl1.1
curl -fsSL https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
sudo apt update
sudo apt install -y mongodb-org
Установка MongoDB Compass
У MongoDB Compass есть три версии:
- Полная — все функции включены;
- Изолированная — все подключения, кроме как к инстансу MongoDB, отключены;
- Только для чтения — без возможности записи и удаления данных.
Установка полной версии:
wget https://downloads.mongodb.com/compass/mongodb-compass_1.32.3_amd64.deb
sudo apt install ./mongodb-compass_1.32.3_amd64.deb
Установка изолированной версии:
wget https://downloads.mongodb.com/compass/mongodb-compass-isolated_1.32.3_amd64.deb
sudo apt install ./mongodb-compass-isolated_1.32.3_amd64.deb
wget https://downloads.mongodb.com/compass/mongodb-compass-readonly_1.32.3_amd64.deb
sudo apt install ./mongodb-compass-readonly_1.32.3_amd64.deb
MongoDB: установка на CentOS
Настройка прокси
Для установки MongoDB на CentOS нужно настроить прокси, как и в случае с Ubuntu. Откройте файл /etc/yum.conf и добавьте в него следующие строки:
proxy=http://IpAddres:port
proxy_username=login
proxy_password=password
IpAddres и Port — IP-адрес и порт вашего прокси. Login и Password — имя пользователя и пароль, если для прокси необходима авторизация.
Теперь создадим репозиторий /etc/yum.repos.d/mongodb-org-5.0.repo для установки MongoDB с помощью yum :
[mongodb-org-5.0]
name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/ gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc
sudo yum install -ymongodb-org
Заключение
В этом материале мы разобрали, как установить MongoDB на 3 разные операционные системы. MongoDB — это гибкая и мощная система управления базами данных, которая подойдет для проектов без сложной структуры. К слову, в скором времени MongoDB появится на Timeweb Cloud как облачная база данных (Database-as-a-service).
В официальном канале Timeweb Cloud собрали комьюнити из специалистов, которые говорят про IT-тренды, делятся полезными инструкциями и даже приглашают к себе работать.