در مطالب قیل توضیح دادیم که تکنولوژی Oracle Active Data Guard یکی از روشهایی که ما میتونیم با استفاده ازش سریعاً از قطعی جلوگیری کنیم. خب قبل از اینکه معماری Active Data Guard رو توضیح بدیم باید یکسری تعاریف رو باهم مرور کنیم:
-
RMAN = یکی از راههای بازیابیاطلاعات در بحث high availability استفاده از RMAN است. RMAN ابزار Recovery Manager اوراکل است که استفادههای بسیاری دارد. با استفاده از این ابزار شما میتوانید اطلاعات را بکآپگیری و بازیابی کنید، حتی میتونید یک TableSpace خاص رو یا یک DataFile خاص رو ازش بکآپ بگیرید. اگر خرابی در دیتا به وجود اومده باشه شما با این ابزار میتونید خرابی دیتا رو بازیابی کنید.
RMAN از بکآپ دیسکها و Archive Logها برای ریستور و ریکاوری استفاده میکنه. همچنین شما با استفاده از ابزار RMAN میتونید سرور standby بسازید که بحث اصلی ما در Active Data Guard همین standby است. - سرور Standby = سروری که در زمانهایی که سرور اصلی (primary) شما به مشکل میخوره و قطع میشه(مثل خرابی فایلهای اصلی دیتابیس، نفض فنی، به مشکل خوردن ارتباط کاربران با سرور اصلی به هر دلیل و یا یک قطعی برنامهریزی شده) پس این سرور میتونه جایگزین سرور اصلی بشه
- DataGuard = به مجموعه سرور primary و standby و ارتباط بین این ۲ تکنولوژی Data Guard میگویند. که یک دیتابیس اصلی داره که تراکنشهای کاربران مثل خواندن و نوشتن و ... در آن انجام میشه و یک یا چند دیتابیس standby که اطلاعات از سرور اصلی باهاشون sync میشه (البته sync هم انواع مختلفی داره که به موقع به هر کدوم میپردازیم)
- Active DataGuard = از نسخه ۱۱ به بعد این تکنولوژی معرفی شد. تفاوت Active DataGuard با DataGuard اینه که شما در تکنولوژی DataGuard اوراکل سرور standby تا زمانی که سرور primary در مدار باشه عملاً استفادهای نداشت و فقط دیتا باهاش sync میشد و سرور standby در وضعیت mount به سر میبرد. منتها در نسخه ۱۱ با ارائه Real Time Apply شما میتونید وضعیت دیتابیستون رو در حالت open قرار بدید و از سرور stanby استفاده کنید (گزارش بگیرید یا حتی با استفاده از RMAN بکآپهاتون رو از این سرور بگیرید و یا این سرور standby اگه در وضعیت logical میتونید حتی روش Index تعریف کنید و ساختار فیزیکی متفاوتی از سرور اصلی در آن داشته باشید.
- DataGuard Broker = یک چارچوب مدیریتی توزیع شده است که ایجاد، نگهداری و نظارت بر تنظیمات DataGuard رو به عهده داره
مزیت سرور Standby یا RMAN
سرور standby در کمترین زمان ممکن میتونه جایگزین سرور اصلی بشه و به دلیل اینکه اطلاعات در عصر حاظر برای سازمانها بسیار مهم است و همچنین دسترسی سریع کاربران به اطلاعات بسیار حائز اهمیت است راهکار Oracle Active DataGuard برای سازمانها پیادهسازی میشه
انواع سرور Standby
همانطور که قبلاً گفتیم سرور Standby میتونه چند نوع باشه:
- Physical
- Logical
اگه از 11g به بعد بخوایم در نظر بگیریم سرور physical سروری است که ساختار فیزیکی آن کاملاً مشابه سرور اصلی است. منتها در حالت readonly است و شما فقط میتونید ازش select بگیرید و دیگه insert و یا تغییرات ساختاری در دیتابیس وجود نداره
اما سرور Logical سروری است که در وضعیت r/w قرار داره و حتی میتونه ساختار فیزیکیاش با سرور اصلی متفاوت باشه. یعنی میتونید روش index بسازید یا حتی جدول جدید بسازید و یا حتی schema های جدید بر روی آن بسازید و دیتا روش insert کنید منتها sync آن با سرور اصلی یکطرفه است یعنی تغییراتی که شما روی سرور Logical میدید روی سرور Primary اعمال نمیشود.
در شکل زیر یک سررو primary داریم که با استفاده از Async یا Sync میاد Redo ها رو روی سرور Physical Standby مینویسه
و با استفاده از SQL میاد کپی دادهها را در Logical Standby مینویسه در حقیقت به همین خاطره که بهش میگن Logical Standby
نکته: کپی داده با استفاده از Redo یک مفهوم فیزیکی است و کپی با SQL یک مفهوم منطقی است. به همین خاطر بهش Logical Standby گفته میشود.