已完成Oracle ADG搭建。
当Oracle ADG需要执行计划性迁移时,需要提前配置Oracle自带主件。Data Guard Broker是Oracle备用数据库解决方案的名称,用于灾难恢复和高可用性。本文给出了使用Data Guard Broker设置和管理Data Guard的示例。
SELECT log_mode FROM v$database;
如果是noarchivelog模式,则执行以下命令切换到归档日志模式。
SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE ARCHIVELOG; ALTER DATABASE OPEN;
ALTER DATABASE FORCE LOGGING;.
ALTER SYSTEM SWITCH LOGFILE;
创建备用REDO日志时,确保日志文件大小至少要和原REDO日志大小相同。
select group#,member from v$logfile order by group#;
查询结果如图所示。
用户需要根据REDO日志文件的数量在主备端创建备用日志,且GROUP起始数值在已有数值上递增。以图1为例,当仅有Thread 1时,图中GROUP已有数值中最大值为2,则创建REDO备用日志时GROUP起始数值应大于2。
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 3 ('+REDO/hwdb/standby_redo01.log') SIZE 1024M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 4 ('+REDO/hwdb/standby_redo02.log') SIZE 1024M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 5 ('+REDO/hwdb/standby_redo03.log') SIZE 1024M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 3 ('+REDO/hwdbdg/standby_redo01.log') SIZE 1024M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 4 ('+REDO/hwdbdg/standby_redo02.log') SIZE 1024M;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 GROUP 5 ('+REDO/hwdbdg/standby_redo03.log') SIZE 1024M;
HWDBDG =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = node2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hwdbdg)
)
lsnrctl stop lsnrctl start
ALTER SYSTEM SET dg_broker_start=true;
su - oracle ; dgmgrl sys/passwd@hwdb
以hwdb为ADG主端db_unique_name,hwdbdg为从端db_unique_name为例。
CREATE CONFIGURATION my_config AS PRIMARY DATABASE IS hwdb CONNECT IDENTIFIER IS hwdb;
ADD DATABASE hwdbdg AS CONNECT IDENTIFIER IS hwdbdg MAINTAINED AS PHYSICAL;
ALTER SYSTEM SET DG_BROKER_START=FALSE;
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1 = '+REDO/{primary_db_unique_name}/DR1.DAT' SCOPE=BOTH;
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2 = '+REDO/{primary_db_unique_name}/DR2.DAT' SCOPE=BOTH;
ALTER SYSTEM SET DG_BROKER_START=TRUE;
备端参考命令如下:
ALTER SYSTEM SET DG_BROKER_START=FALSE;
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE1 = '+REDO/{standby_db_unique_name}/DR1.DAT' SCOPE=BOTH;
ALTER SYSTEM SET DG_BROKER_CONFIG_FILE2 = '+REDO/{standby_db_unique_name}/DR2.DAT' SCOPE=BOTH;
ALTER SYSTEM SET DG_BROKER_START=TRUE;
ENABLE CONFIGURATION;
SHOW CONFIGURATION;
当显示为SUCCESS时,表示配置成功,可以执行Oracle ADG 计划性迁移,否则将会迁移失败。