table t (x varchar2(8));
Table created.
secooler@ora11g> insert into t values ('Secooler');
1 row created.
secooler@ora11g> commit;
Commit complete.
secooler@ora11g> select * from t;
X
--------
Secooler
2)此时观察ora11g实例的alert日志记录了如下信息
Fri Mar 16 11:56:36 2012
create tablespace secooler_tbs datafile '/u01/app/oracle/oradata/ora11g/secooler_tbs01.dbf' size 10m
Fri Mar 16 11:56:48 2012
Completed: create tablespace secooler_tbs datafile '/u01/app/oracle/oradata/ora11g/secooler_tbs01.dbf' size 10m
3)几乎与此同时(1秒)备库ora11gdg实例的警告日志中记录了如下信息
Fri Mar 16 11:56:37 2012
Recovery created file /u01/app/oracle/oradata/ora11gdg/secooler_tbs01.dbf
Successfully added datafile 5 to media recovery
Datafile #5: '/u01/app/oracle/oradata/ora11gdg/secooler_tbs01.dbf'
可见,备库已经接受到主库的这个变化,并把这个变化在备库应用完毕。
4)验证主库所创建表空间、用户以及表并初始化数据是否在备库应用成功
(1)查看备库表空间
sys@ora11gdg> select * from v$tablespace where name = 'SECOOLER_TBS';
TS# NAME INC BIG FLA ENC
---------- ------------------------------ --- --- --- ---
8 SECOOLER_TBS YES NO YES
sys@ora11gdg> select ts#,status,bytes,name from v$datafile where ts# = 8;
TS# STATUS BYTES NAME
---------- ------- ---------- ------------------------------
8 RECOVER 10485760 /u01/app/oracle/oradata/ora11g
dg/secooler_tbs01.dbf
创建成功,但是此时备库数据文件的状态是“RECOVER”。
(2)查看备库用户及数据是否存在
sys@ora11gdg> conn secooler/secooler
Connected.
secooler@ora11g> set lines 80
secooler@ora11g> desc t;
Name Null? Type
------------------ -------- ----------------------------
X VARCHAR2(8)
secoolerdg@ora11g> select * from t;
X
--------
Secooler
主库上的变化已经即使的在备库上得到应用。
这便是Oracle 11g物理Active Data Guard实时查询(Real-time query)特性的体现。
3.小结
本文以