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

ایجاد دیتابیس جدید در لیارا
برای ایجاد دیتابیس جدید در پنل لیارا، ابتدا به صفحه دیتابیسها بروید. سپس دیتابیس مورد نظر خود را از لیست انتخاب کنید یا روی گزینه + ایجاد دیتابیس جدید در بالا-چپ کلیک کنید.
در صفحه بعد (صفحه انتخاب سرویس)، نوع دیتابیس مورد نظر (مانند MongoDB) را انتخاب کنید، بسته و ظرفیت مورد نیاز خود را تعیین کرده و سپس تأیید و خرید را انجام دهید.
ظرفیت انتخاب شده برای دیتابیس در آینده قابل تغییر است، بنابراین میتوانید متناسب با نیاز پروژه آن را ارتقا دهید.
پس از ایجاد دیتابیس، اطلاعات مورد نیاز برای اتصال به آن در اختیار شما قرار میگیرد که شامل موارد زیر است:
- هاست
- پورت
- نام کاربری
- رمز عبور
- نام دیتابیس
- نسخهی دیتابیس
این اطلاعات امنیتی هستند و نگهداری ایمن آنها اهمیت بالایی دارد.
با هاست ابری MongoDB لیارا، زیرساختی مطمئن، سریع و آماده را برای ذخیرهسازی دادههای اپلیکیشن خود در اختیار خواهید داشت. بدون نیاز به پیکربندیهای پیچیده، تنها در چند ثانیه دیتابیس خود را راهاندازی کرده و از اتصال پایدار و امن به آن بهرهمند شوید.
✅ امکان اتصال امن✅ بکآپگیری خودکار و رمزنگاریشده✅ عملکرد پایدار و سریع در کنار ترافیک نامحدود
خرید و راهاندازی سریع دیتابیس MongoDB
اتصال برنامه به دیتابیس
برای اتصال برنامه خود به دیتابیس MongoDB که در لیارا ایجاد کردهاید، کافی است یکی از کتابخانههای ارتباط با MongoDB را به پروژهی خود اضافه کنید. کتابخانه رسمی 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 متصل کرد. اگر از سرویسهایی مانند لیارا استفاده میکنید، تمام اطلاعات اتصال از جمله هاست، پورت، نام کاربری و رمز عبور بهصورت آماده در اختیار شما قرار میگیرد و میتوانید بهراحتی از طریق متغیرهای محیطی، اتصال امن و پایداری را بین برنامه و دیتابیس برقرار کنید. با رعایت اصول امنیتی و استفاده از ابزارهای مناسب، میتوانید زیرساخت دادهای پروژهی خود را بهصورت اصولی و مقیاسپذیر مدیریت کنید.