الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

سلسلة دروس الdata Guard

Featured Replies

بتاريخ:
  • كاتب الموضوع

1- تشغيل الData Guard Broker:
لتشغيل الData Guard Broker يجب تهيئة المتغير DG_BROKER_START ليأخذ القيمة true لكل من الPrimary and Standby Database ، في الوضع الافتراضي يأخذ هذا المتغير القيمة false، كذلك يجب استخدام الServer Parameter (SPFILE).
ALTER SYSTEM SET DG_BROKER_START=true;

هذا التغيير يتم حفظه في الSPFILE ويتم تشغيل الData Guard Broker آلياً عند أول تشغيل للInstance.

  • الردود 42
  • المشاهدات 20.4k
  • البداية
  • اخر رد

أكثر المشاركين في هذا الموضوع

Most Popular Posts

  • نظام الBusiness اليوم يتطلب أن تكون قاعدة البيانات متاحة علي الدوام، فلحظات الDowntime قد تكلف الشركات ملايين الدولارات، فالOracle Data Guard تضمن لك مستوي عالي من إتاحة البيانات وكذلك حماية البيانات

  • ناصرمصور
    ناصرمصور

    شكرا ,,, الى الامام....

  • هكذا نكون قد انتهينا من الخطوة الثانية وهي إنشاء الPhysical Standby Database. مرفق لكم ملف عبارة عن مخطط يوضح لكم خطوات تهيئة الOracle Data Guard إبتداءً من تهيئة الPrimary Database وبناء الStandby D

بتاريخ:
  • كاتب الموضوع

