查归档日志文件每小时生成量 - miki西游 不积跬步,无以至千里;不积小流,无以成江海 - ITeye博客

在Oracle数据库中,通过v$archived_log数据字典视图查询该数据库的归档日志文件的生成情况。如果你以为在rac下需要查的gv$archvied_log视图,这其实是一个错误的想法。无论在单实例数据库,还是多实例的RAC数据库,都是查这个视图来获取信息。

(miki西游 @mikixiyou 原文链接: http://mikixiyou.iteye.com/blog/1749746)

查当天每小时的归档日志生成量

Sql代码

  1. select logtime, 
  2. count(*), 
  3.        round(sum(blocks * block_size) / 1024 / 1024) mbsize 
  4. from (select trunc(first_time, 'hh') as logtime, a.BLOCKS, a.BLOCK_SIZE 
  5. from v$archived_log a 
  6. where a.DEST_ID = 1 
  7. and a.FIRST_TIME > trunc(sysdate)) 
  8. groupby logtime 
  9. orderby logtime desc; 

查最近一周每天的归档日志生成量

Sql代码

  1. select logtime, 
  2. count(*), 
  3.        round(sum(blocks * block_size) / 1024 / 1024) mbsize 
  4. from (select trunc(first_time, 'dd') as logtime, a.BLOCKS, a.BLOCK_SIZE 
  5. from v$archived_log a 
  6. where a.DEST_ID = 1 
  7. and a.FIRST_TIME > trunc(sysdate - 7)) 
  8. groupby logtime 
  9. orderby logtime desc; 

如果你需要知道RAC下各个节点的归档日志情况,我将上面脚本略作修改,增加thread#列。

查当天每小时的各个实例的归档日志生成量

Sql代码

  1. select THREAD#, 
  2.        logtime, 
  3. count(*), 
  4.        round(sum(blocks * block_size) / 1024 / 1024) mbsize 
  5. from (select a.THREAD#, 
  6.                trunc(first_time, 'hh') as logtime, 
  7.                a.BLOCKS, 
  8.                a.BLOCK_SIZE 
  9. from v$archived_log a 
  10. where a.DEST_ID = 1 
  11. and a.FIRST_TIME > trunc(sysdate)) 
  12. groupby THREAD#, logtime 
  13. orderby THREAD#, logtime desc; 

查最近一周每天的各个实例的归档日志生成量

Sql代码

  1. select THREAD#, 
  2.        logtime, 
  3. count(*), 
  4.        round(sum(blocks * block_size) / 1024 / 1024) mbsize 
  5. from (select THREAD#, 
  6.                trunc(first_time, 'dd') as logtime, 
  7.                a.BLOCKS, 
  8.                a.BLOCK_SIZE 
  9. from v$archived_log a 
  10. where a.DEST_ID = 1 
  11. and a.FIRST_TIME > trunc(sysdate - 7)) 
  12. groupby THREAD#, logtime 
  13. orderby THREAD#, logtime desc; 

敬请留存,以备不时之需 @mikixiyou

猜你喜欢

转载自www.cnblogs.com/liangjiayan/p/10920211.html