在Oracle 11g中能够通过active dataguard特性实现备库只读而且同步应用日志,10g及其以前版本,在应用日志的时候库是不能把打开到read only模式,对于一些实时性要求不是特别高的应用,比如他们可以实现在白天只读,查询业务,晚上应用日志.如果人工每天做类似处理工作量太大,这里因为有朋友需要,基于win平台写了类似功能脚本,通过计划任务调用来实现白天只读,晚上应用日志的功能
数据库从应用归档模式转换为只读模式
代码如下 | 复制代码 |
--change_open.bat sqlplus / as sysdba @C:\oracle\product\script\change_open.sql --change_open.sql ALTER DATABASE RECOVER MANAGED STANDBY DATABASE cancel; alter database open read only; exit; |
数据库从只读模式转换到应用归档模式
代码如下 | 复制代码 |
--change_mount.bat sqlplus / as sysdba @C:\oracle\product\script\change_mount.sql --change_mount.sql shutdown immediate; startup mount ; alter system register; alter system register; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION; conn sys/oracle@ntsy as sysdba alter system set log_archive_dest_state=defer; alter system set log_archive_dest_state=enable; alter system switch logfile; exit; |