2- إنشاء الConfiguration: لإنشاء الConfiguration يجب إتباع الخطوات التالية:
أ- تشغيل ال(Data Guard Command Line Interface (CLI

C:\> DGMGRL
DGMGRL for Solaris:  Version 10.1

Copyright (c) 2000, 2003, Oracle. All rights reserved.

Welcome to DGMGRL, type "help" for information.
DGMGRL>




ب- الاتصال بالPrimary Database

DGMGRL> CONNECT sys/sys@PRIMNET;
Connected



ج- إنشاء ال Broker Configuration

DGMGRL> CREATE CONFIGURATION 'TEST' AS
 PRIMARY DATABASE IS 'PRIM'
 CONNECT IDENTIFIER IS PRIMNET;



قمنا بإنشاء Configuration يسمي TEST وقمنا بتحديد الPrimary Database في هذا الConfiguration وهي PRIM Database لاحظ أننا استخدمنا هنا الDB_UNIQUE_NAME.

سيقوم الCLI بإرجاع المعلومات التالية:

Configuration "TEST" created with primary database "PRIM"



د- التحقق من التهيئة:

DGMGRL> SHOW CONFIGURATION;
Configuration 
 Name:			TEST
 Enabled:		 NO
 Protection Mode: MaxPerformance
 Databases:
PRIM - Primary database

Current status for "TEST":
DISABLED

بتاريخ:
  • كاتب الموضوع

3- إضافة الStandby Database للConfiguration:

DGMGRL> ADD DATABASE 'STAN' AS
CONNECT IDENTIFIER IS STANNET
MAINTAINED AS PHYSICAL;

هكذا قمنا بإضافة الPhysical Standby Database للConfiguration وسيقوم الCLI بإرجاع المعلومات التالية:
Database "STAN" added.

يمكن إعادة الأمر SHOW CONFIGURATION للتأكد من إضافة الStandby Database للConfiguration

DGMGRL> SHOW CONFIGURATION;
Configuration
 Name:			TEST
 Enabled:		 NO
 Protection Mode: MaxPerformance
 Databases:
PRIM - Primary database
STAN	- Physical standby database

Current status for "TEST":
DISABLED

بتاريخ:
  • كاتب الموضوع

4- Setting Database Properties:
بعد إنشاء الConfiguration تستطيع تغيير خصائص قاعدة البيانات (Primary or Standby Database) في أي لحظة.
لمشاهدة خصائص الPrimary Database
DGMGRL> SHOW DATABASE VERBOSE 'PRIM';
ولمشاهدة خصائص الStandby Database

DGMGRL> SHOW DATABASE VERBOSE 'STAN';



تستطيع التغيير في خصائص قاعدة البيانات عن طريق الأمر

DGMGRL> EDIT DATABASE 'DB_UNIQUE_NAME' SET PROPERTY 'PROPERTY_NAME'=’NEW VALUE';


حيث:
DB_UNIQUE_NAME: اسم قاعدة البيانات التي تريد تغيير خصائصها.
:PROPERTY_NAMEتستطيع مشاهدة جميع الProperties التي يمكن تغييرها في قاعدة البيانات عن طريق الأمر SHOW DATABASE VERBOSE 'DB_UNIQUE_NAME'

بتاريخ:
  • كاتب الموضوع

5- تفعيل الConfiguration:
إلي هذه اللحظة لم يتم تفعيل الConfiguration ويمكن التأكد من ذلك عن طريق الأمر SHOW CONFIGURATION، هذا الأمر يوضح لك حالة الConfiguration وهي DISABLE.
تفعيل الConfiguration تسمح للData Guard Broker لإدارة الConfiguration ولجلب الPrimary and Standby Database ليكونا online.
هناك خياران للتفعيل:
أ- تفعيل الConfiguration بما في ذلك جميع قواعد البيانات في الConfiguration
DGMGRL> ENABLE CONFIGURATION;
Enabled.
تستطيع التأكد من التفعيل عن طريق الأمر SHOW CONFIGURATION
ب- تفعيل الStandby Database

DGMGRL> ENABLE DATABASE 'STAN';
Enabled.


تستطيع التأكد من التفعيل عن طريق الأمر SHOW DATABASE ‘STAN’;

بتاريخ:
  • كاتب الموضوع

6- اختيار الProtection Mode:
توفر الData Guard ثلاثة أنواع من الProtection Mode:
أ- Maximum Protection: هذا النمط يضمنك لك أنك لن تفقد أي بيانات في حال حدوث مشكلة في الPrimary Database وذلك لأن الRedo Data لأي عملية ستكتب في كل من الLocal Online Redo Log والStandby Redo Log علي الأقل في Standby Database واحدة قبل أن يتم تثبيتها (Commit).
ولضمان أنك لن تفقد أي بيانات سيتم إغلاق الPrimary Database في حال أنها غير قادرة علي إرسال الRedo Data علي الأقل لRemote Standby Redo Log واحد.
ب- Maximum Availability: هذا النوع يوفر لك أعلي مستوي لحماية البيانات ولكن دون المساس بإتاحة الPrimary Database، فهو يشبه ال الProtection Mode من حيث أن العمليات لا يتم تثبيتها حتى يتم كتابة الRedo Data لهذه العمليات في كل من الLocal Online Redo Log والStandby Redo Log علي الأقل في Standby Database، ولكن هذا النمط يختلف عن الProtection Mode وذلك لأن الPrimary Database لا يتم إغلاقها في حال أنها عجزت عن كتابة الRedo Data في الRemote Standby Redo Log وإنما تعمل الPrimary Database في ال Maximum Performance حتى يتم علاج المشكلة وسوف يتم علاج الثغرات في الRedo Log Files. ولحظة علاج جميع الثغرات في الRedo Log Files ستعمل الPrimary Database مره أخري وبصورة آلية في النمط Maximum Availability.
هذا النمط يضمن لك أيضاً أنك لن تفقد أي بيانات في حال حدوث مشكلة في الPrimary Database.
ج- Maximum Performance: وهو النمط الافتراضي لحظة إنشاء الConfiguration، وهو يوفر أعلي مستوي ممكن لحماية البيانات دون التأثير علي أداء الPrimary Database وذلك بأن يتم تثبيت العمليات حالما يتم تثبيت الRedo Data في الLocal Online Redo Log، بمعني أن العمليات في الPrimary Database لا تنتظر أن يتم استقبال الRedo Data في الStandby Database ليتم تثبيتها في الPrimary Database، بل إذا أصبحت أي Standby Databases غير متاحة فإن العمليات ستستمر بشكل طبيعي في الPrimary Database وسيتم إرسال رسائل تحذيرية في الAlert Log.
إذاً العمليات قد لا تكون متزامنة بين الPrimary and Standby Databases، وإذا حدثت مشكلة في الPrimary Database قد نفقد بعض البيانات التي تم تثبيتها في الPrimary Database ولم يتم تثبيتها في الStandby Database ولكن إذا كانت الشبكة تعمل بشكل جيد فإن كمية البيانات المفقودة ستكون صغيرة جداً أو صفر.
هذا النمط لا يحتاج للStandby Redo Log.

لتفعيل النمط (Maximum Protection or Maximum Availability ) يجب إتباع الخطوات التالية:
1- إنشاء الStandby Redo Log
لابد من إنشاء الStandby Redo Log علي الأقل في Standby Database واحدة.

STARTUP OPEN READ ONLY



ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 
‘D:\ORACLE\PRODUCT\10.1.0\ORADATA\PRIM\REDO4.LOG’
size 10M;



ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 
‘D:\ORACLE\PRODUCT\10.1.0\ORADATA\PRIM\REDO5.LOG’
size 10M;

تأكد من أن حجم الStandby Redo Log يساوي الPrimary Redo Log.

2- تهيئة ال LogXptMode property
يجب تهيئة ال LogXptMode propertyلتأخذ القيمة SYNC في جميع الStandby Database.

DGMGRL> EDIT DATABASE 'STAN' SET PROPERTY 'LogXptMode'='SYNC';


3- أخيراً تفعيل الProtection Mode

DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MAXAVAILABILITY;

بتاريخ:
  • كاتب الموضوع

7- Switchover Operations:
لتغيير الأدوار بين الPrimary Database والStandby Database، حيث تستطيع من خلال الSwitchover تحويل الPrimary Database لتكون Standby Database والعكس دون أن نقد أي بيانات مع Downtime قليل جداً حيث سيتم عمل إعادة تشغيل (Restart) لكل من الPrimary and Standby Database إذا كنا نستخدم Physical Standby Database، أما إذا كنا نستخدم Logical Standby Database فلا نحتاج لذلك.
نحتاج لعملية الSwitchover لعملية صيانة الPrimary Database وتطويرها أو لغيرها من الأسباب وليس بسبب حدوث مشكلة في الPrimary Database.
نحتاج لتحديد الStandby Database التي ستعلب دور الNew Primary Database ولكن قبل إجراء عملية التحويل يجب مراعاة الأتي:
أ- التأكد من أن الPrimary and Standby Database في الوضع Online.
ب- جميع قواعد البيانات المشاركة في الConfiguration تعمل بشكل جيد ودون أي رسائل خطأ.
ج- التأكد من وجود Standby Redo Log في الPrimary Database، إذا لزم الأمر.
وإليك خطوات تنفيذ الSwitchover:
أ- التحقق من الPrimary Database

DGMGRL> SHOW DATABASE VERBOSE 'PRIM';


ب- التأكد من الStandby Database التي ستصبح الPrimary Database الجديدة

DGMGRL> SHOW DATABASE VERBOSE 'ٍSTAN';



ج- تنفيذ الSwitchover

DGMGRL> SWITCHOVER TO "STAN";
Performing switchover NOW. Please wait...
Operation requires shutdown of instance "PRIM" on database
"PRIM".
Shutting down instance "PRIM"...
ORA-01109: database not open

Database dismounted.
ORACLE instance shut down.
Operation requires shutdown of instance "STAN" on database
"STAN".
Shutting down instance "STAN"...
database not mounted
ORACLE instance shut down.
Operation requires startup of instance "PRIM" on database "PRIM".
Starting instance "PRIM"...
ORACLE instance started.
Database mounted.
Operation requires startup of instance "STAN" on database "STAN".
Starting instance "STAN"...
ORACLE instance started.
Database mounted.
Switchover succeeded. New primary is "STAN"



هذا الأمر سيقوم بتبديل الأدوار فسوف تصبح الPRIM هي الStandby Database والSTAN هي الPrimary Database، بالطبع سيتم تنفيذ هذا الأمر بعد الاتصال بالPrimary Database، لاحظ أن الData Guard Broker ستقوم ألياً بإغلاق وفتح قواعد البيانات.

د- التأكد من عملية التحول
تأكد من أن عملية التحول تمت بسلام.

DGMGRL> SHOW CONFIGURATION;

Configuration
 Name:			TEST
 Enabled:		 YES
 Protection Mode: MaxPerformance
 Databases:
PRIM - Physical standby database
STAN	- Primary database

Current status for "TEST":
SUCCESS

بتاريخ:
  • كاتب الموضوع

8- Failover Operations:
لجلب أحد الStandby Databases لتكون New Primary Database، ويجب تنفيذ الFailover في حال حدوث فشل ذريع في الPrimary Database وليس هناك إمكانية لإرجاع الPrimary Database في الوقت المناسب، ففي مثل هذه الحالة يتم تجاهل هذه الPrimary Database التي بها مشكلة ويتم جلب الTarget Standby Database لتلعب دور الNew Primary Database.
يتم تنفيذ عملية الFailover في الStandby Database التي ستصبح New Primary Database، وبعد انتهاء عملية الFailover فإن الStandby Database ستصبح Primary Database و الPrimary Database الأصلية التي حدثت فيها المشكلة لا يمكن استخدامها كStandby Database ما لم يتم إعادة إنشاؤها أو إرجاعها بواسطة الFlashback Database لذا فمن الأفضل تفعيل الFlashback Database في كل من الPrimary and Standby Database.


واليك خطوات تنفيذ الFailover:
أ- الاتصال بالTarget Standby Database

DGMGRL> CONNECT sys/sys@STANNET
Connected.



ب- تنفيذ أمر الFailover

DGMGRL> FAILOVER TO "STAN";
Performing failover NOW. Please wait...
Operation requires shutdown of instance "STAN" on database
"STAN".
Shutting down instance "STAN"...
database not mounted
ORACLE instance shut down.
Operation requires startup of instance "STAN" on database "STAN".
Starting instance "STAN"...
ORACLE instance started.
Database mounted.
Failover succeeded. New primary is "STAN"



ج- التأكد من نجاح عملية الFailover

DGMGRL> SHOW CONFIGURATION;

Configuration
 Name:			TEST
 Enabled:		 YES
 Protection Mode: MaxPerformance
 Databases:
PRIM - Physical standby database
STAN	- Primary database

Current status for "TEST":
SUCCESS



د- التحقق من الPrimary Database الأصلية

DGMGRL> SHOW DATABASE 'PRIM';

Database
 Name:			PRIM
 Role:			PHYSICAL STANDBY
 Enabled:		 NO
 Intended State:  ONLINE
 Instance(s):
PRIM

Current status for "PRIM":
Error: ORA-16795: Database resource guard detects that database reinstantiation is required



لاحظ أن الData Guard Broker قامت بعمل Disable للPrimary Database القديمة.

بتاريخ:
  • كاتب الموضوع

* توفر الOracle Data Guard مجموعة من الأوامر لإدارة ومراقبة قواعد البيانات، تستطيع استعراضها عن طريق الأمر HELP.

DGMGRL> HELP

The following commands are available:

Add: Add a standby database into the broker configuration
Connect: Connect to an Oracle instance
Create: Create a broker configuration
Disable: Disable broker control of a configuration or database
Edit: Edit a configuration, database or instance
Enable: Enable broker control of a configuration or database
Exit: Exit the program
Failover: Change a standby database to be the primary database
Help: Display description and syntax for a given command
Quit: Exit the program
Rem: Comment to be ignored by DGMGRL
Remove: Remove a configuration, database or instance
Show: Display information of a configuration, database or instance
Shutdown: Shut down a currently running Oracle instance
Startup: Start an Oracle database instance
Switchover: Switch roles between the primary database and a standby database

Use "help <command>" to see syntax for individual commands




لمعرفة طرق استخدام هذه الأوامر أكتب help ثم الأمر

DGMGRL> HELP CREATE
Create a broker configuration 
Syntax:
 CREATE CONFIGURATION <configuration name> AS
PRIMARY DATABASE IS (database name>
CONNECT IDENTIFIER IS <connect identifier>;

بتاريخ:
  • كاتب الموضوع

Fast-start failover:
يوفر الإصدار Oracle 10g Release 2 خاصية جديدة تسمي Fast-start failover هذه الخاصية لها القدرة علي عمل Failover بصورة تلقائية وآلية وعمل تزامن للStandby Database في حال فقدان الPrimary Database، هذا كله دون إتباع الخطوات اليدوية المعقدة لعمل Failover. وأيضاً بعد انتهاء الFailover وبصورة آلية يتم إعادة تهيئة الPrimary Database القديمة لتكون Standby Database جديدة.
ويعمل Fast-start failover في الحالات التالية:
Database instance failure
Shutdown abort
Datafiles taken offline due to I/O errors
عندما يفقد الStandby Database و الObserve الاتصال بالPrimary Database



خطوات تهيئة ال Fast-start failover:
1- التأكد من تهيئة الStandby Redo Logs في كل من الPrimary and Standby Database:
تحدثنا سابقاً عن الStandby Redo Logs.

2- تهيئة المتغير LogXptMode ليأخذ القيمة SYNC في الPrimary and Standby Database:

DGMGRL> EDIT DATABASE 'PRIM' SET PROPERTY 'LogXptMode'='SYNC';
Property "LogXptMode" updated




DGMGRL> EDIT DATABASE 'STAN' SET PROPERTY 'LogXptMode'='SYNC';
Property "LogXptMode" updated



3- تحديد FastStartFailoverTarget:
قد تكون لديك أكثر من Standby Database لذا قم بتهيئة المتغير FastStartFailoverTarget في كل من الPrimary and Standby Database ليشير كل منهم للآخر.

DGMGRL> EDIT DATABASE 'PRIM' SET PROPERTY FastStartFailoverTarget='STAN';
Property "FastStartFailoverTarget" updated



DGMGRL> EDIT DATABASE 'STAN' SET PROPERTY FastStartFailoverTarget='PRIM';
Property "FastStartFailoverTarget" updated



4- تفعيل الReal Time Apply:.
يفضل تفعيل الReal Time Apply في الStandby Database لتقليل وقت عملية الFailover وذلك لأن الRedo Data يتم تطبيقها في الStandby Database بمجرد استقبالها دون انتظار Log Switch في الPrimary Database.

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE 
USING CURRENT LOGFILE;




5- تحويل النمط إلي MAXAVAILABILITY:

DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MAXAVAILABILITY;



6- التأكد من تفعيل الFlashback Database:
تفعيل الFlashback Database في كل من الPrimary and Standby Database وذلك لأن الData Guard Broker تستخدم لإعادة الPrimary Database بشكل آلي لتكون Standby Database جديدة.

STARTUP MOUNT;
ALTER DATABASE FLASHBACK ON;
ALTER DATABASE OPEN;



7- لتفعيل fast start failover:

DGMGRL> ENABLE FAST_START FAILOVER;
Enabled.



8- تشغيل ال observer:
وهو ما يعرف بالمراقب والأفضل أن يكون في جهاز آخر غير الPrimary or Standby Site ومهمته مراقبة الPrimary and Standby Database، ولا يتطلب أن يكون في الجهاز Instance بل فقط Oracle Client Administrator.
ولتشغيل الobserver قم بالاتصال بالGuard Configuration من جهاز الobserver وقم بتشغيل الObserver.

DGMGRL> CONNECT sys/password@PRIMNET;
DGMGRL> START OBSERVER;
Observer started



9- التأكد من تهيئة ال fast start failover:

DGMGRL> SHOW CONFIGURATION VERBOSE;

Configuration
Name:				TEST
Enabled:			 YES
Protection Mode:	 MaxAvailability
Fast-Start Failover: ENABLED
Databases:
  PRIM - Primary database
  STAN	- Physical standby database
		   - Fast-Start Failover target

Fast-Start Failover
Threshold: 30 seconds
Observer:  observer

Current status for "TEST":
SUCCESS

إذا لقد انتهينا من تهيئة ال fast start failover، الآن يقوم الObserver بمراقبة كل من الPrimary and Standby Database وفي حال حدوث مشكلة في الPrimary Database سيقوم بعد 30 ثانية بعملية Failover ألياً لتصبح الSTAN عبارة عن Primary Database جديدة ويحاول إعادة الPRIM لتكون Standby Database جديدة.
يمكن تغيير الزمن من 30 ثانية إلي 45 ثانية مثلاً كالأتي:

DGMGRL> EDIT CONFIGURATION SET PROPERTY FastStartFailoverThreshold = 45;

بتاريخ:
  • كاتب الموضوع

يمكنك تحميل السلسة من الرابط أدناه

تحميل

بتاريخ:

مشكور اخوي الباشا

بس ياريت تنزل طريقه عمل الداتا قارد عن طريق RMAN مو DATAFILES
راح تكون اسرع وافضل

  • بعد 11 شهور...
بتاريخ:

الله يبارك فيك يا باشا و ياريت تحط مواضيع الoracle data gaurd & RAC in useful documnets materials

  • بعد 7 شهور...
بتاريخ:

انا محتاج ان اقوم بشتري برنامج oracle EM grid countrol 10g r2 on windows server 64bit ماهي الخيارات التي من الممكن ان احتاجها في هذا البرنامج عند الشراء
ممكن مساعدة

  • بعد 1 سنة...
بتاريخ:

جزاك الله خيرا
وبارك الله فيك وجعله فى ميزان حسناتك
مجهود مقدر

  • بعد 2 سنة...
بتاريخ:

السلام عليكم

لو سمحت سؤالي ... الداتا جارد بتعتمد على انو يكون في اكثر من داتا بيز وهمه نفس المحتوى ... هل جميع الداتا بيز هدول بكونو على نفس السيرفر(الجهاز) ولا على اكثر من جهاز 

السؤال الثاني ما الفرق بينها وبين ال rac

ياريت تجاوبني

شكرا جزيلا

  • بعد 1 شهر...
بتاريخ:

مجهود رائع

جزاك الله كل خير وجعله فى ميزان حسناتك

  • بعد 3 شهور...
بتاريخ:

كل الشكر الاخ الباشا 

ربنا يجزيك عنا كل خير 

 

تسلم كتيثر  ,,,,,,,

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.