Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2616940
  • 博文数量: 323
  • 博客积分: 10211
  • 博客等级: 上将
  • 技术积分: 4934
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-27 14:56
文章分类

全部博文(323)

文章存档

2012年(5)

2011年(3)

2010年(6)

2009年(140)

2008年(169)

分类: Oracle

2009-02-26 16:35:06

怎样在数据库中获得OS块大小?不同的OS对应的block size会有所不同,我记得HP_UX的OS BLOCK SIZE就是1024 BYTES。言归正传。
 
首先介绍两个视图及相关的字段:

x$kccle---- [K]ernel [C]ache [C]ontrolfile management [L]ogfil[E] record

LESIZ ------logfile大小(以逻辑块表示)
LESEQ------log sequence #
LEBSZ------logfile逻辑块大小

x$kcccp----[K]ernel [C]ache [C]ontrolfile management [c]heckpoint [p]rogress

CPODR_SEQ------日志文件的seq #
CPODR_BNO------日志文件中使用块的数量

获取OS块大小的查询语句:

SQL> select max(lebsz) lbsize from x$kccle;

    LBSIZE
----------
       512

获得logfile使用率的语句:

SQL> SELECT  le.leseq    CURRENT_LOG_SEQUENCE#, 100*cp.cpodr_bno/LE.lesiz PERCENTAGE_FULL
  2  from  x$kcccp cp,x$kccle le WHERE  LE.leseq =CP.cpodr_seq;

CURRENT_LOG_SEQUENCE# PERCENTAGE_FULL
--------------------- ---------------
                    5      9.43359375

 

参考:

阅读(1266) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~