由物理standby到逻辑standby:
1.--logic standby要求表必须有唯一逻辑标识
可通过:select * from dba_logstdby_not_unique;查看哪些没有。
添加数据库级别唯一标识:
alter database add supplemental log data(primary key,unique index) columns;
2.--查看那些表或列logic standby不支持:
select * from dba_logstdby_unsupported
3.备库:与主库同步后停止日志应用
alter database recover managed standby database cancel;
4.主库:build数据字典到redo(该过程会等待所有存在事务的完成,如果是频繁操作的线上系统将产生问题)
SQL> exec dbms_logstdby.build;
PL/SQL procedure successfully completed.
5.备库:转换physical standby 到 logic standby
SQL> alter database recover to logical standby logic_db;
Database altered.
6.备库:关闭重启
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Database mounted.
7.备库:打开logic standby
SQL> alter database open resetlogs;
Database altered.
8.备库:开始应用日志
SQL> alter database start logical standby apply [immediate];
Database altered.
加[immediate]则real time apply
9.备库:停止应用命令
SQL> alter database stop logical standby apply;
Database altered.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11417069/viewspace-683758/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/11417069/viewspace-683758/