اگر در جایی مشغول به فعالیت هستید که بر روی سرور آن قابلیت نمایشگر همیشه روشن Always ON Display راه اندازی شده باشد، احتمال دارد این سناریو که در ادامه به آن خواهیم پرداخت برای شما رخ دهد.
ایجاد قابلیت نمایشگر همیشه روشن بر روی سرور و دردسرهای پس از آن
فرض کنید دو عدد سرور دارید که بر روی آن ها قابلیت Always ON راه اندازی کردید و این ها به صورت Synchronous هستند.
حالا سرور دوم از کار افتاده و عملا سبب شده فایل لاگ شما به شدت رشد نماید.
اگر در این حالت دستور زیر رو اجرا کنید.
select name,log_reuse_wait_desc from sys.databases
ملاحظه خواهید کرد که در Wait ها نوشته Availability_group. در این حالت اگر شما بیایید دیتابیس را از Availability_Group خارج کنید مشکلی که پیش میاد این است که به شما خطا میدهد که Chain در فایل LOG با MDF همخوانی ندارد و به نظر می آید دیتابیس شما به مشکل خورده و نه می شود از آن Backup تهیه کرد نه دستورات DBCC اجرا نمود و اگر بانک اطلاعاتی را Detach کنید با مشکلات عدیده ای مواجه خواهید شد.
راهکارهای حل مشکلات احتمالی بعد از راه اندازی Always ON
برای حل این مشکل که پس از راه اندازی قابلیت Always ON سرور دوم از کار بیفتد راهکارهای زیر مفید خواهد بود:
راه حل اول اینکه ارتباط سرور دوم را برقرار کنید تا لاگ ها ارسال شده و این مشکل حل شود.
راه حل دوم تغییر مد Replica از Synchronous به Asynchronous است که سبب میشود این Wait به Log_Backup تبدیل گردد که به راحتی با یک Log Backup مشکل فضای شما حل خواهد شد و مساله ای نخواهید داشت.
اگر اشتباها آمدید دیتابیس را از Availability group حذف کردید راهش این هست که با استفاده از کد زیر:
use Master
Go
ALTER AVAILABILITY GROUP MyAG ADD DATABASE YourDB;
GO
دیتابیس را سوری به AlwaysON اضافه کنید و مراحل بالا را طی کنید.
نویسنده:
مهندس حمیدرضا صادقیان