Oracle 10g Logical DataGuard 详细搭建过程
logical standby是在physical standby基础上搭建
--停止standby上的日志应用
SQL> alter database recover managed standby database cancel;
Database altered.
--修改主库log_archive_dest_3参数,当切换为备库时在线日志归档路径
SQL> alter system set log_archive_dest_3='LOCATION=/u01/app/oracle/oradata/dbserver/arch valid_for=(standby_logfiles,standby_role) db_unique_name=dbserver';
System altered.
SQL> alter system set log_archive_dest_state_3=enable;
System altered.
--主库执行,alert.log显示Logminer Bld: Done
SQL> execute dbms_logstdby.build;
PL/SQL procedure successfully completed.
--修改备库log_archive_dest_3参数,备库在线日志归档路径
SQL> alter system set log_archive_dest_3='LOCATION=/u01/app/oracle/oradata/standby/arch valid_for=(standby_logfiles,standby_role) db_unique_name=standby';
System altered.
SQL> alter system set log_archive_dest_state_3=enable;
System altered.
--如果备库没有临时表空间需要创建
--在standby端将物理备库转为逻辑备库,最后一个standby是逻辑备库名称
SQL> select status from v$instance;
STATUS
------------
MOUNTED
SQL> select database_role from v$database;
DATABASE_ROLE
----------------
PHYSICAL STANDBY
SQL> startup mount force
ORACLE instance started.
Total System Global Area 612368384 bytes
Fixed Size 2085872 bytes
Variable Size 167775248 bytes
Database Buffers 436207616 bytes
Redo Buffers 6299648 bytes
Database mounted.
SQL> alter database recover to logical standby standby;
Database altered.
SQL> select status from v$instance;
STATUS
------------
STARTED
SQL> startup mount force
ORACLE instance started.
Total System Global Area 612368384 bytes
Fixed Size 2085872 bytes
Variable Size 167775248 bytes
Database Buffers 436207616 bytes
Redo Buffers 6299648 bytes
Database mounted.
SQL> select database_role from v$database;
DATABASE_ROLE
----------------
LOGICAL STANDBY
SQL> alter database open resetlogs;
Database altered.
SQL> select name from v$database;
NAME
---------
STANDBY
--在主库switch logfile
SQL> alter system switch logfile;
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> /
System altered.
--standby alert.log
RFS[3]: Assigned to RFS process 10806
RFS[3]: Identified database type as 'logical standby'
Mon Mar 3 13:10:28 2014
RFS LogMiner: Client enabled and ready for notification
RFS[3]: Successfully opened standby log 6: '/u01/app/oracle/oradata/standby/standby03.log'
Mon Mar 3 13:10:28 2014
RFS LogMiner: Client enabled and ready for notification
Mon Mar 3 13:11:21 2014
RFS LogMiner: Client enabled and ready for notification
Mon Mar 3 13:11:22 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[2]: Successfully opened standby log 5: '/u01/app/oracle/oradata/standby/standby02.log'
Mon Mar 3 13:11:33 2014
RFS LogMiner: Client enabled and ready for notification
Mon Mar 3 13:11:34 2014
Primary database is in MAXIMUM PERFORMANCE mode
RFS[2]: Successfully opened standby log 5: '/u01/app/oracle/oradata/standby/standby02.log'
--在备库启用实时应用
SQL> alter database start logical standby apply immediate;
Database altered.