Соединение MongoDB с Node.js — важнейший навык для современных веб-разработчиков. В этом руководстве мы шаг за шагом проведем вас через этот процесс, гарантируя, что вы сможете легко интегрировать эти мощные технологии.

Введение

MongoDB, ведущая база данных NoSQL, известна своей гибкостью и масштабируемостью. Вы можете создавать эффективные и масштабируемые веб-приложения с помощью Node.js, мощной среды выполнения JavaScript. Давайте углубимся в шаги, которые помогут сделать это соединение беспрепятственным.

Оглавление

  1. Предварительные условия
  2. Настройка МонгоБД
  3. Инициирование проекта Node.js
  4. Подключение к MongoDB с помощью Mongoose
  5. Тестирование соединения
  6. Заключение

1. Предварительные условия

  • Базовое понимание JavaScript и Node.js.
  • Node.js и npm (менеджер пакетов Node) установлены в вашей системе.
  • Учетная запись MongoDB и локальный/удаленный сервер MongoDB.

2. Настройка MongoDB

Начните с установки MongoDB на свой компьютер или настройки облачного экземпляра через MongoDB Atlas. Сохраните строку подключения, она вам скоро понадобится.

Настройка MongoDB в MongoDB Atlas

2.1 Зарегистрируйтесь или войдите

  • Перейдите на сайт MongoDB Atlas: https://www.mongodb.com/cloud/atlas.
  • Если вы новичок в MongoDB Atlas, зарегистрируйте новую учетную запись. В противном случае войдите в систему, используя свои учетные данные.

2.2 Создание нового кластера

  • После входа в систему нажмите кнопку «Создать новый кластер».
  • MongoDB Atlas предлагает бесплатный уровень, известный как M0 Sandbox. Это хорошая отправная точка для новичков или небольших проектов.

2.3. Выберите поставщика облачных услуг и регион

  • Выберите предпочитаемого поставщика облачных услуг (AWS, Google Cloud или Azure).
  • Выберите регион. Некоторые регионы поддерживают уровень бесплатного пользования, поэтому обязательно выберите регион, ближайший к вашей основной базе пользователей, чтобы уменьшить задержку.

2.4. Настройка параметров кластера

  • Хотя настройки по умолчанию подходят для большинства случаев использования, при необходимости вы можете изменить имя кластера и другие настройки.

2.5. Добавление дополнительной конфигурации (необязательно)

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

2.6 Настройка доступа к сети

  • Нажмите на раздел «Доступ к базе данных» на левой панели.
  • Добавьте нового пользователя с именем пользователя и надежным паролем. Запомните эти учетные данные, поскольку они понадобятся вам для подключения вашего приложения к MongoDB.
  • На вкладке «Белый список IP» нажмите «Добавить IP-адрес». В целях безопасности внесите в белый список только те IP-адреса, которым требуется доступ. В целях разработки вы можете выбрать «Разрешить доступ из любого места», но это не рекомендуется для производственных сред из соображений безопасности.

2.7. Получите строку подключения

  • После запуска кластера нажмите кнопку «ПОДКЛЮЧИТЬ».
  • Выберите «Подключить ваше приложение».
  • Выберите версию драйвера и скопируйте строку подключения. Это строка, которую вы будете использовать в своем приложении для подключения к MongoDB. Замените <password> в строке подключения паролем пользователя MongoDB, которого вы создали ранее.

2.8 Подключите свое приложение

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

2.9 Мониторинг и управление

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

3. Запуск проекта Node.js

В терминале или командной строке:

mkdir mongo-node-connection
cd mongo-node-connection
npm init -y

Приведенный выше код создает новый проект Node.js.

4. Подключение к MongoDB с помощью Mongoose

Mongoose — это популярный ODM (сопоставитель объектных документов), который облегчает соединение между Node.js и MongoDB.

Установите мангуста:

npm install mongoose

Подключитесь к MongoDB:

const mongoose = require('mongoose');

// Your MongoDB connection string
const dbURI = 'YOUR_MONGODB_CONNECTION_STRING';

mongoose.connect(dbURI, { useNewUrlParser: true, useUnifiedTopology: true })
  .then(() => console.log('Connected to MongoDB'))
  .catch((error) => console.error('Connection error', error));

Примечание. Замените 'YOUR_MONGODB_CONNECTION_STRING' фактической строкой подключения MongoDB.

5. Проверка соединения

Чтобы проверить соединение:

  1. Создайте простую схему и модель с помощью Mongoose.
  2. Вставьте документ в коллекцию MongoDB.
  3. Получите и запишите документ в консоль.
const testSchema = new mongoose.Schema({
  name: String,
  testField: String
});

const TestModel = mongoose.model('Test', testSchema);

const testData = new TestModel({
  name: 'Node-Mongo Connection Test',
  testField: 'It works!'
});

testData.save()
  .then(doc => {
    console.log('Test document saved:', doc);
  })
  .catch(error => {
    console.error('Error saving test document:', error);
  });

Запустите сценарий Node.js, и если все настроено правильно, вы должны увидеть свой тестовый документ, зарегистрированный в консоли.

6. Заключение

Соединение MongoDB с Node.js может улучшить ваши веб-приложения, предоставив надежное решение для работы с базами данных. Следуя этому руководству, вы установили базовое соединение с помощью Mongoose, открыв путь для более сложных операций и запросов в будущем.