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

فعال سازی Replica در Mongodb


در ادامه، آموزش نحوهٔ فعال‌سازی Replica را در سرویس دیتابیس مونگو دی بی به شما ارائه می‌دهیم.

دیتابیس MongoDB این قابلیت را دارد که داده‌ها را روی چندین سرور ذخیره و از آن‌ها استفاده کند. اما در برخی مواقع، نیاز است که این ویژگی به‌صورت تک‌سروره اجرا شود. برای فعال‌سازی Replica در دیتابیس ابری MongoDB چابکان، کافی است ابتدا این قابلیت را از طریق تنظیمات سرویس فعال کرده، تنظیمات را ذخیره کنید و پس از ری‌استارت شدن سرویس، از طریق کنسول، Replica موردنظر را تنظیم نمایید.

مرحلهٔ اول: ایجاد key

در مرحلهٔ اول باید یک فایل کلید (key) برای Replica ایجاد کنید. با وارد کردن دستور زیر در کنسول سرویس خود، می‌توانید یک فایل کلید به نام replica.key بسازید. (توجه داشته باشید که این فایل باید با همین نام و در مسیر /data/db قرار گیرد.)

openssl rand -base64 756 > /data/db/replica.key && chmod 600 /data/db/replica.key

مرحله دوم: تنظیم Replica به صورت تک‌سرور

برای انجام این کار، ابتدا باید از داشبورد تنظیمات سرویس MongoDB کلید Replica را فعال کنید.

Replica دیتابیس MongoDB در چابکان

فراموش نکنید

حتما پس از فعال‌سازی کلید Replica در تنظیمات، روی دکمه ذخیره تغییرات کلیک کنید.

حال مجدد به قسمت کنسول سرویس خود رفته و دستورات زیر را وارد کنید:

ابتدا با استفاده از دستور زیر وارد mongo shell می شویم (بجای USERNAME و PASSWORD اطلاعات خود را وارد کنید):

mongo -u USERNAME -p PASSWORD

سپس دستور زیر را وارد کنید (به‌جای HOST و PORT اطلاعات سرویس خود را قرار دهید):

rs.initiate({
_id: 'mongo-set',
protocolVersion: 1,
members: [
{_id: 0, host: 'HOST:PORT'}
]
});

مرحله سوم: بررسی وضعیت Replica

جهت اطمینان از درستی فرایند می‌توانید دستور زیر را اجرا کنید:

rs.status();

در خروجی این دستور، مقدار myState را بررسی کنید. این مقدار به شکل زیر تفسیر می‌شود:

کدنام مستعارمعنی
1 ✅ حالت درستPRIMARYکلاستر آماده استفاده است
2SECENDARYوضعیت read-only، نیاز به PRIMARY
3RECOVERINGکلاستر هنوز آماده نیست
7ARBITERحالت فقط رای‌دهنده
0 یا nullERRORخطا در کلاستر
اطلاعات سرویس

اطلاعات مربوط به سرویس مانند آدرس سرور، پورت، نام کاربری و رمزعبور پیشفرض را می‌توانید در داشبورد سرویس مشاهده کنید:

Replica دیتابیس MongoDB در چابکان


خرید سرویس ابری MongoDB از چابکان