پرش به مطلب اصلی

MongoDB + Mongo Express

MongoDB یک دیتابیس قدرت‌مند و منعطف است که شیوه‌ی ذخیره و بازیابی اطلاعات را برای کاربران آسان کرده است. این ابزار برای داده‌های با حجم بالا و بدون ساختار طراحی شده تا راهکاری مقیاس‌پذیر و مناسب ارایه می‌دهد. رویکرد MongoDB در ذخیره‌ی داده‌ها Document-Based است به این معنا که داده‌ها در قالبی شبیه به JSON قرار می‌گیرند؛ به همین دلیل،‌توسعه‌دهندگان می‌توانند ساختارهای پیچیده و آرایه‌های تودرتو را در MongoDB ذخیره کنند.

علاوه‌بر ویژگی‌های متعدد این دیتابیس برای ساخت اپلیکیشنی پایدار و مقیاس‌پذیر، می‌توانید به‌راحتی و با یک کلیک آن را به Mongo Express متصل کنید تا با دانش فنی کم‌تر و از طریق یک رابط مبتنی بر وب نیز بتوانید داده‌هایتان را مدیریت کنید.

استقرار با یک کلیک

به کمک اپلیکیشن‌های آماده‌ی کانتینر ابری آروان راه‌اندازی MongoDB تنها با یک کلیک امکان‌پذیر است.

استفاده از MongoDB

پس از استقرار اپلیکیشن بر بستر کانتینر ابری آروان، می‌توانید از طریق کنسول این اپلیکیشن به آن دسترسی داشته باشید.

برای ورود به Shell مونگودی‌بی می‌‌توانید از دستور mongo استفاده کنید. پس از آن می‌توانید دستور help را برای دریافت راهنمای کار با ترمینال mongo اجرا کنید.

ورود به MongoDB

برای ورود و احراز هویت در MongoDB از دستور زیر استفاده کنید:

mongo --username root

از شما خواسته می‌شود پسورد root را وارد کنید. این مقدار همان پسوردی است که هنگام انتخاب منابع در پنل ابر آروان وارد کرده‌اید.

ساخت دیتابیس

پس از وارد شدن به MongoDB می‌توانید از این دستور برای مشاهده‌ی لیست دیتابیس‌های موجود استفاده کنید:

show dbs

دیتابیس‌های admin و local که در خروجی مشاهده می‌کنید بخشی از کلاستر MongoDB هستند.

برای ساخت یک دیتابیس جدید دستور زیر را اجرا کنید:

use firstdb

به‌جای firstdb نام دل‌خواه‌تان را وارد کنید.

اگر دوباره دستور show dbs را اجرا کنید نام دیتابیس جدیدی که ساخته‌اید را نمی‌بینید؛ زیرا MongoDB فقط زمانی دیتابیس‌ جدید را می‌سازد که در آن داده‌ای Insert کنید. مثلن می‌‌توانید با دستور زیر یک Collection در این دیتابیس بسازید و به آن داده اضافه کنید:

db.user.insert({name: "Ali Hafezi", age: 25})

Insert کردن داده

برای اضافه کردن یک Document به یک Collection باید از دستور ()db.collection.insertOne و برای اضافه کردن چند داکیومنت به یک Collection از ()db.collection.insertMany استفاده کنید. برای نمونه، دستور زیر یک Document به Collectionای به ‌نام archive اضافه می‌کند:

db.archive.insertOne(
{ item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
)

یا دستور زیر سه Document را به Collectionای به ‌نام archive اضافه می‌کند:

db.archive.insertMany([
{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },
{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },
{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }
])

کوئری به دیتابیس

برای دریافت داده‌ها از MongoDB و کوئری زدن به آن از ( {} )db.collection.find استفاده می‌کنیم. برای نمونه دستور زیر را در نظر بگیرید:

db.archive.find( {} )

این کوئری همه‌ی داده‌های کالکشن archive را نمایش می‌دهد و معادل عبارت SQL زیر است:

SELECT * FROM archive

می‌توانیم برای هر کوئری شروطی هم تعیین کنیم. مثلن کوئری دریافت همه‌ی داکیومنت‌هایی که مقدار status در آن‌ها D باشد به‌شکل زیر است:

db.archive.find( { status: "D" } )

که معادل SQL آن به‌شکل زیر است:

SELECT * FROM archive WHERE status = "D"

برای بررسی جزییات بیش‌تر کوئری‌های MongoDB می‌توانید از راهنمای آن استفاده کنید.

اتصال به Mongo Express

Mongo Express یک رابط مدیریت دیتابیس مبتنی بر وب است که بستری ساده برای تعامل با پایگاه داده در اختیارتان می‌گذارد. با اتصال MongoDB به Mongo Express می‌توانید به‌راحتی داده‌های خود را مدیریت کنید، بدون کد کوئری بزنید و به‌شکل آنی داده‌هایتان را کنترل کنید.

به کمک اپلیکیشن‌های آماده‌ی کانتینر ابری آروان راه‌اندازی Mongo Express تنها با یک کلیک امکان‌پذیر است.

پس از انتخاب این اپلیکیشن و تعیین منابع باید برای آن یک نام کاربری و رمز عبور و اطلاعات MongoDB مانند Username، پسورد و پورت را وارد کنید.

اگر هنگام ساخت اپلیکیشن تغییری در تنظیمات پیش‌فرض MongoDB نداده باشید نام کاربری آن root و پورت آن 27017 است.

پس از ۳۰ ثانیه می‌توانید از طریق دامنه‌ی رایگان آروان یا دامنه‌ی شخصی‌تان (اگر آن را تنظیم کرده باشید) و وارد کردن نام‌ کاربری و رمز عبوری که تعیین کرده‌اید به این اپلیکیشن دسترسی داشته باشید.

سپس امکان مشاهده‌ی همه‌ی داده‌ها را در این رابط کاربری خواهید داشت.