Oracle 19c rac adg配置文档(2026-04-19 01)
前言在实际项目运维过程中在配置了生产业务系统数据库的高可用的时候为确保业务数据容灾切换将会对生产业务系统配备容灾系统就是本次讲的adg只读库同时也可以对生产库起到读写分离的作用减轻生产库的压力。生产库一般都先建立容灾adg库在后面会建立在建立容灾库的同时不会对现有的库产生影响本次将采用2中方式实现数据同步第一种是采用在线同步方式在线直接从生产库拉取数据第二种采用生产库的备份数据还原容灾库再配置齐数据实时同步。本次采用第一种方式一、环境介绍1、环境版本信息序号节点OS版本数据库版本备注1rac1Oracle Linux Server 7.819.18.0.0.0rac1节点2rac2rac2节点3db100adg同步节点2、地址信息序号节点地址vip实例scan-ip1rac110.10.10.1110.10.10.13orcl10.10.10.1510.10.10.1610.10.10.1710.10.10.1810.10.10.192rac210.10.10.1210.10.10.143db10010.10.10.100N/AorcldgN/A二、主库adg参数文件配置1、启用强制日志模式SQL ALTER DATABASE FORCE LOGGING;SQL select name,open_Mode,DB_UNIQUE_NAME,FORCE_LOGGING from v$database;2、配置重做传输认证采用密码文件认证方式将主库密码文件拷贝到备库。[oracledb100 dbs]$ pwd/u01/app/oracle/product/19.3.0/dbhome_1/dbs[oracledb100 dbs]$ orapwd fileorapworcl passwordoracle entries5 forcey ignorecaseY3、配置主数据库以接收重做数据SQL select group#,thread#,bytes/1024/1024 mb,members from v$log;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 SIZE 200M;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 SIZE 200M;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 SIZE 200M;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 SIZE 200M;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 SIZE 200M;SQL ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 SIZE 200M;备注备用重做日志必须比重做源数据库的重做日志组多一个每个重做线程在重做源数据库中。4、主数据库初始化参数alter system set LOG_ARCHIVE_CONFIGDG_CONFIG(orcl,orcldg) sid* scopeboth;alter system set LOG_ARCHIVE_DEST_1LOCATIONUSE_DB_RECOVERY_FILE_DEST VALID_FOR(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAMEorcl sid* scopeboth;alter system set LOG_ARCHIVE_DEST_2SERVICEorcldg ASYNC VALID_FOR(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAMEorcldg sid* scopeboth;alter system set FAL_SERVERorcldg sid* scopeboth;alter system set DB_FILE_NAME_CONVERT/oradata/ORCLDG,DATA sid* scopespfile;生效需要重启数据库alter system set LOG_FILE_NAME_CONVERT/oradata/ORCLDG,DATA sid* scopespfile;生效需要重启数据库alter system set STANDBY_FILE_MANAGEMENTAUTO sid* scopeboth;5、配置监听及链接参数[oraclerac1 admin]$ cat tnsnames.oraORCL (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST rac-scan)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME orcl)))pdb01 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST rac-scan)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME pdb01)))pdb02 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST rac-scan)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME pdb02)))orcldg (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.10.10.100)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME orcl)))备注1、listener.ora在安装数据库的过程中直接写入生效的后期需要添加新的地址作为scan-ip可以采用命令的方式如: ./srvctl modify scan -n scan-ip2、节点rac2也需要配置。三、备库参数文件配置1、备库参数04161.ora[oracledb100 ~]$ cat 04161.oraorcl.__data_transfer_cache_size0orcl.__db_cache_size1224736768orcl.__inmemory_ext_roarea0orcl.__inmemory_ext_rwarea0orcl.__java_pool_size201326592orcl.__large_pool_size16777216orcl.__oracle_base/u01/app/oracle#ORACLE_BASE set from environmentorcl.__pga_aggregate_target838860800orcl.__sga_target2499805184orcl.__shared_io_pool_size134217728orcl.__shared_pool_size905969664orcl.__streams_pool_size0orcl.__unified_pga_pool_size0*.audit_file_dest/u01/app/oracle/admin/orcl/adump*.audit_traildb*.compatible19.0.0*.control_files/oradata/ORCL/CONTROLFILE/current.262.1199036959,/oradata/ORCL/CONTROLFILE/current.261.1199036959#Restore Controlfile*.db_block_size8192*.db_create_file_dest/oradata*.DB_FILE_NAME_CONVERTDATA,/oradata/ORCLDG*.DB_NAMEorcl*.db_recovery_file_dest/flash_recovery_area*.db_recovery_file_dest_size53687091200*.DB_UNIQUE_NAMEorcldg*.diagnostic_dest/u01/app/oracle*.dispatchers(PROTOCOLTCP) (SERVICE10.10.10.100)*.enable_pluggable_databasetrue*.FAL_SERVERorcl*.local_listenerLISTENER_orcl*.LOG_ARCHIVE_CONFIGDG_CONFIG(orcl,orcldg)*.LOG_ARCHIVE_DEST_1LOCATIONUSE_DB_RECOVERY_FILE_DESTVALID_FOR(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAMEorcldg*.LOG_ARCHIVE_DEST_2SERVICEorcl ASYNCVALID_FOR(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAMEorcl*.LOG_ARCHIVE_FORMAT%t_%s_%r.arc*.LOG_FILE_NAME_CONVERTDATA,/oradata/ORCLDG*.nls_languageAMERICAN*.nls_territoryAMERICA*.open_cursors300*.pga_aggregate_target794m*.processes300*.REMOTE_LOGIN_PASSWORDFILEEXCLUSIVE*.resource_manager_planDEFAULT_CDB_PLAN*.sga_target2382m*.STANDBY_FILE_MANAGEMENTAUTOundo_tablespaceUNDOTBS12、配置监听及连接参数[oracledb100 admin]$ cat listener.oraLISTENER (DESCRIPTION_LIST (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST db100)(PORT 1521))))SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAME orcl)(SID_NAME orcl))(SID_DESC (GLOBAL_DBNAME pdb01)(SID_NAME orcl))(SID_DESC (GLOBAL_DBNAME pdb02)(SID_NAME orcl)))[oracledb100 admin]$ cat tnsnames.oraorcl (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.10.10.11)(PORT 1521))#(在duplicate阶段采用vip地址后期采用rac-scan ip)(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME orcl)))pdb01 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.10.10.100)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME pdb01)))pdb02 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.10.10.100)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME pdb02)))orcldg (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.10.10.100)(PORT 1521))(CONNECT_DATA (SERVER DEDICATED)(SERVICE_NAME orcl)))四、备库在线同步数据[oracledb100 dbs]$ rman target sys/oracleorcl auxiliary sys/oracleorcldgrun {allocate channel ch001 type disk;allocate channel ch002 type disk;allocate channel ch003 type disk;allocate channel ch004 type disk;allocate auxiliary channel ch005 type disk;allocate auxiliary channel ch006 type disk;duplicate target database for standby from active database nofilenamecheck using compressed backupset;release channel ch001;release channel ch002;release channel ch003;release channel ch004;release channel ch005;release channel ch006;}备注在duplicte过程中出现部分报错如1、在线日志在备库无法找到对应目录 2、系统temp文件和pdb库临时文件找不到对应目录目前采取的办法是在备库创建。mkdir -p /oradata/ORCLDG/orcl/onlinelog /oradata/ORCLDG/orcl/48e6c514d0ab9d3ee0630b0a0a0ac748/tempfile/ /oradata/ORCLDG/orcl/4785c9aa302d481be0630b0a0a0a3171/tempfile//oradata/ORCLDG/orcl/3347e1a7dd8d4b99e0630b0a0a0a1598/tempfile五、应用日志同步SQL select name,action,thread#,sequence# from v$dataguard_process;SQL alter database recover managed standby database disconnect;五、测试主备库数据同步主库备库总结1、在配置rac-单库 adg的过程中特别需要注意参数文件中DB_FILE_NAME_CONVERT、LOG_FILE_NAME_CONVERT这个两个参数该参数配置关系adg配置是否成功2、在同步过程中有部分在线日志和临时文件目录有无法对应的情况需要手工创建。2026-04-19hefei