إتمام التركيب

قم بتكوين Oracle Data Guard وتسجيل قاعدة البيانات البديلة ومزامنة كلمات سر قاعدة البيانات المحلية والبديلة.

تكوين وسيط Oracle Data Guard

تكوين Oracle Data Guard عن طريق تمكين المعلمة dg_broker_config_file في قواعد البيانات الأساسية والبديلة. بالنسبة لـ Oracle Automatic Storage Management (Oracle ASM)، ضع ملفات تكوين الوسيط على مجموعات أقراص منفصلة. بالنسبة لـ Oracle Real Application Clusters (Oracle RAC)، يجب أن تكون ملفات تكوين الوسيط في المخزن المشترك.

  1. تحقق من قيمة dg_broker_start لمضيف قاعدة البيانات المحلي. يجب تعيينها إلى false.
    SQL> show parameter dg_broker_start;
    ستبدو المخرجات مشابهة لما يلي:
    NAME 			TYPE 			VALUE 
    ------------------------------------ ----------- ------------------------------ 
    dg_broker_start 	boolean 		FALSE 
  2. تحقق من ملفات Oracle Data Guard لقاعدة البيانات المحلية.
    SQL> show parameter dg_broker_config_file1;
    SQL> show parameter dg_broker_config_file2;
  3. إذا كان لديك Oracle RAC أو Oracle ASM، فيمكنك تغيير موقع ملف التكوين.
    SQL> alter system set dg_broker_config_file1=broker_config_file location; 
    SQL> alter system set dg_broker_config_file2=broker_config_file location;
  4. ابدأ عملية Oracle Data Guard Broker في قاعدة البيانات الأساسية.
    SQL> alter system set dg_broker_start=true;
    SQL> show parameter dg_broker_start 
    NAME 			TYPE 			VALUE 
    ------------------------------------ ----------- ------------------------------ 
    dg_broker_start 	boolean 		TRUE
    SQL> select pname from v$process where pname like 'DMON%';
    PNAME 
    ----- 
    DMON 
  5. تحقق من قيمة dg_broker_start لمضيف قاعدة البيانات البديل. يجب تعيينه إلى false.
    SQL> show parameter dg_broker_start;
    ستبدو المخرجات مشابهة لما يلي:
    NAME 			TYPE 			VALUE 
    ------------------------------------ ----------- ------------------------------ 
    dg_broker_start 	boolean 		FALSE 
  6. تحقق من ملفات Oracle Data Guard في قاعدة البيانات البديلة.
    SQL> show parameter dg_broker_config_file1;
    SQL> show parameter dg_broker_config_file2;
  7. إذا كان لديك Oracle RAC أو Oracle ASM، فيمكنك تغيير موقع ملف التكوين.
    SQL> alter system set dg_broker_config_file1=broker_config_file location; 
    SQL> alter system set dg_broker_config_file2=broker_config_file location;
  8. ابدأ عملية Oracle Data Guard Broker في قاعدة البيانات البديلة.
    SQL> alter system set dg_broker_start=true; 
    SQL> show parameter dg_broker_start
    NAME 			TYPE 			VALUE 
    ------------------------------------ ----------- ------------------------------ 
    dg_broker_start 	boolean 		TRUE
    SQL> select pname from v$process where pname like 'DMON%';
    PNAME 
    ----- 
    DMON 

تسجيل قاعدة البيانات البديلة

استخدم واجهة سطر أوامر Oracle Data Guard (DGMGRL) لتسجيل ملف تعريف قاعدة البيانات البديلة أو إضافته إلى تكوين الوسيط في المضيف الأساسي المحلي.

  1. قم بتسجيل الدخول إلى المضيف الأساسي كـ sys.
    $ dgmgrl sys/sys password@net service name for primary database
  2. قم بتكوين تكوين يستخدم اسم قاعدة البيانات الأساسي.
    DGMGRL> CREATE CONFIGURATION configuration_name AS PRIMARY DATABASE IS primary database name CONNECT
              IDENTIFIER IS primary database name;
  3. إضافة قاعدة بيانات بديلة.
    DGMGRL> ADD DATABASE standby unique database name AS CONNECT IDENTIFIER IS standby unique database name MAINTAINED AS PHYSICAL; 
  4. تمكين التكوين.
    DGMGRL> enable configuration;
  5. عرض التكوين.
    DGMGRL> show configuration;
    ستبدو المخرجات مشابهة لما يلي:
    Configuration - OnPremDr
     Protection Mode: MaxPerformance
     Members:
    ORCLCDB - Primary database
     Warning: ORA-16789: standby redo logs configured incorrectly
    orclcdb_iad1s3 - Physical standby database
    Error: ORA-16810: multiple errors or warnings detected for the member
     Fast-Start Failover: Disabled
     Configuration Status:
     ERROR (status updated 10 seconds ago)

