oracle 19c dataguard 搭建

发布时间:2026/7/10 13:09:45
oracle 19c dataguard 搭建 IPsidDB_UNIQUE_NAME主库192.168.31.1orclorcl备库192.168.31.2orclorcldg1.主库参数设置--打开数据强制日志 alter database force logging; --确认数据库开启归档如未开启归档请开启归档 archive log list; alter system set log_archive_configdg_config(orcl,orcldg) scopeboth; --设置归档日志的本地目录及远程目录,async表示采用异步 alter system set log_archive_dest_1location/data/orcl_arch lgwr valid_for(all_logfiles,all_roles) db_unique_nameorcl scopeboth; alter system set log_archive_dest_2serviceorcldg lgwr async valid_for(online_logfiles,primary_role) db_unique_nameorcldg scopeboth; alter system set standby_file_managementauto scopeboth; alter system set fal_serverorcldg scopespfile; alter system set fal_clientorcl scopespfile;2.主库日志文件添加standby日志组比redo日志多一组即可alter database add standby logfile group 5 (/data/ORCL/standbyredo05.log) size 200M; alter database add standby logfile group 6 (/data/ORCL/standbyredo06.log) size 200M; alter database add standby logfile group 7 (/data/ORCL/standbyredo07.log) size 200M; alter database add standby logfile group 8 (/data/ORCL/standbyredo08.log) size 200M; alter database add standby logfile group 9 (/data/ORCL/standbyredo09.log) size 200M;3.主库添加静态监听及tnsnames.ora添加SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAMEmislake) (ORACLE_HOME/u01/app/oracle/product/19.3.0/db_1) (SID_NAMEorcl) ) )orcl (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 192.168.31.1)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcl) ) ) orcldg (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 192.168.31.2)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcldg) ) )4.备库添加静态监听及tnsnames.ora添加SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAMEorcldg) (ORACLE_HOME/u01/app/oracle/product/19.3.0/db_1) (SID_NAMEorcldg) ) )orcl (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 192.168.31.1)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcl) ) ) orcldg (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 192.168.31.2)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcldg) ) )5主库创建pfile文件并将pfile文件及密码文件拷贝至备库scp orapworcl oracle192.168.31.2:/u01/app/oracle/product/19.3.0/dbhome_1/dbs/orapworcldgcreate pfile/home/oracle/1.ora from spfilescp /home/oracle/1.oracle192.168.31.2:/home/oracle6.修改备库pfile文件对于目录装换--以下两种配置选择一种即可*.log_file_name_convert/data/ORCL,/data/ORCLDG*.db_file_name_convert/data/ORCL,/data/ORCLEDG*.db_create_file_dest/data*.db_create_online_log_dest_1/data--------------------场景主库创建方式备库配置是否需要 convert场景 1主备都用 OMFOMF不指定路径设了 db_create_file_dest AUTO不需要OMF 自动接管场景 2主库显式路径备库用 OMF指定完整路径设了 db_create_file_dest AUTO必须配redo 里是具体路径OMF 不会自动拦截场景 3主库 OMF备库没设 OMFOMF没设 db_create_file_dest必须配备库不知道往哪放场景 4都不用 OMF显式路径路径不同必须配--添加 *.db_unique_nameorcldg *.db_create_file_dest/data *.db_create_online_log_dest_1/data *.standby_file_managementauto --修改 *.log_archive_dest_1location/data/orcl_arch lgwr valid_for(all_logfiles,all_roles) db_unique_nameorcldg scopeboth; *.log_archive_dest_2serviceorcl lgwr async valid_for(online_logfiles,primary_role) db_unique_nameorcl scopeboth; *.fal_clientorcldg *.fal_serverorcl7.备库创建spfilecreate spfile from pfile/home/orcl/1.ora8.启动备库至nomountSQL startup nomount9.用rman duplicate主库rman target sys/oracleorcl auxiliary sys/oracleorcldg run { allocate channel c1 type disk rate 200M; allocate channel c2 type disk rate 200M; allocate channel c3 type disk rate 200M; allocate auxiliary channel st1 type disk rate 200M; allocate auxiliary channel st2 type disk rate 200M; allocate auxiliary channel st3 type disk rate 200M; duplicate target database for standby from active database nofilenamecheck dorecover; release channel c1; release channel c2; release channel c3; release channel st1; release channel st2; release channel st3; }10.open数据库并开启同步SQL select open_mode from v$database; OPEN_MODE ------------------------------------------------------------ MOUNTED SQL alter database open; Database altered. SQL select log_mode,open_mode ,database_role from v$database; LOG_MODE OPEN_MODE DATABASE_ROLE --------------- --------------- -------------------- ARCHIVELOG READ ONLY PHYSICAL STANDBY SQLalter database recover managed standby database using current logfile disconnect from session;11.验证是否正常同步可以在主库新建一个表看看备库是否有