环境说明
Node Name: Nodename DB_NAME DB_UNIQUE_NAME
172.16.79.231 node1 orcl orcl
172.16.79.232 node2 orcl orcls
数据库版本:oracle 12.1.0.2
OS: Linux 7.8
配置说明
1. 本文包括Dataguard两种同步数据的方式
1)使用duplicate命令直接同步初始数据
2)使用rman备份文件同步初始数据
2. 包括Active Dataguard的配置步骤
3. 监听文件中包含Global Service name,方便主备切换时不需进行太多配置更改
前言
如果配置过程不想重启主库,以下部分内容需提前满足:
如果主库为生产系统,如果以下有条件不满足,则需要安排停机时间后再操作:
1.开启归档模式 (如不满足,更改后需要重启数据库)
2.监听listener.ora 设置DG Broker内容 (如不满足,更改后需重启监听)
3.*.remote_login_passwordfile='EXCLUSIVE' ((如不满足,更改后需要重启数据库)
其它主库参数均可动态更改
配置步骤
oracle 12C dataguard搭建环境(主从库相同,从库只装软件不建库)
一.【主库操作】
1. 检查主库是否开启force_logging,否则要执行以下命令
SQL> select force_logging from v$database;
FORCE_LOGGING
---------------------------------------
NO
SQL> alter database force logging;
Database altered.
SQL> select force_logging from v$database;
FORCE_LOGGING
---------------------------------------
YES
2 检查主库归档模式开启情况
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 25
Next log sequence to archive 29
Current log sequence 29
查看关联参数
SQL> show parameter recovery
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /csdata/fast_recovery_area
db_recovery_file_dest_size big integer 500G ==>记得调大
recovery_parallelism integer 0
如果没有,则开启归档日志模式(!!! 需要重启数据库)
========================
SQL>shutdown immediate
SQL>startup mount
SQL>alter database archivelog;
SQL>alter database open;
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 6
Next log sequence to archive 8
Current log sequence 8
========================
3. 检查在线日志redolog,确认member和group#,根据在线日志添加standby logfile,standby logfile组必须比生产库多一个,大小根据查询到的BYTES值大小进行设置
SQL> select group#, members, bytes from v$log;
GROUP# MEMBERS BYTES
---------- ---------- ----------
1 2 1073741824