Соединение MongoDB с Node.js — важнейший навык для современных веб-разработчиков. В этом руководстве мы шаг за шагом проведем вас через этот процесс, гарантируя, что вы сможете легко интегрировать эти мощные технологии.
Введение
MongoDB, ведущая база данных NoSQL, известна своей гибкостью и масштабируемостью. Вы можете создавать эффективные и масштабируемые веб-приложения с помощью Node.js, мощной среды выполнения JavaScript. Давайте углубимся в шаги, которые помогут сделать это соединение беспрепятственным.
Оглавление
- Предварительные условия
- Настройка МонгоБД
- Инициирование проекта Node.js
- Подключение к MongoDB с помощью Mongoose
- Тестирование соединения
- Заключение
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. Проверка соединения
Чтобы проверить соединение:
- Создайте простую схему и модель с помощью Mongoose.
- Вставьте документ в коллекцию MongoDB.
- Получите и запишите документ в консоль.
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, открыв путь для более сложных операций и запросов в будущем.