نسخ ملفات أرشيف الإعادة من المحلية إلى OCI

قم بنسخ ملفات السجل redo وملفات قاعدة البيانات الأخرى من قاعدة البيانات المحلية إلى طبعة Oracle Cloud Infrastructure (OCI).

  1. عرض ملفات قاعدة البيانات المحلية.
    select name from v$datafile;
    ستبدو المخرجات مشابهة لما يلي:
    NAME
    --------------------------------------------------------------------
    /opt/oracle/oradata/ORCLCDB/system01.dbf
    /opt/oracle/oradata/ORCLCDB/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/system01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/users01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/system01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/users01.dbf
  2. عرض حجم كل مجموعة لملفات البيانات المحلية.
    select bytes, group# from v$log;
    ستبدو المخرجات مشابهة لما يلي:
    BYTES     GROUP#
    ---------- ----------
     209715200	    1
     209715200	    2
     209715200	    3
  3. عرض سجلات redo لملفات البيانات المحلية.
    select member from v$logfile;
    ستبدو المخرجات مشابهة لما يلي:
    MEMBER
    ---------------------------------------------------
    /opt/oracle/oradata/ORCLCDB/redo03.log
    /opt/oracle/oradata/ORCLCDB/redo02.log
    /opt/oracle/oradata/ORCLCDB/redo01.log
  4. إضافة مجموعة ملفات سجل بديلة لكل سجل redo.
    على سبيل المثال، إذا كان لديك ثلاثة ملفات سجل redo، فقم بإضافة ثلاث مجموعات ملفات سجل بديلة.
    SQL> alter database add standby logfile group 4('/opt/oracle/oradata/ORCLCDB/redo_sb04.log') size 209715200;
    Database altered.
    
    SQL> alter database add standby logfile group 5('/opt/oracle/oradata/ORCLCDB/redo_sb05.log') size 209715200;
    Database altered.
    
    SQL> alter database add standby logfile group 6('/opt/oracle/oradata/ORCLCDB/redo_sb06.log') size 209715200;
    Database altered.
  5. عرض رقم المجموعة وأعضاء ملف السجل.
    SQL> select group#,member from v$logfile;
    ستبدو المخرجات مشابهة لما يلي:
    GROUP#          MEMBER
    --------------------------------------------------------------------
    	 3
    /opt/oracle/oradata/ORCLCDB/redo03.log
    
    	 2
    /opt/oracle/oradata/ORCLCDB/redo02.log
    
    	 1
    /opt/oracle/oradata/ORCLCDB/redo01.log
    
    	 4
    /opt/oracle/oradata/ORCLCDB/redo_sb04.log
    
    	 5
    /opt/oracle/oradata/ORCLCDB/redo_sb05.log
    
    	 6
    /opt/oracle/oradata/ORCLCDB/redo_sb06.log
    
    6 rows selected.
  6. عرض التكوين في Oracle Data Guard.
    DGMGRL> show configuration
    ستبدو المخرجات مشابهة لما يلي:
    Configuration - OnPremDr
    Protection Mode: MaxPerformance
      Members:
      ORCLCDB        - Primary database
        orclcdb_iad1s3 - Physical standby database 
    
    Fast-Start Failover:  Disabled
    
    Configuration Status:
    SUCCESS   (status updated 60 seconds ago)
  7. عرض أرشيفات الإعادة في طبعة قاعدة بيانات OCI البديلة.
    select member from v$logfile;
    ستبدو المخرجات مشابهة لما يلي:
    MEMBER
    ---------------------------------------------------
    /opt/oracle/oradata/ORCLCDB/redo03.log
    /opt/oracle/oradata/ORCLCDB/redo02.log
    /opt/oracle/oradata/ORCLCDB/redo01.log
  8. قم بالدخول إلى جلسة عمل واجهة سطر أوامر Oracle Data Guard (DGMGRL) في طبعة قاعدة بيانات OCI البديلة باسم المستخدم وكلمة السر sys.
    [oracle@droci admin]$ dgmgrl 
    DGMGRL> connect
    Username: sys
    Password:
    ستبدو المخرجات مشابهة لما يلي:
    .
    .
    .
    Welcome to DGMGRL, type "help" for information.
    Connected to "ORCLCDB_iad1s3"
    Connected as SYSDBA.
  9. عرض التكوين في قاعدة البيانات البديلة في OCI.
    DGMGRL> show configuration;
    ستبدو المخرجات مشابهة لما يلي:
    Configuration - OnPremDr
    
      Protection Mode: MaxPerformance
      Members:
      ORCLCDB        - Primary database
        orclcdb_iad1s3 - Physical standby database 
          Warning: ORA-16809: multiple warnings detected for the member
    
    Fast-Start Failover:  Disabled
    
    Configuration Status:
    WARNING  (status updated 50 seconds ago)
  10. تحرير طبعة قاعدة البيانات البديلة في OCI وتعيين الحالة إلى apply-off، ثم الخروج من واجهة سطر الأوامر.
    DGMGRL> edit database orclcdb_iad1s3 set state=apply-off;
    Succeeded.
    DGMGRL> exit
  11. قم بالدخول إلى طبعة قاعدة البيانات البديلة في OCI.
    [oracle@droci admin]$ sqlplus / as sysdba
  12. عرض رقم المجموعة وأعضاء ملف السجل.
    SQL> select group#,member from v$logfile;
    ستبدو المخرجات مشابهة لما يلي:
        GROUP#   MEMBER
    --------------------------------------------------------------------
    	 3
    /opt/oracle/oradata/ORCLCDB/redo03.log
    
    	 2
    /opt/oracle/oradata/ORCLCDB/redo02.log
    
    	 1
              /opt/oracle/oradata/ORCLCDB/redo01.log
  13. عرض حجم كل مجموعة.
    select bytes, group# from v$log;
    ستبدو المخرجات مشابهة لما يلي:
    BYTES     GROUP#
    ---------- ----------
     209715200	    1
     209715200	    3
     209715200	    2
    
  14. إضافة مجموعات ملفات الأرشيف البديلة إلى قاعدة البيانات في OCI.
    SQL> alter database add standby logfile group 4('/opt/oracle/oradata/ORCLCDB/redo_sb04.log') size 209715200;
    Database altered.
    
    SQL> alter database add standby logfile group 5('/opt/oracle/oradata/ORCLCDB/redo_sb05.log') size 209715200;
    Database altered.
    
    SQL> alter database add standby logfile group 6('/opt/oracle/oradata/ORCLCDB/redo_sb06.log') size 209715200;
    Database altered.
  15. عرض رقم المجموعة وأعضاء ملف السجل.
    SQL> select group#,member from v$logfile;
    ستبدو المخرجات مشابهة لما يلي:
    GROUP#          MEMBER
    --------------------------------------------------------------------
    	 3
    /opt/oracle/oradata/ORCLCDB/redo03.log
    
    	 2
    /opt/oracle/oradata/ORCLCDB/redo02.log
    
    	 1
    /opt/oracle/oradata/ORCLCDB/redo01.log
    
    	 4
    /opt/oracle/oradata/ORCLCDB/redo_sb04.log
    
    	 5
    /opt/oracle/oradata/ORCLCDB/redo_sb05.log
    
    	 6
    /opt/oracle/oradata/ORCLCDB/redo_sb06.log
    
    6 rows selected.
  16. قم بالدخول إلى جلسة عمل واجهة سطر أوامر Oracle Data Guard (DGMGRL) في طبعة قاعدة بيانات OCI البديلة باسم المستخدم وكلمة السر sys.
    [oracle@droci admin]$ dgmgrl 
    DGMGRL> connect
    Username: sys
    Password:
    .
    .
    .
    Welcome to DGMGRL, type "help" for information.
    Connected to "ORCLCDB_iad1s3"
    Connected as SYSDBA.
  17. قم بتحرير طبعة قاعدة البيانات البديلة في OCI وتعيين الحالة إلى apply-on.
    DGMGRL> edit database orclcdb_iad1s3 set state=apply-on;
  18. تحرير طبعة قاعدة البيانات البديلة في OCI وتعيين حالة النقل إلى transport-on، ثم الخروج من واجهة سطر الأوامر.
    DGMGRL> edit database orclcdb_iad1s3 set state=transport-on;
    
    Succeeded.
    DGMGRL> exit
  19. عرض ملفات الأرشيف البديلة في قاعدة البيانات البديلة في OCI.
    SQL> select * from v$logfile where type='STANDBY';
    ستبدو المخرجات مشابهة لما يلي:
    GROUP# STATUS  TYPE
    ---------- ------- -------
    MEMBER
    --------------------------------------------------------------------
    IS_	CON_ID
    --- ----------
    	 4	   STANDBY
    /opt/oracle/oradata/ORCLCDB/redo_sb04.log
    NO	     0
    
    	 5	   STANDBY
    /opt/oracle/oradata/ORCLCDB/redo_sb05.log
    NO	     0
    
    	 6	   STANDBY
    /opt/oracle/oradata/ORCLCDB/redo_sb06.log
    NO	     0
  20. عرض ملفات أرشيف الإعادة في قاعدة البيانات البديلة في OCI.
    SQL> select member from v$logfile where type != 'STANDBY';
    ستبدو المخرجات مشابهة لما يلي:
    MEMBER
    --------------------------------------------------------------------
    /opt/oracle/oradata/ORCLCDB/redo03.log
    /opt/oracle/oradata/ORCLCDB/redo02.log
    /opt/oracle/oradata/ORCLCDB/redo01.log
  21. استعادة قاعدة البيانات البديلة المدارة.
    SQL> recover managed standby database cancel;
    ستبدو المخرجات مشابهة لما يلي:
    Media recovery complete
  22. عرض الملفات باستخدام المعلمة convert.
    SQL> show parameter convert;
    ستبدو المخرجات مشابهة لما يلي:
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    db_file_name_convert		     string
    log_file_name_convert		     string
    pdb_file_name_convert		     string
  23. عرض ملفات قاعدة البيانات.
    select name from v$datafile;
    ستبدو المخرجات مشابهة لما يلي:
    NAME
    --------------------------------------------------------------------
    /opt/oracle/oradata/ORCLCDB/system01.dbf
    /opt/oracle/oradata/ORCLCDB/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/system01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/users01.dbf
    /opt/oracle/oradata/ORCLCDB/pdbseed/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/system01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/sysaux01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/undotbs01.dbf
    /opt/oracle/oradata/ORCLCDB/ORCLPDB1/users01.dbf
  24. عرض رقم تغيير نظام قاعدة البيانات (SCN).
    SQL> select current_scn from v$database;
    ستبدو المخرجات مشابهة لما يلي:
    CURRENT_SCN
    -----------
        2906060
  25. عرض تفاصيل أرشيف Oracle Data Guard.
    SQL> SELECT ROLE, THREAD#, SEQUENCE#, ACTION FROM V$DATAGUARD_PROCESS;
    ستبدو المخرجات مشابهة لما يلي:
    ROLE	    THREAD#     SEQUENCE#  ACTION
    ------------------------ ---------- ---------- ------------
    RFS archive			  0	     0 IDLE
    RFS archive			  0	     0 IDLE
    RFS async		           1	    18 RECEIVING
    RFS ping		            1           18 IDLE
    broker monitor		      0	     0 IDLE
    broker instance slave	      0	     0 IDLE
    archive redo			 0	     0 IDLE
    archive local			0	     0 IDLE
    redo transport timer		0	     0 IDLE
    gap manager			  0	     0 IDLE
    log writer			   0	     0 IDLE
    broker net slave		    0	     0 IDLE
    broker worker			0	     0 IDLE
    archive redo			 0	     0 IDLE
    archive redo			 0	     0 IDLE
    redo transport monitor	     0	     0 IDLE
    
    16 rows selected.
  26. تعطيل استعادة قاعدة البيانات البديلة المدارة باستخدام ملف السجل.
    SQL> recover managed standby database using current logfile disconnect;
    Media recovery complete.
  27. عرض رقم تغيير نظام قاعدة البيانات (SCN).
    SQL> select current_scn from v$database;
    ستبدو المخرجات مشابهة لما يلي:
    CURRENT_SCN
    -----------
        2906060
  28. عرض الملفات بمعلمة الوجهة.
    SQL>show parameter dest;
    ستبدو المخرجات مشابهة لما يلي:
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- -------------------
    cursor_bind_capture_destination      string	 memory+disk
    db_create_online_log_dest_1	     string	 /u03/app/oracle/redo/
    db_create_online_log_dest_2	     string
    db_create_online_log_dest_3	     string
    db_create_online_log_dest_4	     string
    db_create_online_log_dest_5	     string
    db_recovery_file_dest_size	     big integer 238G
    log_archive_dest_1		     string
    log_archive_dest_10		     string
    log_archive_dest_11		     string
    log_archive_dest_12		     string
  29. عرض التعليقات من الاستعادة.
    SQL> select comments from v$recovery_progress;
    ستبدو المخرجات مشابهة لما يلي:
    COMMENTS
    --------------------------------------------------------------------
    RCVID: 4165711446800375620
    SCN: 2907015
    
    COMMENTS
    --------------------------------------------------------------------
    RCVID: 12395680609799335065
    SCN: 2906061
  30. عرض تاريخ الاستعادة.
    SQL> select START_TIME,comments from v$recovery_progress order by 1;
    ستبدو المخرجات مشابهة لما يلي:
    START_TIM
    ---------
    COMMENTS
    --------------------------------------------------------------------
    03-SEP-20
    03-SEP-20
    03-SEP-20
    RCVID: 2657984638848411078
    
    
    START_TIM
    ---------
    COMMENTS
    --------------------------------------------------------------------------------
    03-SEP-20