网站安全建设 应用开发,郴州网站建设,长沙做一个网站要多少钱,asp 绿色环保企业网站源码 v1.1使用duplicate搭建备库或者级联备库#xff1a; 主库或者源端#xff1a; 1. 创建pfile#xff0c;更改添加部分参数、传输到备库#xff1b; 2. 主库#xff08;或者源端#xff09;的tnsnames.ora文件添加 备库的连接信息 备库#xff1a; 1. 备库添加静态监听 2…使用duplicate搭建备库或者级联备库 主库或者源端 1. 创建pfile更改添加部分参数、传输到备库 2. 主库或者源端的tnsnames.ora文件添加 备库的连接信息 备库 1. 备库添加静态监听 2. 添加主备库信息到TNSNAMES.ORA文件中可选 3. 将主库的orapw$SID 文件拷贝到备库可使用sqlplus sys/passwordprimary as sysdba 验证密码正确与否 4. 备库 创建initstb.ora 里面的目录并使用此pfile启动到Nomount状态
主库或者源端 以上都做完在主库或者源端做rman连接使用duplicate进行复制了
以上是主备库需要做的事情汇总
以下是使用duplicate复制的具体步骤
主库或者源端 创建pfile更改添加部分参数、传输到备库这里我没有使用主库而是主库的ADG备库作为源端 1. sqlplus / as sysdba登录ADG备库 create pfile/home/oracle/initstb.ora from spfile;
去/home/oracle找到initstb.ora文件替换里面所有的hgxx为 hgxxdg5 ,可添加如下参数scp传输到备库 *.db_file_name_converthgxxdg1,hgxxdg5,/u01/app/oracle/oradata/HGXXDG1/datafile,/u01/app/oracle/oradata/HGXXDG5/datafile *.log_file_name_converthgxxdg1,hgxxdg5 *.standby_file_managementauto *.db_create_file_dest/u01/app/oracle/oradata *.log_archive_configdg_config(hgxx,hgxxdg5) log_archive_dest_1LOCATION/u01/app/oracle/oradata/HDCC/archivelog 2. 主库tnsnames.ora 添加备库信息 cat $ORACLE_HOME/network/admin/tnsnames.ora
hgxxdg5 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST xx.xx.xx.xx)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME hgxxdg5 ) ) ) 备库 1. 备库添加静态监听 cat $ORACLE_HOME/network/admin/listener.ora SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAME hgxx) (ORACLE_HOME /u01/app/oracle/product/11.2.0/dbhome_1) (SID_NAME hgxxdg5) ) )
LISTENER (DESCRIPTION_LIST (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST xx.xx.xx.xx)(PORT 1521)) (ADDRESS (PROTOCOL IPC)(KEY EXTPROC0)) ) ) 2. 添加主备库信息到TNSNAMES.ORA文件中可选 cat $ORACLE_HOME/network/admin/tnsnames.ora hgxx (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST xx.xx.xx.xx)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME hgxx) ) ) hgxxdg5 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST xx.xx.xx.xx)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME hgxxdg5 ) ) ) 3. 将主库的orapw$SID 文件拷贝到备库可使用sqlplus sys/passwordprimary as sysdba 验证密码正确与否
4. 备库 创建initstb.ora 里面的目录并使用此pfile启动到Nomount状态 4.1 在备库创建initstb.ora里面的目录数据文件的目录目录存在的话跳过 mkdir -p /u01/app/oracle/admin/hgxxdg1/adump mkdir -p /u01/app/oracle/oradata/hgxxdg1/controlfile/ mkdir -p /u01/app/oracle/oradata mkdir -p /u01/app/oracle/fast_recovery_area
4.2启动要duplicate的备库到nomount状态 startup nomount pfile/home/oracle/initstb.ora; create spfile from pfile/home/oracle/initstb.ora; 再回到主库或者源端使用rman登录并duplicate复制 rman target sys/j5JP8zIeHDCC auxiliary sys/j5JP8zIehdccdg5
duplicate target database for standby from active database nofilenamecheck;
以下是输出结果 [oracleD2-CC-DB78 admin]$ rman target sys/passwordprimary auxiliary sys/passwordstandby Recovery Manager: Release 11.2.0.4.0 - Production on Wed Aug 14 11:10:24 2024 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: HGXX (DBID893348868) connected to auxiliary database: HGXX (not mounted) RMAN duplicate target database for standby from active database nofilenamecheck; Starting Duplicate Db at 14-AUG-24 using target database control file instead of recovery catalog allocated channel: ORA_AUX_DISK_1 channel ORA_AUX_DISK_1: SID357 device typeDISK contents of Memory Script: { backup as copy reuse targetfile /u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapwhdccdg1 auxiliary format /u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapwhdccdg5 ; } executing Memory Script Starting backup at 14-AUG-24 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID305 device typeDISK Finished backup at 14-AUG-24 contents of Memory Script: { backup as copy current controlfile for standby auxiliary format /u01/app/oracle/oradata/HGXXDG5/controlfile/control01.ctl; } executing Memory Script Starting backup at 14-AUG-24 using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile copy copying standby control file output file name/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_hdccdg1.f tagTAG20240814T111029 RECID42 STAMP1176981029 channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01 Finished backup at 14-AUG-24 contents of Memory Script: { sql clone alter database mount standby database; } executing Memory Script sql statement: alter database mount standby database contents of Memory Script: { set newname for tempfile 1 to /u01/app/oracle/oradata/HDCCDG5/datafile/o1_mf_temp_gclf6dvf_.tmp; switch clone tempfile all; set newname for datafile 1 to /u01/app/oracle/oradata/hgxxdg1/system.256.1005835259; ...中间省略 backup as copy reuse datafile 1 auxiliary format /u01/app/oracle/oradata/hgxxdg5/system.256.1005835259 datafile ...中间省略 } executing Memory Script executing command: SET NEWNAME renamed tempfile 1 to /u01/app/oracle/oradata/HGXXDG5/datafile/o1_mf_temp_gclf6dvf_.tmp in control file executing command: SET NEWNAME ...中间省略 Starting backup at 14-AUG-24 using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile copy input datafile file number00006 name/u01/app/oracle/oradata/hgxxdg1/html.326.1005901859 output file name/u01/app/oracle/oradata/hgxxdg5/html.326.1005901859 tagTAG20240814T111036 channel ORA_DISK_1: datafile copy complete, elapsed time: 00:06:35 input datafile file number00004 name/u01/app/oracle/oradata/hgxxdg1/users.259.1005835259 output file name/u01/app/oracle/oradata/hgxxdg5/users.259.1005835259 tagTAG20240814T111036 channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01 ...中间省略 Finished backup at 14-AUG-24 contents of Memory Script: { switch clone datafile all; } executing Memory Script datafile 1 switched to datafile copy input datafile copy RECID42 STAMP1176985399 file name/u01/app/oracle/oradata/hgxxdg5/system.256.1005835259 ...中间省略 Finished Duplicate Db at 14-AUG-24 主库或者源库修改如下参数也可以直接写在Init文件中 alter system set log_archive_configDG_CONFIG(hgxxdg1,hgxxdg5) scopeboth sid*;
alter system set log_archive_dest_5 SERVICEhgxxdg5 LGWR ASYNC VALID_FOR(STANDBY_LOGFILES,STANDBY_ROLE) DB_UNIQUE_NAMEhgxxdg5 scopeboth sid*; alter system set log_archive_dest_state_5defer scopeboth sid*; alter system set log_archive_dest_state_5enable scopeboth sid*;
备库参数修改如下 alter system set log_archive_dest_3 SERVICEstandby78 LGWR ASYNC VALID_FOR(STANDBY_LOGFILES,STANDBY_ROLE) DB_UNIQUE_NAMEhgxxdg1 scopeboth sid*; alter system set log_archive_dest_state_3defer scopeboth sid*; alter system set log_archive_dest_state_3enable scopeboth sid*; 备库开启恢复进程 alter database recover managed standby database using current logfile disconnect from session;
查看恢复进程是否开启以及传输日志进程 set linesize 400; select process,pid,status,thread#,sequence# from v$managed_standby; PROCESS PID STATUS THREAD# SEQUENCE# --------------------------- --------------- ------------------------------------ --------------- --------------- ARCH 31943 CONNECTED 0 0 ARCH 31946 CONNECTED 0 0 ARCH 31948 CONNECTED 0 0 ARCH 31950 CONNECTED 0 0 MRP0 15347 WAIT_FOR_LOG 1 19717 RFS 18007 IDLE 0 0 RFS 15797 IDLE 0 0
查看备库alert日志正在恢复数据了这个是自动传输到备库的并且开始恢复 Wed Aug 14 13:50:51 2024 Media Recovery Waiting for thread 1 sequence 19717
或者执行以下语句查看备库执行过的log跟主库或源端进行对比 SYSselect thread#,max(sequence#) from v$log_history group by thread#; THREAD# MAX(SEQUENCE#) --------------- --------------- 1 19716 2 15537
开启数据库为只读状态
SYSalter database open;
Database altered.
SYSalter database recover managed standby database using current logfile disconnect from session;
Database altered.
查看备库的状态
SYSselect open_mode,database_role from v$database;
OPEN_MODE DATABASE_ROLE -------------------- ---------------- READ ONLY WITH APPLY PHYSICAL STANDBY 以下其他数据字典表也可以作为参考
查看应用日志延迟时间
SQL select value from v$dataguard_stats where nameapply lag;
查看接收日志延迟时间
SQL select value from v$dataguard_stats where nametransport lag;
查看接受日志情况
SQL select max(sequence#) from v$archived_log where appliedYES;