le) db_unique_name=pdb' *.LOG_ARCHIVE_DEST_STATE_1=ENABLE *.LOG_ARCHIVE_DEST_STATE_2=ENABLE *.STANDBY_FILE_MANAGEMENT=AUTO
--创建备库相应的目录(以下是我的路径): 数据文件和日志文件目录/u01/app/oracle/oradata/orcl/ 闪回区目录:/u01/app/oracle/flash_recovery_area/orcl 警报日志文件目录:/u01/app/oracle/diag/rdbms/sdb/orcl/trace 归档日志文件目录:/ss/archivelog/orcl
--备库:以pfile创建spfile并启动数据库到nomount: SQL>startrup nomount pfile='/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora' SQL>create spfile from pfile; SQL>shutdown immediate; SQL>startup nomount
--检测主备库的网络连通性: 主库: SQL> conn sys/oracle@pdb as sysdba
Connected.
SQL> conn sys/oracle@sdb as sysdba
Connected. 备库: SQL> conn sys/oracle@sdb as sysdba
Connected.
SQL> conn sys/oracle@pdb as sysdba
Connected.
--使用rman备份数据库: 备份当前控制文件: RMAN>backup format '/ss/backup/controlfile_%U' current controlfile for standby; 备份数据文件和归档日志文件: RMAN>backup format '/ss/backup/db_%U' database plus archivelog;
--把备份集拷贝到和主库一样的目录/ss/backup/下: scp /ss/backup/* oralce@192.168.133.134:/ss/backup/
--physical standby database的创建 --上面的步骤中我们已经将备库启动到nomount了,打开rman,使用rman的rman duplicate创建备用数据库: [oracle@dg2 ~]$rman target sys/oracle@pdb auxiliary / RMAN>duplicate target database for standby nofilenamecheck; 备用数据库完成之后,数据库会自动开启到mount: SQL>select status from v$instance; (如果主备目录不同:duplicate target database for standby; 如果主备目录相同:duplicate target database for standby nofilenamecheck;)
--修改备库为恢复管理模式,使备库可以应用主库的redo数据,实现同步: SQL>alter database recover managed standby database disconnect from session; 或 SQL>alter database recover managed standby database using current logfile disconnect from session;
--检查是否有错误信息出现: SQL>select error from v$archive_dest where target='STANDBY';
--检查备库日志应用情况: SQL> select sequence#,first_time,next_time,applied from v$archived_log order by sequence#;
SEQUENCE# FIRST_TIM NEXT_TIME APPLIED ---------- --------- --------- --------- 30 01-NOV-14 01-NOV-14 YES 31 01-NOV-14 01-NOV-14 YES 32 01-NOV-14 02-NOV-14 YES 33 02-NOV-14 02-NOV-14 YES 34 02-NOV-14 02-NOV-14 YES 35 02-NOV-14 02-NOV-14 YES 36 02-NOV-14 02-NOV-14 YES 37 02-NOV-14 02-NOV-14 YES
--在主库切换日志,在备库中查看日志应用情况: SEQUENCE# FIRST_TIM NEXT_TIME APPLIED ---------- --------- --------- --------- 30 01-NOV-14 01-NOV-14 YES 31 01-NOV-14 01-NOV-14 YES 32 01-NOV-14 02-NOV-14 YES 33 02-NOV-14 02-NOV-14 YES 34 02-NOV-14 02-NOV-14 YES 35 02-NOV-14 02-NOV-14 YES 36 02-NOV-14 02-NOV-14 YES 37 02-NOV-14 02-NOV-14 YES 38 02-NOV-14 03-NOV-14 IN-MEMORY
--为主备库分别创建standby日志文件(至少比redo log多一组): 取消备库日志应用: SQL>alter database recover managed standby database cancel; 主库: SQL>alter database add standby logfile '/u01/app/oracle/oradata/orcl/stdredo01.log' size 50m; SQL>alter database add standby logfile '/u01/app/oracle/oradata/orcl/stdredo02.log' size 50m; SQL>alter database add standby logfile '/u01/app/oracle/oradata/orcl/stdredo03.log' size 50m; SQL>alter database add standby logfile '/u01/app/oracle/oradata/orcl/stdredo04.log' size 50m; SQL> select group#,status,member from v$logfile;
GROUP# STATUS MEMBER ---------- ------- -------------------------------------------------- 3 /u01/app/oracle/oradata/orcl/redo03.log 2 /u01/app/oracle/oradata/orcl/redo02.log 1 /u01/app/oracle/oradata/orcl/redo01.log 4 /u01/app/oracle/oradata/orcl/stdredo01.log 5 /u01/app/oracle/oradata/orcl/stdredo02.log 6 /u01/ |