معرفی Always On :

امروزه در دسترس بودن دائمی سرویس‌ها، اهمیت بالایی دارد و از دسترس خارج شدن دیتابیس‌ها هزینه‌های زیادی را به سازمان‌ها تحمیل می‌نماید. برای دستیابی به در دسترس بودن بالا (High Availability) در هر شرايطی، ضروری است که راهکارهای مناسب با هر سازمان ارائه شود.
دیتابیس SQL Server راه‌های مختلفی را برای پیاده‌سازی HA مانند Replication،Log Shipping ،Mirroring ارائه نموده است. همچنین از نسخه 2012 به بعد این محصول، یک ویژگی به نام Always On به آن اضافه شده است، که دارای قابلیت‌های High Availability و Disaster Recovery می‌باشد.
اگر بخواهیم یک تعریف کلی از Always On داشته باشیم، این است که این ویژگی باعث می‌شود تا تحت هر شرایطی دیتابیس‌های شما قابل سرویس‌دهی باشند.
برای این ویژگی، یک سری اصطلاحات وجود دارد که در این قسمت از مقاله به تعریف آن‌ها می‌پردازیم:
• Availability Group : دیتابیس‌ها و Replicaهای ما به صورت Logical در اینجا گروه‌بندی می‌شوند. در واقع Availability Group یک Logical Container محسوب می‌شود.
• Availability Replicas : Instanceهایی می‌باشند که میزبان دیتابیس‌های HA هستند، در واقع Replicaهای ما هستند.
• Availability Database : دیتابیسی است که با استفاده از ویژگی Always On می‌خواهیم از آن حفاظت کنیم.
• Availability Group Listener : در اینجا تعیین می‌شود که یوزرها چگونه به دیتابیس متصل شوند. این Listener می‌تواند یک Network Name یا IP Address باشد.
پس به طور کلی شما یک Availability Group دارید که در داخل آن گروه‌ها تعدادی Replica وجود دارد، هر Replica از چندین دیتابیس تشکیل شده است.

ویژگی ها :

ویژگی‌های Always On که در سایر راهکارهای HA در SQL Server وجود ندارد، موارد زیر را می‌توان نام برد:
• File stream
• File table
• Column store index
• Contained database
• Replication

مراحل نصب

نحوه Setup کردن Always On دشوار نیست و شامل مراحل زیر می‌باشد:
• Cluster windows : ویندوز سرورهای شما باید به صورت کلاستر و بر روی همه ماشین‌ها نصب شود، تمام ماشین‌ها روی یک کلاستر و بر روی یک Domain Controller قرار دارند.
• Install SQL Server on Nodes : در این مرحله بر روی تمام ماشین‌ها، دیتابیس SQL Server به صورت معمولی نصب می‌شود.
• Enable AlwaysOn Availability Group : در این مرحله سرویس Always On را Enable می‌کنیم.
• Create/Attach/Restore Database : در این مرحله روی دیتابیس Second Replica بکاپ را بازگردانی می‌کنیم.
• Configure AlwaysOn Availability Group : در آخر تنظیمات AlwaysOn Database Group روی پایگاه داده انجام داده و این ویژگی را روی دیتابیس فعال می‌کنیم.

نتیجه گیری

به طور کلی می‌توان گفت، راه‌اندازی AG برای ما مزایای زیادی دارد. از جمله این‌که می‌توان چندین Disaster Site داشت، همچنین می‌توان از آن برای برنامه‌های مهاجرت دیتابیس استفاده کرد و راه‌اندازی و نگهداری از آن سخت نیست. از معایب آن می‌توان گفت، به دلیل آن که نیاز به چند سرور آنلاین و IDLE دارد، هزینه بالایی خواهد داشت.