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

مهاجرت

مهاجرت به روش عادی

یکی از روش‌های مهاجرت، استفاده از ابزارهای dump مانند mysqldump برای پایگاه داده MySQL و یا pg_dump برای پایگاه داده PostgreSQL است. بدین صورت که ابتدا از پایگاه داده مبدأ خروجی تهیه شده و سپس این خروجی بر روی پایگاه داده مدیریت‌شده بازیابی (restore) می‌شود. این روش عمدتاً برای پایگاه داده‌های با حجم پایین مناسب است و ممکن است منجر به داون‌تایم گردد؛ چرا که هنگام بازیابی داده لازم است اطمینان حاصل شود که هیچ داده جدیدی روی پایگاه داده قبلی نوشته نمی‌شود و وضعیت به صورت کاملاً ثابت باقی بماند تا داده‌ای از دست نرود.

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

مهاجرت ‌MySQL با روش continuous migration

اگر در خارج از هم‌روش دیتابیس MySQL دارید, می‌توانید آن را به دیتابیس مدیریت شده‌ی هم‌روش انتقال دهید و از مزایای آن بهره‌مند شوید. در این بخش قصد داریم نحوه انتقال را شرح دهیم.

توجه داشته باشید که در دیتابیس مدیریت‌شده‌ی‌ MySQL تنها از InnoDB به عنوان storage engine پشتیبانی می‌شود. در صورتی که از storage engine دیگری مانند MyISAM استفاده می‌کنید قبل از مهاجرت آن را به InnoDB تغییر دهید.

در این روش از پلاگین clone استفاده می‌شود تا یک full backup از دیتابیس شما گرفته شود. سپس با استفاده از replication تغییراتی که روی دیتابیس شما اعمال می‌شود روی دیتابیس مدیریت‌شده‌ی هم‌روش هم اعمال می‌شود. تا زمانی که شما جداسازی را انجام دهید و دیتابیس مدیریت‌شده از دیتابیس قبلی شما کاملا مستقل شود.

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

  • ورژن آن باید 8.0.35 باشد
  • پلاگین clone روی آن نصب شده باشد
  • متغیر character_set_server باید برابر با utf8mb4 باشد
  • باید GTID در آن فعال باشد

با رعایت موارد فوق برای شروع فراید مهاجرت به صفحه‌ی ساخت دیتابیس مدیریت‌شده بروید. ابتدا نام دیتابیس مدیریت‌شده، کلاستر و نیم‌اسپیس آن را وارد کنید.

نوع دیتابیس را MySQL انتخاب کنید:

سپس باید منابع دیتابیس و تعداد نود استندبای مشخص شوند.

در قسمت بعد گزینه‌ی «ساخت با مهاجرت» را انتخاب کنید:

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

یوزری که وارد می‌کنید باید دسترسی BACKUP_ADMIN در دیتابیس مبدا داشته باشد. دکمه‌ی «بررسی سازگاری» را بزنید تا سازگاری دیتابیس مبدا با دیتابیس مدیریت‌شده‌ی هم‌روش بررسی شود.

با کلیک روی دکمه‌ی «ساخت کلاستر دیتابیس» کلاستر با مشخصات داده شده شروع به ساخت خواهد کرد. پس از مدتی در کنسول خواهید دید که دیتابیس مدیریت‌شده با دیتابیس مبدا سینک است. در این حالت می‌توانید دکمه‌ی «جداسازی» را بزنید تا دیتابیس مدیریت‌شده به یک دیتابیس مستقل تبدیل شود. توجه داشته باشید که قبل از جداسازی باید اپلیکیشن شما نوشتن خود را روی دیتابیس مبدا متوقف کند تا داده‌ای از دست نرود.

در صورتی که در فرایند مهاجرت سوالی داشتید یا با مشکلی مواجه شدید از طریق پشتیبانی با ما در میان بگذارید.


مهاجرت PostgreSQL با روش continuous migration

اگر در خارج از همروش دیتابیس PostgreSQL دارید، می‌توانید آن را به همروش انتقال دهید و از مزایای دیتابیس مدیریت شده همروش بهره‌مند شوید. در این بخش قصد داریم تا نحوه انتقال را شرح دهیم.

اگر در دیتابیس مدیریت‌نشده PostgreSQL دارید و قصد مهاجرت به دیتابیس مدیریت‌شده‌ی هم‌روش را دارید، مراحل تقریبا مشابه روش MySQL خواهد بود.

ابتدا پیش‌نیازهای زیر را در دیتابیس مبدا PostgreSQL خود اعمال کنید:

  • یوزری که برای مهاجرت وارد می‌کنید باید دسترسی superuser داشته باشد.

  • نسخه‌ی دیتابیس مدیریت‌شده را هم‌ورژن با دیتابیس مبدا انتخاب کنید تا از بروز ناسازگاری جلوگیری شود.

  • در فایل pg_hba.conf دیتابیس مبدا، اجازه رپلیکیشن را صادر کنید. برای این کار، خط زیر را به انتهای فایل اضافه نمایید:

    host replication all 0.0.0.0/0 md5
  • مقدار wal_level باید روی مقدار logical یا replica تنظیم شده باشد.

  • مقدار listen_addresses باید به گونه‌ای تنظیم شود که اتصال از بیرون مجاز باشد. معمولاً می‌توانید مقدار آن را به صورت زیر قرار دهید:

    listen_addresses = '*'

⚠️ اگر هر یک از این تنظیمات را در فایل کانفیگ دیتابیس خود تغییر دادید، لازم است دیتابیس خودتان را ریستارت کنید تا تنظیمات جدید اعمال شوند. اما اگر تنها فایل pg_hba.conf را تغییر دادید، بارگذاری مجدد (reload) کافی است و نیازی به ریستارت کامل دیتابیس نیست. پس از انجام این تنظیمات، می‌توانید ادامه‌ی مراحل مهاجرت را انجام دهید.

⚠️ هم‌چنین اگر دیتابیس مبدای شما هم روی هم‌روش قرار دارد و به تنظیمات لازم (مانند تغییر فایل pg_hba.conf یا مقداردهی به پارامترهای مورد نیاز) دسترسی ندارید، کافیست یک تیکت پشتیبانی ثبت کنید تا تیم هم‌روش در اسرع وقت این تغییرات را برای شما انجام دهد.

سپس به صفحه‌ی ساخت دیتابیس مدیریت‌شده بروید. در آن‌جا نام دیتابیس مدیریت‌شده، کلاستر و نیم‌اسپیس را وارد کنید.

نوع دیتابیس را PostgreSQL انتخاب کنید:

سپس باید منابع دیتابیس و تعداد نود استندبای را مشخص نمایید.

در قسمت بعد، گزینه‌ی «ساخت با مهاجرت» را انتخاب کنید:

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

با کلیک روی دکمه‌ی «ساخت کلاستر دیتابیس» کلاستر با مشخصات داده‌شده شروع به ساخت خواهد کرد. پس از مدتی در کنسول خواهید دید که دیتابیس مدیریت‌شده با دیتابیس مبدا سینک است. در این حالت می‌توانید دکمه‌ی «جداسازی» را بزنید تا دیتابیس مدیریت‌شده به یک دیتابیس مستقل تبدیل شود. توجه داشته باشید که قبل از جداسازی باید اپلیکیشن شما نوشتن خود را روی دیتابیس مبدا متوقف کند تا داده‌ای از دست نرود.

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

این صفحه مفید بود؟

با ثبت بازخوردتان در بهبود کیفیت مستندات مشارکت داشته باشید.