یک روز ، یک جمله ...

امروز به هر کاری که قراره انجام بدی، باور داشته باش

05 اسفند

آموزش راهکارهای HA و DR در SQL Server - بخش چهارم مطلب ویژه

در بخش چهارم این دوره آموزشی می خواهیم به بررسی راهکار Log Shipping بپردازیم. با ما همراه باشید.

آشنایی با Log Shipping :

تفاوت های بازگردانی اطلاعات در زمان بروز فاجعه:

در حالت Simple Recovery مدت زمان طولانی جهت بازگردانی اطلاعات در مقابل بزرگی دیتابیس طول خواهد کشید.

در حالت Full Recovery مدت زمان طولانی تری نسبت به حالت Simple Recovery طول خواهد کشید مگر اینکه به طور همزمان یک سرویس SQL دیگر در یک محیط دیگر داشته باشید و بازگردانی Full Backup خود را با ساختار With NoRecovery روی آن انجام دهید و پس از آن در بازه زمانی های مشخص اقدام به بازگردانی Log Backup ها نمایید. در این صورت هر زمان که فاجعه رخ دهد، شما با بازگردانی آخرین Log Backup و تغییر حالت دیتابیس از NoRecovery به Recovery می توانید در کمترین زمان ممکن اقدام به ارائه سرویس نمایید. این ویژگی در ساختار Simple Recovery وجود ندارد. به این ویژگی Log Shipping می گویند.

برای استفاده از این ویژگی می توانید از دو طریق زیر اقدام به فعالسازی Log Shipping نمایید:

  • از طریق محیط SSMS Wizard و با انتخاب گزینه Database Properties
  • از طریق ایجاد Stored Procedures برای ساختار دستی

جهت استفاده از SSMS Wizard برای پیاده سازی Log Shipping مراحل زیر را طی نمایید:

بر روی دیتابیس مدنظر خود راست کلیک کرده و گزینه Database Properties را انتخاب نمایید.

از صفحه نمایش داده شده گزینه Transaction Log Shipping را انتخاب کرده و گزینه Enable this as a … را فعال نمایید.

با انتخاب دکمه Backup Settings می توانید مسیر مربوط به قرارگیری Backup ها را تعیین نمایید و همچنین زمانبندی مربوط به تهیه Log Backup ها را نیز می توانید تنظیم نمایید. زمان استاندارد برای این بخش هر 15 دقیقه یکبار می باشد.

پس از انجام تنظیمات Backup Settings می بایست در بخش Transaction Log Shipping اقدام به انتخاب Secondary Server نماییم. این بخش مربوط به نقطه ای است که در صورت بروز رخداد قرار است ادامه سرویس دهی از آنجا صورت پذیرد. برای این کار بر روی گزینه Add کلیک نمایید، سپس اقدام به برقراری اتصال به سرور ثانویه کنید. در سربرگ اول شما 3 انتخاب خواهید داشت:

  • اقدام به تهیه Full Backup از دیتابیس اصلی و بازگردانی در سرور ثانویه جهت ایجاد دیتابیس در صورت عدم وجود آن
  • اقدام به بازگردانی نسخه Full Backup تهیه شده از دیتابیس و ایجاد دیتابیس در صورت عدم وجود آن
  • تمام شرایط برای دیتابیس ثانویه برقرار شده است

در سربرگ دوم می بایست مسیری را تعریف نمایید که قرار است Backup ها در سرور ثانویه در آن مسیر قرار بگیرند. نام Job و زمانبندی اجرای آن را نیز در همین سربرگ تعیین نمایید.

در سربرگ سوم می بایست تعیین نمایید که وضعیت دیتابیس در زمان بازگردانی backup Log ها به چه صورت باشد. حالات موجود به شرح زیر است:

  • حالت No Recovery Mode که قبلا توضیح داده شده است
  • حالت Standby Mode که به حالتی گفته می شود که در زمان بازگردانی دیتابیس، می توانید دیتابیس را از دسترس خارج نمایید و بعد از آن دیتابیس در دسترس قرار گیرد. در این بخش می توانید تعیین نماید که مدت زمان تاخیر در بازگردانی هر Backup Log چقدر باشد.

نکته: در صورتیکه نیاز به اتصال یک سرور سوم جهت مانیتور کردن دو سرور اول به لحاظ اجرای فرآیند Log Shipping دارید و می خواهید Alert های ایجاد شده را در یک سرور سوم مانیتور نمایید، در بخش Transaction Log Shipping قسمت Monitor Server Instance را تکمیل نمایید.

نکته: توجه داشته باشید که بخش Monitor Server Instance تنها در همان ابتدای انجام فرآیند Log Shipping فعال می باشد. در صورت اعمال نهایی تنظیمات Log Shipping و مراجعه مجدد به این بخش، امکان تنظیم این بخش وجود ندارد و تنها را استفاده از Script هایی می باشد که برای این منظور ایجاد می شوند.

نکته: یکی از روش های مدیریت و عیب یابی تنظیمات Transaction Log Shipping استفاده از ویژگی Script در همان بخش Transaction Log Shipping می باشد. برای این کار بر روی دکمه Script Configuration کلیک کرده و گزینه Script Configuration to New Query Window را انتخاب نمایید. در این بخش می توانید محتویات Job های ایجاد شده برای روند Log Shipping را مشاهده و ویرایش نمایید.

نکته: مفاهیم بیان شده در بالا، در تمام نسخه های SQL Server قابل انجام است، اما در نسخه Express استفاده از Wizard امکان پذیر نیست و می بایست به صورت Script اقدام به ایجاد Log Shipping کرد.

راه اندازی Failover Clustering :

یکی از راهکارهای Availability ایجاد سرویس کلاسترینگ بین سرویس های موجود می باشد. قطعا سرویس SQL نیز از این قائده مستثنا نبوده و در این سرویس جایگاه ویژه ای دارد. جهت آشنایی بیشتر با مفهوم کلاسترینگ به موارد زیر توجه نمایید:

  • سرویس کلاسترینگ برای برقراری HA می باشد
  • کلاسترینگ در سطح سرویس راه اندازی می شود
  • سرویس کلاسترینگ تحت سیستم عامل ویندوز پیاده سازی می شود
  • کلاسترینگ برای سرویس SQL از نسخه 6.5 به بعد پیاده سازی گردید و از نسخه 2000 به بعد بسیار بهینه گردید

نکته: با وجود سرویس کلاسترینگ باز هم نیاز به DRP خواهید داشت.

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

رضا اردانه

مدیریت وب سایت آموزش دیجیتال

نظر دادن

خبرنامه

برای دریافت جدیدترین خبرهای سایت در خبرنامه عضو شوید