- نشر منظومة DR مختلطة لـ Oracle Exadata محلي
- إتمام التكوين
أكمل التكوين
تكوين 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)، يجب أن تكون ملفات تكوين الوسيط في التخزين المشترك.
- تحقق من قيمة
dg_broker_startلمضيف قاعدة البيانات المحلي. يجب تعيينه علىfalse.SQL> show parameter dg_broker_start;ستبدو المخرجات مشابهة لما يلي:NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_start boolean FALSE - في Oracle Database Exadata Cloud Service البديل، تحقق من ملفات تكوين Oracle Data Guard.
فيما يلي مثال للمخرجات:SQL> show parameter dg_broker_config_file1;NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_config_file1 string /u02/app/oracle/product/19.0.0.0/dbhome_5/dbs/dr1DB1_phx3g7.dat
فيما يلي مثال للمخرجات:SQL> show parameter dg_broker_config_file2;NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_config_file2 string /u02/app/oracle/product/19.0.0.0/dbhome_5/dbs/dr2DB1_phx3g7.dat - Display the datafiles, then change the location to where you want to store the files. For example, Oracle ASM, Oracle RAC , or devices.
SQL> select name from v$datafile;NAME -------------------------------------------------------------------------------- +DATAC1/DB1_PHX3G7/DATAFILE/system.348.1063638053 +DATAC1/DB1_PHX3G7/DATAFILE/sysaux.349.1063638055 +DATAC1/DB1_PHX3G7/DATAFILE/undotbs1.350.1063638057 +DATAC1/DB1_PHX3G7/DATAFILE/undotbs2.351.1063638057 +DATAC1/DB1_PHX3G7/DATAFILE/users.352.1063638059SQL> alter system set dg_broker_config_file1='+DATAC1/DB1_PHX3G7/dr1DB1_phx3g7.dat';SQL> alter system set dg_broker_config_file2='+RECOC1/DB1_PHX3G7/dr2DB1_phx3g7.dat'; - في Oracle Exadata Database Machine المحلي الأساسي، تحقق من ملفات تكوين Oracle Data Guard.
فيما يلي مثال للمخرجات:SQL> show parameter dg_broker_config_file1;NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_config_file1 string /u01/app/oracle/product/19.0.0.0/dbhome_1/dbs/dr1db1.dat.dat
فيما يلي مثال على المخرجات:SQL> show parameter dg_broker_config_file2;NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_config_file2 string /u01/app/oracle/product/19.0.0.0/dbhome_1/dbs/dr2db1.dat - قم بعرض ملفات البيانات، ثم قم بتغيير الموقع إلى حيث تريد تخزين الملفات.
فيما يلي مثال على المخرجات:SQL> select name from v$datafile;
قم بتشغيل الأوامر التالية لتغيير موقع ملف التكوين:NAME -------------------------------------------------------------------------------- +DATAC1/DB1/DATAFILE/system.277.1063487795 +DATAC1/DB1/DATAFILE/sysaux.270.1063487827 +DATAC1/DB1/DATAFILE/undotbs1.259.1063487843 +DATAC1/DB1/DATAFILE/undotbs2.275.1063487867 +DATAC1/DB1/DATAFILE/users.269.1063487879SQL> alter system set dg_broker_config_file1='+DATAC1/DB1/dr1db1.dat';SQL> alter system set dg_broker_config_file2='+RECOC1/DB1/dr2db1.dat';SQL> alter system set dg_broker_start=false; SQL> alter system set dg_broker_config_file1='+DATAC1/DB1/dr1db1.dat'; SQL> alter system set dg_broker_config_file2='+RECOC1/DB1/dr2db1.dat'; - في Oracle Exadata Database Machine المحلي الأساسي، ابدأ عملية Oracle Data Guard Broker.
SQL> alter system set dg_broker_start=true; SQL> show parameter dg_broker_startNAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_start boolean TRUESQL> select pname from v$process where pname like 'DMON%';PNAME ----- DMON - ابدأ عملية Oracle Data Guard Broker في قاعدة البيانات البديلة.
SQL> alter system set dg_broker_start=true; SQL> show parameter dg_broker_startNAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dg_broker_start boolean TRUESQL> select pname from v$process where pname like 'DMON%';PNAME ----- DMON
تسجيل قاعدة البيانات البديلة
استخدم واجهة سطر أوامر Oracle Data Guard (DGMGRL) لتسجيل ملف تعريف قاعدة البيانات البديلة أو إضافته إلى تكوين الوسيط على المضيف المحلي الأساسي.
- قم بالدخول إلى المضيف الأساسي كـ
sys.$ dgmgrl sys/sys password@net service name for primary database - تكوين تكوين يستخدم اسم قاعدة البيانات الأساسية.
على سبيل المثال:DGMGRL> CREATE CONFIGURATION configuration_name AS PRIMARY DATABASE IS primary database name CONNECT IDENTIFIER IS primary database name;CREATE CONFIGURATION OnPremExaDR AS PRIMARY DATABASE IS DB1 CONNECT IDENTIFIER IS DB1; - إضافة قاعدة البيانات البديلة.تأكد من أن المعرف الخاص بك هو نفسه اسم الخدمة، بما في ذلك الأحرف الكبيرة والحروف الصغيرة.
على سبيل المثال:DGMGRL> ADD DATABASE standby unique database name AS CONNECT IDENTIFIER IS standby unique database name MAINTAINED AS PHYSICAL;ADD DATABASE DB1_PHX3G7 AS CONNECT IDENTIFIER IS DB1_phx3g7 MAINTAINED AS PHYSICAL;إذا استلمت رسالة خطأ ORA-16698، فتحقق من أن المعرف الخاص بك هو نفسه اسم الخدمة.خطأ: ORA-16698: يشتمل العضو على معلمة LOG_ARCHIVE_DEST_n بمجموعة سمات SERVICE
- تغيير حالة وجهة أرشيف الأرشيف.
SQL> alter system set log_archive_dest_state_10='DEFER';SQL> alter system set log_archive_dest_10=''; - تحقق من وجهة أرشيف الأرشيف.
SQL> show parameter log_archive_dest;NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ log_archive_dest string log_archive_dest_1 string LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=DB1_PHX3G7 log_archive_dest_10 string log_archive_dest_11 string log_archive_dest_12 string log_archive_dest_13 string log_archive_dest_14 string log_archive_dest_15 string NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ log_archive_dest_16 string log_archive_dest_17 string log_archive_dest_18 string log_archive_dest_19 string log_archive_dest_2 string SERVICE=DB1 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=DB1 log_archive_dest_20 string log_archive_dest_21 string log_archive_dest_22 string log_archive_dest_23 string - تمكين التكوين.
DGMGRL> enable configuration; - عرض التكوين.
DGMGRL> show configuration;ستظهر المخرجات مشابهة لما يلي:Configuration - onpremexadr Protection Mode: MaxPerformance Members: db1 - Primary database Warning: ORA-16809: multiple warnings detected for the member db1_phx3g7 - Physical standby database Error: ORA-16532: Oracle Data Guard broker configuration does not exist Fast-Start Failover: Disabled Configuration Status: ERROR (status updated 21 seconds ago) - في Oracle Database Exadata Cloud Service البديل، قم بالدخول للتحقق من التكوين.
[oracle@exacs82-vm3sv1 ~]$ dgmgrl DGMGRL> connectUsername: sys Password: Connected to "DB1_phx3g7" Connected as SYSDBA.
وستكون المخرجات مماثلة لما يلي:DGMGRL> show configuration;Configuration - onpremexadr Protection Mode: MaxPerformance Members: db1 - Primary database Warning: ORA-16809: multiple warnings detected for the member db1_phx3g7 - Physical standby database Warning: ORA-16809: multiple warnings detected for the member Fast-Start Failover: Disabled Configuration Status: WARNING (status updated 43 seconds ago
نسخ ملفات أرشيف الإعادة من المحلية إلى OCI
نسخ ملفات أرشيف redo وملفات قاعدة البيانات الأخرى من قاعدة البيانات المحلية في طبعة Oracle Cloud Infrastructure (OCI).
- عرض ملفات قاعدة البيانات المحلية.
select name from v$datafile;ستبدو المخرجات مشابهة لما يلي:NAME -------------------------------------------------------------------------------- +DATAC1/DB1/DATAFILE/system.277.1063487795 +DATAC1/DB1/DATAFILE/sysaux.270.1063487827 +DATAC1/DB1/DATAFILE/undotbs1.259.1063487843 +DATAC1/DB1/DATAFILE/undotbs2.275.1063487867 +DATAC1/DB1/DATAFILE/users.269.1063487879 - عرض حجم كل مجموعة لملفات البيانات المحلية.
select bytes, group# from v$log;ستبدو المخرجات مشابهة لما يلي:BYTES GROUP# ---------- ---------- 209715200 1 209715200 2 209715200 3 209715200 4 - عرض سجلات
redoلملفات البيانات المحلية.select member from v$logfile;ستبدو المخرجات مشابهة لما يلي:MEMBER -------------------------------------------------------------------------------- +DATAC1/DB1/ONLINELOG/group_2.272.1063449917 +RECOC1/DB1/ONLINELOG/group_2.281.1063449917 +DATAC1/DB1/ONLINELOG/group_1.273.1063449917 +RECOC1/DB1/ONLINELOG/group_1.282.1063449919 +DATAC1/DB1/ONLINELOG/group_3.268.1063450555 +RECOC1/DB1/ONLINELOG/group_3.283.1063450557 +DATAC1/DB1/ONLINELOG/group_4.261.1063450557 +RECOC1/DB1/ONLINELOG/group_4.284.1063450557 - أضف مجموعة ملفات أرشيف بديلة لكل سجل
redo.على سبيل المثال، إذا كان لديك ثلاثة ملفات أرشيفredo، أضف ثلاث مجموعات ملفات أرشيف بديلة.SQL> alter database add standby logfile group 5 ('+DATAC1','+RECOC1'); alter database add standby logfile group 6 ('+DATAC1','+RECOC1'); alter database add standby logfile group 7 ('+DATAC1','+RECOC1'); - عرض أعضاء ملف السجل.
SQL> select member from v$logfile;ستبدو المخرجات مشابهة لما يلي:MEMBER -------------------------------------------------------------------------------- +DATAC1/DB1/ONLINELOG/group_2.272.1063449917 +RECOC1/DB1/ONLINELOG/group_2.281.1063449917 +DATAC1/DB1/ONLINELOG/group_1.273.1063449917 +RECOC1/DB1/ONLINELOG/group_1.282.1063449919 +DATAC1/DB1/ONLINELOG/group_5.264.1063812687 +DATAC1/DB1/ONLINELOG/group_3.268.1063450555 +RECOC1/DB1/ONLINELOG/group_3.283.1063450557 +DATAC1/DB1/ONLINELOG/group_4.261.1063450557 +RECOC1/DB1/ONLINELOG/group_4.284.1063450557 +RECOC1/DB1/ONLINELOG/group_5.422.1063812687 +DATAC1/DB1/ONLINELOG/group_6.262.1063812785 +RECOC1/DB1/ONLINELOG/group_6.445.1063812785 +DATAC1/DB1/ONLINELOG/group_7.263.1063812807 +RECOC1/DB1/ONLINELOG/group_7.446.1063812807 - عرض رقم المجموعة وأعضاء ملف الأرشيف.
SQL> select group#,member from v$logfile;ستبدو المخرجات مشابهة لما يلي:GROUP# MEMBER ------------ -------------------------------------------------- 2 +DATAC1/DB1/ONLINELOG/group_2.272.1063449917 2 +RECOC1/DB1/ONLINELOG/group_2.281.1063449917 1 +DATAC1/DB1/ONLINELOG/group_1.273.1063449917 1 +RECOC1/DB1/ONLINELOG/group_1.282.1063449919 5 +DATAC1/DB1/ONLINELOG/group_5.264.1063812687 3 +DATAC1/DB1/ONLINELOG/group_3.268.1063450555 3 +RECOC1/DB1/ONLINELOG/group_3.283.1063450557 4 +DATAC1/DB1/ONLINELOG/group_4.261.1063450557 4 +RECOC1/DB1/ONLINELOG/group_4.284.1063450557 5 +RECOC1/DB1/ONLINELOG/group_5.422.1063812687 6 +DATAC1/DB1/ONLINELOG/group_6.262.1063812785 6 +RECOC1/DB1/ONLINELOG/group_6.445.1063812785 7 +DATAC1/DB1/ONLINELOG/group_7.263.1063812807 7 +RECOC1/DB1/ONLINELOG/group_7.446.1063812807 - عرض التكوين في Oracle Data Guard.
DGMGRL> show configurationستبدو المخرجات مشابهة لما يلي:Configuration - onpremexadr Protection Mode: MaxPerformance Members: db1 - Primary database db1_phx3g7 - Physical standby database Warning: ORA-16809: multiple warnings detected for the member Fast-Start Failover: Disabled Configuration Status: WARNING (status updated 8 seconds ago) - في Oracle Database Exadata Cloud Service البديل، قم بعرض سجلات الإعادة.
select member from v$logfile;ستبدو المخرجات مشابهة لما يلي:MEMBER --------------------------------------------------- /opt/oracle/oradata/ORCLCDB/redo03.log /opt/oracle/oradata/ORCLCDB/redo02.log /opt/oracle/oradata/ORCLCDB/redo01.log - قم بالدخول إلى جلسة عمل واجهة سطر أوامر Oracle Data Guard (DGMGRL) في طبعة قاعدة بيانات Oracle Database Exadata Cloud Service البديلة باستخدام اسم المستخدم وكلمة السر
sys.[oracle@droci admin]$ dgmgrl DGMGRL> connect - عرض التكوين في قاعدة البيانات البديلة في OCI.
DGMGRL> show configuration;ستبدو المخرجات مشابهة لما يلي:Configuration - OnPremDr Protection Mode: MaxPerformance Members: db1 - Primary database db1_phx3g7 - Physical standby database Warning: ORA-16809: multiple warnings detected for the member Fast-Start Failover: Disabled Configuration Status: WARNING (status updated 38 seconds ago) - قم بتحرير طبعة قاعدة البيانات البديلة في OCI وتعيين الحالة إلى
apply-off. عند نجاح الأمر، قم بالخروج من واجهة سطر الأوامر.DGMGRL> edit database DB1_phx3g7 set state=apply-off;DGMGRL> exit - قم بالدخول إلى طبعة قاعدة البيانات البديلة في OCI كـ
sysdba.[oracle@exacs82-vm3sv1 ~]$ sqlplus / as sysdba - عرض رقم المجموعة وأعضاء ملف الأرشيف.
SQL> select group#,member from v$logfile;ستبدو المخرجات مشابهة لما يلي:GROUP# ---------- MEMBER -------------------------------------------------------------------------------- 2 +DATAC1/DB1_PHX3G7/ONLINELOG/group_2.354.1063638089 3 +DATAC1/DB1_PHX3G7/ONLINELOG/group_3.355.1063638089 1 +DATAC1/DB1_PHX3G7/ONLINELOG/group_1.353.1063638089 4 +DATAC1/DB1_PHX3G7/ONLINELOG/group_4.356.1063638089 - عرض حجم كل مجموعة.
select bytes, group# from v$log;ستبدو المخرجات مشابهة لما يلي:BYTES GROUP# ---------- ---------- 209715200 1 209715200 2 209715200 3 209715200 4 - أضف مجموعات ملفات الأرشيف البديل إلى قاعدة البيانات في OCI.
[oracle@exacs82-vm3sv1 ~]$ sqlplus / as sysdbaalter database add standby logfile group 5 ('+DATAC1','+RECOC1'); alter database add standby logfile group 6 ('+DATAC1','+RECOC1'); alter database add standby logfile group 7 ('+DATAC1','+RECOC1'); - عرض رقم المجموعة وأعضاء ملف الأرشيف.
SQL> select group#,member from v$logfile;ستبدو المخرجات مشابهة لما يلي:GROUP# ---------- MEMBER -------------------------------------------------------------------------------- 2 +DATAC1/DB1_PHX3G7/ONLINELOG/group_2.354.1063638089 3 +DATAC1/DB1_PHX3G7/ONLINELOG/group_3.355.1063638089 1 +DATAC1/DB1_PHX3G7/ONLINELOG/group_1.353.1063638089 4 +DATAC1/DB1_PHX3G7/ONLINELOG/group_4.356.1063638089 5 +DATAC1/DB1_PHX3G7/ONLINELOG/group_5.358.1063813749 5 +RECOC1/DB1_PHX3G7/ONLINELOG/group_5.256.1063813749 6 +DATAC1/DB1_PHX3G7/ONLINELOG/group_6.359.1063813761 6 +RECOC1/DB1_PHX3G7/ONLINELOG/group_6.262.1063813761 7 +DATAC1/DB1_PHX3G7/ONLINELOG/group_7.360.1063813773 7 +RECOC1/DB1_PHX3G7/ONLINELOG/group_7.300.1063813773 - في طبعة قاعدة بيانات OCI البديلة، قم بالدخول إلى جلسة عمل واجهة سطر أوامر Oracle Data Guard (DGMGRL) باسم المستخدم وكلمة السر
sys.[oracle@exacs82-vm3sv1 ~]$ dgmgrl DGMGRL> connect Username: sys Password:Connected to "DB1_phx3g7" Connected as SYSDBA. - قم بتحرير طبعة قاعدة البيانات البديلة في OCI وتعيين الحالة إلى
apply-on.DGMGRL> edit database db1_phx3g7 set state=apply-on; - قم بتحرير طبعة قاعدة البيانات البديلة في OCI وتعيين حالة النقل إلى
transport-on، ثم قم بالخروج من واجهة سطر الأوامر. عند نجاح الأمر، قم بالخروج من DGMGRL.DGMGRL> edit database DB1 set state=transport-on;DGMGRL> exit - عرض ملفات السجل البديل في قاعدة البيانات البديلة في OCI للتحقق من البديل.
SQL> select * from v$logfile where type='STANDBY'; - عرض ملفات أرشيف الإعادة في قاعدة البيانات البديلة في OCI.
SQL> select member from v$logfile where type != 'STANDBY';ستبدو المخرجات مشابهة لما يلي:MEMBER -------------------------------------------------------------------------------- +DATAC1/DB1_PHX3G7/ONLINELOG/group_2.354.1063638089 +DATAC1/DB1_PHX3G7/ONLINELOG/group_3.355.1063638089 +DATAC1/DB1_PHX3G7/ONLINELOG/group_1.353.1063638089 +DATAC1/DB1_PHX3G7/ONLINELOG/group_4.356.1063638089 - استعادة قاعدة البيانات البديلة المدارة.
SQL> recover managed standby database cancel;ستبدو المخرجات مشابهة لما يلي:Media recovery complete - عرض الملفات باستخدام المعلمة
convert.SQL> show parameter convert;ستبدو المخرجات مشابهة لما يلي:NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_file_name_convert string DB1, DB1_phx3g7 log_file_name_convert string DB1, DB1_phx3g7 pdb_file_name_convert string - عرض ملفات قاعدة البيانات.
select name from v$datafile;ستبدو المخرجات مشابهة لما يلي:NAME -------------------------------------------------------------------------------- +DATAC1/DB1_PHX3G7/DATAFILE/system.348.1063638053 +DATAC1/DB1_PHX3G7/DATAFILE/sysaux.349.1063638055 +DATAC1/DB1_PHX3G7/DATAFILE/undotbs1.350.1063638057 +DATAC1/DB1_PHX3G7/DATAFILE/undotbs2.351.1063638057 +DATAC1/DB1_PHX3G7/DATAFILE/users.352.1063638059 - عرض تفاصيل أرشيف Oracle Data Guard.
SQL> SELECT ROLE, THREAD#, SEQUENCE#, ACTION FROM V$DATAGUARD_PROCESS;ستبدو المخرجات مشابهة لما يلي:ROLE THREAD# SEQUENCE# ACTION ------------------------ ---------- ---------- ------------ RFS ping 1 0 IDLE RFS ping 2 62 IDLE RFS async 2 62 RECEIVING broker instance worker 0 0 IDLE broker worker 0 0 IDLE archive redo 0 0 IDLE archive redo 0 0 IDLE archive redo 0 0 IDLE archive local 0 0 IDLE redo transport timer 0 0 IDLE gap manager 0 0 IDLE ROLE THREAD# SEQUENCE# ACTION ------------------------ ---------- ---------- ------------ broker monitor 0 0 IDLE broker net worker 0 0 IDLE redo transport monitor 0 0 IDLE log writer 0 0 IDLE RFS async 0 187 RECEIVING 16 rows selected. - تعطيل استعادة قاعدة البيانات البديلة المدارة باستخدام ملف السجل.
SQL> recover managed standby database using current logfile disconnect;Media recovery complete. - عرض الملفات بمعلمة الوجهة والتحقق منها.
SQL>show parameter dest;