آنچه در این مقاله میخوانید
راهنمای اتصال به MongoDB با استفاده از Node.JS
۱۷ اسفند ۱۳۹۷
MongoDB یکی از پرکاربردترین پایگاههای داده برای پروژههای Node.js است؛ نه فقط بهخاطر ساختار منعطف و سرعت بالا، بلکه بهخاطر هماهنگی خوبی که با فریمورکهای جاوااسکریپتی دارد. اگر در حال توسعهی یک برنامهی Node.js هستید و میخواهید دادهها را در MongoDB ذخیره کنید، در این مقاله مراحل ساخت دیتابیس، اتصال امن به آن، و استفاده از کتابخانههای محبوب مثل mongodb
و mongoose
را بهصورت عملی و ساده بررسی شده است.

ایجاد دیتابیس جدید در لیارا
برای ایجاد دیتابیس جدید در پنل لیارا به بخش دیتابیس ها رفته و روی گزینه + در قسمت بالا – چپ کلیک کنید. سپس از منوی باز شده نوع دیتابیس قابل انتخاب کردن است. بر روی MongoDB کلیک، و حجم و ظرفیت مورد نیاز را انتخاب کنید.
ظرفیت انتخاب شده برای دیتابیس در آینده قابل تغییر است.
پس از ایجاد دیتابیس اطلاعات مورد نیاز برای اتصال به دیتابیس در اختیار شما قرار میگیرد. این اطلاعات به شرح زیر هستند:
- هاست
- پورت
- نام کاربری
- رمز عبور
این اطلاعات مهم و امنیتی هستند. در نگهداری آنها تلاش کنید.
با هاست ابری MongoDB لیارا، زیرساختی مطمئن، سریع و آماده را برای ذخیرهسازی دادههای اپلیکیشن خود در اختیار خواهید داشت. بدون نیاز به پیکربندیهای پیچیده، تنها در چند ثانیه دیتابیس خود را راهاندازی کرده و از اتصال پایدار و امن به آن بهرهمند شوید.
✅ امکان اتصال امن✅ بکآپگیری خودکار و رمزنگاریشده✅ عملکرد پایدار و سریع در کنار ترافیک نامحدود
خرید و راهاندازی سریع دیتابیس MongoDB
اتصال برنامه به دیتابیس
حالا برای اتصال برنامهی خود به دیتابیس MongoDB که در لیارا ایجاد کردهاید، باید یکی از کتابخانههای ارتباط با MongoDB را به پروژهی Node.js اضافه کنید. کتابخانهی رسمی mongodb
و همچنین کتابخانههای سطح بالاتری مانند mongoose
گزینههای مناسبی هستند که بسته به نیاز پروژه میتوانید از آنها استفاده کنید. این کتابخانهها امکان اتصال، ارسال کوئری و مدیریت دادهها را در اختیار شما قرار میدهند و به راحتی میتوانید با استفاده از اطلاعات اتصال ارائهشده در پنل لیارا، ارتباط بین برنامه و دیتابیس را برقرار کنید.
MongoDB چیست؟
MongoDB
کتابخانه MongoDB
این کتابخانه نسخه رسمی و کامل برای کار با دیتابیس MongoDB است که دسترسی کاملی برای کارها مختلف به شما خواهد داد ولی لازم است کدهای بیشتری بنویسید. برای نصب کد زیر را در دایرکتوری اصلی برنامه اجرا کنید:
npm install mongodb
حال در ابتدای برنامه خود کد زیر را اضافه کنید تا کلاینت دیتابیس را دریافت کنید:
const { MongoClient } = require('mongodb');
مشخصات اتصال به دیتابیس به شکل یک رشته متنی تهیه میشود که ساختار کلی آن به صورت زیر است:
mongodb://username:password@host:port/database?options...
که برای اتصال به سرور محلی «نصب در کامپیوتر شخصی شما» به شکل زیر:
mongodb://localhost:27017/myapp
و برای مثال سرور لیارا به صورت زیر است:
mongodb://root:zJnzi000000000000Mm@s1.liara.ir:31655/myapp
و در آخر با اجرای کد زیر به دیتابیس متصل شویم، اگر دیتابیسی با نام وارد شده وجود نداشته باشد، در اولین اتصال ایجاد خواهد شد.
MongoClient.connect(url, function(err, db) {
if (err) throw err;
console.log("Database created!");
});
Node.js چیست؟
Node.js
استفاده از Mongoose
این کتابخانه با پیادهسازی رابطهای سطح بالاتری سعی در آسانکردن کار با دیتابیس داشته است، شما میتوانید با مراجعه به سایت Mongoose راهنمای استفاده از آن را مشاهده کنید.
const mongoose = require('mongoose');
mongoose.connect('mongodb://root:zJnzi00Mm@s1.liara.ir:31655/myapp', {
useNewUrlParser: true,
authSource: 'admin'
});
دقت کنید که برای اتصال به دیتابیسهای لیارا حتماauthSource: 'admin'
را در تابع اتصال قرار دهید. myapp در آدرسهای فوق به نام دیتابیس مورد نظر شما اشاره میکند. که شما میتوانید آن را به دلخواه انتخاب کنید.
با هاست ابری Node.js در لیارا، اجرای سریع، امن و بدون پیچیدگی اپلیکیشنهای نود خود را تنها در چند دقیقه آغاز کنید.
✅ پشتیبانی کامل از WebSocket✅ استقرار آسان با CLI ✅ اتصال مستقیم به دیتابیسها و دامنه اختصاصی
خرید و راهاندازی هاست Node.js
استفاده از فایل .env برای نگهداری متغیر ها برنامه
برای نگهداری صحیح از متغیرها و تنظیمات حساس برنامه، بهتر است از فایلی با نام .env
استفاده کنید تا وابستگی کد برنامه به این متغیر ها کاهش پیدا کند و از این تنظیمات حساس نگهداری بهتری صورت گیرد. برای استفاده از این مقادیر باید کتابخانهی dotenv را از npm به برنامه خود اضافه کنید. برای مثال فایل متغیر های این برنامه به شکل زیر است:
DB_HOST=s1.liara.ir
DB_USER=root
DB_PASS=000000000000000000000
حال با اجرای کد زیر در ابتدای برنامه فایل متغیر ها لود شده و میتوانید از آدرس های زیر به آن دسترسی داشته باشید:
require('dotenv').config();
process.env.DB_HOST // -> s1.liara.ir
process.env.DB_USER // -> root
process.env.DB_PASS // -> 000000000000000000000
لیارا میتواند به صورت جداگانه فایل .env شما را دریافت و در برنامه اعمال کند یا اینکه در کنسول لیارا و در صفحه برنامه مورد نظر از منوی سمت راست به بخش متغیر های برنامه رفته و به صورت دستی تنظیمات را وارد کنید.
نحوه نصب Node.js روی سرور مجازی اوبونتو Ubuntu
نصب Node.js روی سرور مجازی
جمع بندی
در این راهنما دیدیم که چگونه میتوان با استفاده از کتابخانههای mongodb
و mongoose
، یک برنامهی Node.js را به دیتابیس MongoDB متصل کرد. اگر از سرویسهایی مانند لیارا استفاده میکنید، تمام اطلاعات اتصال از جمله هاست، پورت، نام کاربری و رمز عبور بهصورت آماده در اختیار شما قرار میگیرد و میتوانید بهراحتی از طریق متغیرهای محیطی، اتصال امن و پایداری را بین برنامه و دیتابیس برقرار کنید. با رعایت اصول امنیتی و استفاده از ابزارهای مناسب، میتوانید زیرساخت دادهای پروژهی خود را بهصورت اصولی و مقیاسپذیر مدیریت کنید.