CKPT检查点队列
来源:互联网 发布:bind dns windows 编辑:程序博客网 时间:2024/05/21 05:22
buffer cache内存包含chain和buffer
LRU 将可用块串起来(按访问的频率)
LRUW 将脏块串起来(访问频率)冷端的块率先被写入硬盘。
CBC 将数据块读入内存的时候使用
CKPT(链): 1、链接的是脏块 2、第一次脏的时间链接起来的(从小到大)
RBA redo block address 日志块的地址
对块修改会产生日志,日志存在一个地址。这个地址就是RBA。
同时在修改的块记录下这个RBA地址。
对于每一个块存在2个地址:
LRBA(第一次被脏的地址)
HRBA(最后一次被脏的地址)
检查点队列里面的数据块是按照数据块的LRBA地址链接的。
CKPT有2中工作方式:1、完全检查点:会触发DBWR将所有脏块写到磁盘(关闭数据库)
2、增量检查点:
a、主要是将检查点队列的对应的LRBA(第一个脏块所对应的日志地址)记录到控制文件中(每隔3秒)
b、当增量检查点发生的时候,会检查检查点队列,当队列的上的脏块太多且系统不是很忙的时候会触发dbwr去缩短检查点队列。
dbwr写有2种情况:
1、LRUW
2、检查点队列最早脏的块部分写在磁盘上
on disk rba logbuffer 数据库保存的最后一条的日志地址
(logbuffer里面最后一条日志地址即记录的最新的日志地址)
col LowRBA for a20
col OndiskRBA for a20
select CPDRT,
CPLRBA_SEQ||'.'||CPLRBA_BNO||'.'||CPLRBA_BOF "LowRBA",
CPODR_SEQ||'.'||CPODR_BNO||'.'||CPODR_BOF "OndiskRBA",
CPODS,
CPODT,
CPHBT from x$kcccp;
alter system flush buffer_cache
CPDRT列是检查点队列中的脏块数目.
CPODS列是on disk rba的scn
CPODT列是on disk rba的时间戳
CPHBT列是心跳
相关操作
select checkpoint_change# from v$database
alter system checkpoint
alter system switch logfile
select name,checkpoint_change# from v$datafile
select name,checkpoint_change# from v$datafile_header
select * from v$log;
begin
for i in 1..10000 loop
insert into t2 values(1,'xkj');
commit;
end loop;
end;
select * from t2
- CKPT检查点队列
- Oracle检查点ckpt (checkpoint)
- Oracle 检查点(ckpt)
- oracle中的检查点ckpt和scn号
- oracle中的检查点Ckpt和SCN号
- oracle中的检查点Ckpt和SCN号
- 检查点队列与增量检查点
- CKPT
- CKPT
- 检查点队列简单总结
- 检查点队列浅析
- ORACLE Checkpoint-检查点队列与增量检查点
- oracle检查点队列与增量检查点【转载】
- OCP知识点讲解 之 检查点队列与增量检查点
- Oracle 的检查点队列 (checkpoint queue)
- 第十八讲--检查点队列(checkpoint queue)
- oracle学习笔记 检查点队列(checkpoint queue)
- 检查点
- 解决windows下面的工程导入ubuntu下eclipse中文乱码
- IE6下Png透明最佳解决方案
- html5游戏开发--"动静"结合(一)-动态画面的实现
- 如何写程序
- 解决CentOS(RedHat)中sendmail和sm-client启动慢故障
- CKPT检查点队列
- APP被苹果App Store拒绝的79个原因(未完待续)
- android出现NoClassFoundDefError的解决方法
- HttpServletRequest(请求)对象
- 易语言POST专题-GET POST 区别详解
- SQL语句大全
- [转载][转帖]Hibernate与Sleep的区别
- PostgreSQL实用查询SQL
- CALayer