تو این اسلاید راجع به روشهایی که میشه با اونها دیتاگارد رو مدیریت کرد صحبت کرده
- زمانی که broker پیکربندی شده باشد
- ابزار خط فرمان DGMGRL
- ابزار EM Grid Control
- با استفاده از دستورات SQL و کوئری گرفتن از viewهای دیتادیکشنری
زمانی که broker پیکربندی نشده باشد
- فقط با استفاده از دستورات SQL و کوئری گرفتن از viewهای دیتادیکشنری
اما اگه Gap ای بین دیتابیس primary و standby ایجاد بشه یعنی حتی یک redo سمت primary نوشته شده باشه ولی در سمت standby به هر دلیلی نوشته نشده باشه حالت Gap به وجود میاد
کی ممکنه Gap اتفاق بیوفته:
- مشکل شبکه
- مشکل پروسس LNS (ارسال کننده)
- مشکل پروسس RFS (دریافت کننده)
تو این حالت دیتابیس standby با دیتابیس primary به طور کامل sync نیستند
راهحل اوراکل برای این مشکل به ۲ صورت است:
- Automatic
- Manual
خب فرض کنید Gap ای بین دیتابیسهامون داریم و redo log fileهامون جلو رفتن چون ممکنه زمان زیادی Gap ایجاد شده باشه و ادمی هم متوجه Gap نشده باشه تو این حالت ممکنه بارها redo log buffer ما خالی و پر شده باشه و عملاً sync کردن دیتا رو با مشکل مواجه کنه
همچنین online redo log fileها هم بارها log switch براشون رخ داده و overwrite شدن پس دیگه امکان خوندن از online redo log fileها هم نیس
اینجاست که Archiveهای ما به کمکمون میان
حالت Automatic
تو این حالت RFS به جای اینکه redoها رو بگیره به طور خودکار archiveها رو میگیره و شروع به apply کردن archiveها میکنه
حالت Manual
فرضاً redoها تا ۱۰ تا seq انتقال پیدا میکنند(apply میشوند) ولی آرشیوهای redo شماره ۱۱ وجود نداره ولی ۱۲ به بعد آرشیوهاش موجوده و هرچی هم سرور رو جستجو میکنید seq شماره ۱۱ رو پیدا نمیکنید این Gap فقط با روش manual حل میشه
مثلاً ۱۰ تا seq به سمت دیتابیس گارد نرفتهاند تو این حالت تمام redoهای archive شده در سمت دیتابیس primary به محض برقراری ارتباط شبکه بین دیتابیسها شروع به apply شدن میکنند
اینجا کانفیگ از اول روشی غلط است چون فقط یک یا چند seq انتقال پیدا نکردهاند
انشالله تو پستی جداگونه این مطلب رو شرح خواهم داد
Manually Resolving Gaps - Oracle Data Guard 11gR2