اتصال به MongoDB با استفاده از MongoDB Compass

در دنیای مدرن توسعه نرم افزار، پایگاه دادهها نقش حیاتی در ذخیره ، بازیابی و مدیریت داده ها ایفا میکنند. در حالی که پایگاه داده های رابطه ای (Relational Databases) همچنان محبوب هستند ، اما در سال های اخیر پایگاه داده های NoSQL به دلیل انعطاف پذیری بالا و مقیاس پذیری بهتر ، توجه بسیاری از توسعه دهندگان را به خود جلب کرده اند. MongoDB یکی از معروفترین پایگاه داده های NoSQL است که با ساختار مبتنی بر سند (Document-based) خود، جایگزینی قدرتمند و کارآمد برای بسیاری از سیستم های کلاسیک ارائه داده است. استفاده از آن به ویژه در پروژه های مدرن مانند برنامه های تحت وب، موبایل، و سیستمهای داده محور بسیار رایج شده است.
مجموعه پارس وب سرور ، امکان استفاده از این دیتابیس را در هاست های پایتون و هاست های نود جی اس خود برای کاربران فراهم کرده است. همچنین پنل گرافیکی ساخت این دیتابیس را برای اولین بار در ایران ، به سی پنل برای سهولت کار کاربران اضافه کردیم. در آموزش های قبلی ، نحوه ساخت دیتابیس MongoDB و اتصال به آن با استفاده از نرم افزار studio 3t را بررسی کردیم. در این آموزش قرار است تا مدیریت دیتابیس مونگو دی بی را با استفاده از ابزار دیگری به نام MongoDB Compass بررسی کنیم.
ساخت دیتابیس مونگو دی بی :
برای این مورد ابتدا با ورود به سی پنل ، نسبت به ساختن دیتابیس مونگو اقدام می کنیم. از بخش Databases بر روی MongoDB Databases کلیک می کنیم تا وارد این بخش شده و دیتابیس را ایجاد کنیم.
در صفحه جدید ، فیلد های مورد نیاز برای ایجاد دیتابیس را مشاهده می کنیم. به ترتیب بنا بر مشخصاتی که مد نظر ماست ، فیلد ها را وارد می کنیم و بر روی Create Database کلیک می کنیم تا دیتابیس ما را با یوزر و پسورد مذکور ایجاد کند.
Database Name: نام دیتابیس را در این بخش وارد می کنیم.
UserName: نام یوزری که می خواهیم به دیتابیس اضافه کنیم را در این فیلد قرار می دهیم.
password: رمز عبور متناظر با یوزر را در این بخش ایجاد می کنیم.
نکته: توجه بفرمایید که یوزرنیم هاست شما به عنوان یک پیشوند به دیتابیس و یوزر شما اضافه می شود. به عنوان مثال یوزر این هاست سی پنل mytestin می باشد. این یوزرنیم به همراه یک آندرلاین پیش از نام دیتابیس قرار می گیرد و پس از ایجاد، به صورت mytestin_dbtest ساخته می شود. در تصویر زیر یک نمونه از رکورد های ایجاد شده را می توانیم مشاهده کنیم.
در ضمن هر زمان نیاز به تهیه بکاپ از دیتابیس خود دارید ، می توانید با استفاده از گزینه Generate backup می توانید یک خروجی از اطلاعات خود داشته باشید. با کلیک بر روی این گزینه ، پس از دقایقی (وابسته به حجم اطلاعات و دیتابیس شما ) یک فایل در روت فایل منجر شما ایجاد می شود که می توانید دانلود بفرمایید.
پس از ایجاد دیتابیس ، می توانید با استفاده از کانکشن استرینگ زیر ، پروژه خود را به دیتابیس مونگو متصل کرده و استفاده بفرمایید:
mongodb://mongodb_user:password@localhost:27017/mongodb_db
توجه داشته باشید که استفاده از کارکترهای زیر برای پسورد به دلیل تداخل با علامت های استفاده شده در کانکشن استرینگ مجاز نیستند:
$ : / ? # [ ] @
به عنوان مثال با توجه به مشخصاتی که وارد کردیم ، کانکشن استرینگ ما به صورت زیر می شود:
mongodb://mytestin_usertest:password@localhost:27017/mytestin_dbtest
در نظر داشته باشید که در برخی موارد ، در صورت متصل نشدن به جای مقدار localhost ، می توانیم مقدار 127.0.0.1 را وارد کرده و بررسی کنیم.
مدیریت دیتابیس از راه دور با استفاده از MongoDB Compass
یکی از ابزار هایی که برای اتصال و مدیریت از راه دور دیتابیس های مونگو استفاده می شود ، MongoDB Compass می باشد. این ابزار که رایگان بوده و توسط سورس اصلی MongoDB معرفی شده است ، به کاربران اجازه میدهد تا بهراحتی به دیتابیسهای محلی یا از راه دور متصل شده و کوئریهای خود را اجرا و دادهها را مدیریت کنند. در این آموزش قصد داریم تا نحوه اتصال به این نرم افزار و استفاده از آن را بررسی کنیم.
برای نصب و استفاده از این برنامه ، می توانید آنرا از لینک دانلود MongoDB Compass ، دریافت کرده و استفاده بفرمایید. پس از دریافت این ابزار و نصب کردن آن ، بر روی آن کلیک کرده و وارد محیط برنامه شوید.
فضایی که مشاهده می کنید ، به مانند تصویر زیر می باشد. به منظور این که یک اتصال جدید با دیتابیس mongo در هاست خود شکل دهیم ، ابتدا بر روی گزینه Add New Connection کلیک می کنیم تا در صفحه جدید بتوانیم مشخصات دیتابیس را وارد کنیم.
به دو روش می توانیم به دیتابیس مونگو متصل شویم که در ادامه این موارد را باهم بررسی می کنیم.
1- استفاده از کانکشن استرینگ () :
در این روش ، در قسمت uri که نمایش داده می شود ، کانکشن استرینگ را به صورت کامل با توجه به الگویی که بالاتر معرفی شد ، وارد می کنیم. مانند تصویر زیر عمل می کنیم.
با وارد کردن کانکشن استرینگ ، فیلد Name به صورت خودکار پر می شود که می توانید این مورد را تغییر دهید. همچنین توجه بفرمایید که مقادیری که به صورت * بعد از نام یوز در تصویر مشاهده می کنید ، پسورد مربوط به یوزر وارد شده است. در MongoDB Compass ، این مقدار را نمایش نداده و به عنوان * نشان می دهد.
نکته: در این آموزش از ip هاست برای اتصال استفاده شده است. اگر دامنه شما به هاست متصل نشده است و یا دامنه شما به cdn هایی نظیر کلادفلر و یا آروان کلاد متصل باشد ، باید از ip هاست استفاده بفرمایید. اما در صورتی که دی ان اس های مستقیم هاست بر روی دامنه شما ست شده اند ، می توانید به جای ip از نام دامنه استفاده بفرمایید.
2- استفاده از نام دیتابیس و یوزر و پسورد :
بر خلاف روش قبل که تمامی اطلاعات را مستقیم از بخش URI وارد می کردیم ، در روش جدید نیاز داریم تا اطلاعات را به صورت مجزا از هم وارد کنیم. از بخش Name می توانید یک اسم خاص برای این کانکشن قرار دهید تا در لیست کانکشن ها که در سمت چپ MongoDB Compass قرار گیرد و از رکورد های دیگر متمایز باشد. از فیلد Color هم می توانید یک رنگ برای این کانکشن در منو ست کنید که صرفا جنبه ظاهری دارد. فیلد Name را در صورت نیاز ، وارد بفرمایید و سپس بر روی گزینه Advanced Connection Options کلیک می کنیم. در این بخش اطلاعات اتصال به دیتابیس را وارد کرده و پیکربندی را صورت می دهیم.
در این بخش tab های مختلفی را مشاهده می کنیم که برای پیکربندی تنظیمات استفاده می شود. برای اتصال ، ابتدا از تب General مشخصات اولیه را باید ست کنیم. در بخش Connection String Scheme باید گزینه mongodb را انتخاب کنیم.(این گزینه به صورت دیفالت انتخاب می شود.) سپس در بخش Host ، یک رکورد دیفالت به صورت (localhost:27017) وجود دارد. به جای مقدار localhost ، باید نام دامنه هاست و یا آی پی هاست را قرار دهیم. مقدار پورت هم باید بر روی 27017 باشد.
پس از اعمال این موارد ، بر روی تب Authentication کلیک می کنیم. در این بخش باید مشخصات دیتابیس و مکانیزم اتصال به MongoDB را انتخاب کنیم. از بخش Authentication Method ، روش اتصال را مطابق تصویر زیر بر روی Username/Password قرار می دهیم. به مانند تصویر زیر عمل می کنیم.
Username : در این فیلد باید نام یوزر دیتابیس را قرار دهیم که به دیتابیس اضافه شده است.
Password : در این بخش پسورد متناظر با یوزری که به دیتابیس اضافه شده است باید قرار دهیم.
نکته : دقت بفرمایید که حتما بخش Authentication Mechanism ، بر روی گزینه SCRAM-SHA-256 باشد تا بتوانید به درستی به دیتابیس متصل شوید.
پس از انجام تمامی این موارد ، بر روی گزینه save and connect کلیک بفرمایید تا این اتصال صورت گیرد. اگر تمامی موارد را به درستی وارد کرده باشید ، پیغامی تحت عنوان (Connected to Database_name) مشاهده میفرمایید. در این صورت ، شما یک رکورد جدید در نوار سمت چپ برنامه در قسمت Connections مشاهده میفرمایید که رکورد دیتابیس شما می باشد. با کلیک بر روی آن ، اطلاعات دیتابیس و موارد مدیریتی را می توانید مطابق تصویر زیر مشاهده بفرمایید.
بنا بر این مراحل ، می توانید به دیتابیس خود متصل شده و مواردی نظیر ایمپورت کردن اطلاعات ، حذف و یا تغییر در مشخصات و اطلاعات دیتابیس را انجام دهید.
پس از اینکه این موارد را وارد کردید ، بر روی گزینه save and connect کلیک بفرمایید. مشاهده می کنید که به دیتابیس متصل شده و در نوار سمت چپ اپلیکیشن ، این رکورد برای شما اضافه می شود. دفعات بعد دیگر نیاز به اتصال مجدد نمی باشد و این مورد ذخیره باقی می ماند. در صورتی که موفق به اتصال نشدید و یا با مورد خاصی مواجه شدید ، می توانید از طریق ارسال تیکت پشتیبانی با همکاران ما ارتباط بگیرید تا این مورد بررسی و حل کنند.