Oracle RAC环境下的v$log v$logfile(二)

2014-11-24 16:10:07 · 作者: · 浏览: 2
ce_nu NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ instance_number integer 2 SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 10 Next log sequence to archive 11 Current log sequence 11 --->当前日志组为11,位于实例1,这两个验证与我们从v$log实例里看到的是一样的情形。 -->查询v$logfile SQL> select * from v$logfile; GROUP# STATUS TYPE MEMBER IS_ ---------- ------- ------- ----------------------------------------------------------------- --- 2 ONLINE +ASM_DATA/mmbo/onlinelog/group_2.262.821029383 NO 2 ONLINE +FRA_DATA/mmbo/onlinelog/group_2.258.821029385 YES 1 ONLINE +ASM_DATA/mmbo/onlinelog/group_1.261.821029381 NO 1 ONLINE +FRA_DATA/mmbo/onlinelog/group_1.257.821029383 YES 3 ONLINE +ASM_DATA/mmbo/onlinelog/group_3.266.821029785 NO 3 ONLINE +FRA_DATA/mmbo/onlinelog/group_3.259.821029787 YES 4 ONLINE +ASM_DATA/mmbo/onlinelog/group_4.267.821029787 NO 4 ONLINE +FRA_DATA/mmbo/onlinelog/group_4.260.821029789 YES 8 rows selected. --由于每一组日志包含2个成员,因此视图查询返回8行记录。如前面所说,该视图同样包含了所有实例的日志成员。 --从上面的视图可知,当前数据库总共4个日志组,8个日志成员,其中每一组的一个成员位于闪回区。 --->查询gv$log SQL> select inst_id,group#,thread#,sequence#,members,archived,status,first_time,next_time from gv$log; INST_ID GROUP# THREAD# SEQUENCE# MEMBERS ARC STATUS FIRST_TIME NEXT_TIME ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------------- ------------------- 2 1 1 13 2 NO CURRENT 2013/08/05 14:38:36 2 2 1 12 2 YES INACTIVE 2013/08/05 14:04:29 2013/08/05 14:38:36 2 3 2 11 2 NO CURRENT 2013/08/05 14:44:50 2013/08/05 14:44:50 2 4 2 10 2 YES INACTIVE 2013/08/05 14:04:32 2013/08/05 14:38:33 1 1 1 13 2 NO CURRENT 2013/08/05 14:38:36 1 2 1 12 2 YES INACTIVE 2013/08/05 14:04:29 2013/08/05 14:38:36 1 3 2 11 2 NO CURRENT 2013/08/05 14:44:50 2013/08/05 14:44:50 1 4 2 10 2 YES INACTIVE 2013/08/05 14:04:32 2013/08/05 14:38:33 8 rows selected. -->
关闭任意一节点后查询v$log与gv$log的情形 SQL> ho srvctl stop instance -d mmbo -i mmbo2 SQL> select group#,thread#,sequence#,members,archived,status,first_time,next_time from v$log; GROUP# THREAD# SEQUENCE# MEMBERS ARC STATUS FIRST_TIME NEXT_TIME ---------- ---------- ---------- ---------- --- ---------------- ------------------- ------------------- 1 1 13 2 NO CURRENT 2013/08/05 14:38:36 2 1 12 2 YES INACTIVE 2013/08/05 14:04:29 2013/08/05 14:38:36 3 2 11 2 YES ACTIVE 2013/08/05 14:44:50 2013/08/05 16:21:22 4 2 10 2 YES INACTIVE 2013/08/05 14:04:32 2013/08/05 14:38:33 SQL> select inst_id,group#,thread#,sequence#,members,archived,status,first_time,next_time from gv$log; INST_ID GROUP# THREAD# SEQUENCE# MEMBERS ARC STATUS FIRST_TIME NEXT_TIME ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------------- ------------------- 1 1 1 13 2 NO CURRENT 2013/08/05 14:38:36 1 2 1 12 2 YES INACTIVE 2013/08/05 14:04:29 2013/08/05 14:38:36 1 3 2 11 2 YES ACTIVE 2013/08/05 14:44:50 2013/08/05 16:21:22 1 4 2 10 2 YES INACTIVE 2013/08/05 14:04:32 2013/08/05 14:38:33 --从上面的查询可以看出,对于我们当前2节点的数据库,此时v$log与gv$log呈现相同的信息,gv$log仅仅列出了inst_id列为1的情形 --从上面的整个测试结果可知,gv$log视图类似于使用union all, gv$logfile与此同,不再演示 -- select 1 as inst_id, v.* from v$log v --此时v$log位于实例