ITPub博客

首页 > Linux操作系统 > Linux操作系统 > checkpoint ckpt相关一些v$statname小记

checkpoint ckpt相关一些v$statname小记

原创 Linux操作系统 作者:wisdomone1 时间:2013-03-30 22:35:16 0 删除 编辑

/***dbwr checkpoints***即发生检查点事件时,dbwr扫描buffer cache中位于checkpoint queue的buffer cache block或者为了恢复发生的次数***/
/***也就是发生检查点时,dbwr工作的次数********此参数大于background checkpoints completed****/
DBWR checkpoints
 


 

Number of times the DBWR was asked to scan the cache and write all blocks marked for a checkpoint or the end of recovery.
This statistic is always larger than "background checkpoints completed".

/*******查看上述指标的定义**********/
SQL> select * from v$statname where name like '%checkpoint%';
 
STATISTIC# NAME                                                                  CLASS    STAT_ID
---------- ---------------------------------------------------------------- ---------- ----------
       113 DBWR checkpoints                                                          8 1732023165

 

SQL> insert into t_checkpoint select level from dual connect by level<=1000000;

1000000 rows created.
/***提交上述参数未变化*********/
SQL> commit;

Commit complete.


SQL> select value from v$sysstat where  STATISTIC#=113;
 
     VALUE
----------
         0
        
/***发生检查点事件****/        
SQL> alter system checkpoint;

System altered.

/****发生检查点事件才会递增此参数的值****/
SQL> /
 
     VALUE
----------
        16
       
/********经测切换日志此参数也会递增*****/       
SQL> /
 
     VALUE
----------
        16
 
SQL>
SQL>
SQL>
SQL> /
 
     VALUE
----------
        17       
       
       
       
/*******dbwr checkpoint buffers written参数即发生检查点事件被写入到数据文件的缓冲个数***********/
DBWR checkpoint buffers written

/*******测试前参数值*********/
SQL> select value from v$sysstat where STATISTIC#=104;
 
     VALUE
----------
     72426
 
SQL> /******插入测试表数据**********/
SQL> insert into t_checkpoint select level from dual connect by level<=1000000;

1000000 rows created.
SQL>

/*********参数增了100多个值,即发生检查点事件写入了100多个buffer到数据文件*****/
SQL> /
 
     VALUE
----------
     72535


/****我间断查询上述参数,此参数值在增加,dbwr进程会根据buffer cache dirty的情况动态调整写入的频率与大小****/
SQL> select value from v$sysstat where STATISTIC#=104;
 
     VALUE
----------
     76219
 
SQL> /
 
     VALUE
----------
     76299
 
SQL> /
 
     VALUE
----------
     76377
 
SQL> /
 
     VALUE
----------
     76377
        
        
/****background checkpoints completed参数:后台进程成功完成检查点事件的次数****/


SQL> select value from v$sysstat where STATISTIC#=219;
 
     VALUE
----------
        17
       
SQL> insert into t_checkpoint select level from dual connect by level<=1000000;

1000000 rows created.

/***此参数未变化****/
SQL> select value from v$sysstat where STATISTIC#=219;
 
     VALUE
----------
        17     
       
/***手工检查点是否变化*****/ 

SQL> alter system checkpoint;

System altered.

/****手工检查点发生了变化****/
SQL> /
 
     VALUE
----------
        18       
       
/***手工切换日志参数未变化******/       
SQL> alter system switch logfile;

System altered.

SQL> /

System altered.       

 

/****background checkpoints started参数:发生检查点事件的个数***、
不包括:
1,对于每个表空间或数据文件的离线和热备
2,alter system checkpoint

/******测试前参数值************/
SQL> select * from v$statname where name like '%background checkpoints started%';
 
STATISTIC# NAME                                                                  CLASS    STAT_ID
---------- ---------------------------------------------------------------- ---------- ----------
       218 background checkpoints started                                            8 3048007007
 
SQL> select value from v$sysstat where STATISTIC#=218;
 
     VALUE
----------
        20
       
/***手工检查点会递增此参数值*****/       
SQL> alter system checkpoint;

System altered.

SQL> /
 
     VALUE
----------
        21       
       
/***手工切换日志递增此参数值*****/       
SQL> alter system switch logfile;

System altered.

SQL> /
 
     VALUE
----------
        22       
       
/***单独的数据文件离线也不会递增此参数值*****/       
SQL> alter database datafile 21 offline;
 
Database altered
 
SQL> select value from v$sysstat where STATISTIC#=218;
 
     VALUE
----------
        22
 
SQL> alter database datafile 21 online;
 
alter database datafile 21 online
 
ORA-01113: file 21 needs media recovery
ORA-01110: data file 21: 'C:\TBS16K_1.DBF'
 
SQL> show user
User is "SYS"
 
SQL> recover datafile 21;
 
recover datafile 21
 
ORA-00900: invalid SQL statement
 
SQL> show user
User is "SYS"
 
SQL> alter database datafile 21 online;
 
Database altered
 
SQL> select value from v$sysstat where STATISTIC#=218;
 
     VALUE
----------
        22       

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9240380/viewspace-757487/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
提供针对oracle初学者及进阶的数据库培训,欢迎大家咨询: 微信: wisdomone 微信公众号: lovedb 工作经历: 中国普天 北京科蓝 北京云和恩墨 北京神州新桥

注册时间:2008-04-04

  • 博文量
    2189
  • 访问量
    12690169