总结一下到底有多少event会促使DBWR将数据写入Disk

1. Buffer Cache中的Dirty List长度达到阀值:DBW0Dirty List中的Dirty Buffer写入磁盘(user Server ProcessLRU List中查找free buffer时将碰到的dirty blocks移入Dirty List<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

2. user Server ProcessBuffer CacheLRU List中搜索了过长的时间而仍然没有找到free bufferDBW0直接从LRU List中将Dirty Buffer写入磁盘

3. 每过3秒钟:DBW0dirty buffersLRU List移到Dirty List,一旦Dirty List长度达到阀值,DBW0便将数据写入磁盘

4. Checkpoint发生时:DBW0把所有的dirty buffersLRU List移到Dirty List,并且开始写数据

5. Tablespace开始Hot backup时:DBW0把所有属于该表空间的dirty buffersLRU List移到Dirty List,并且开始写数据

6. Tablespace offline时:DBW0把所有属于该表空间的dirty buffersLRU List移到Dirty List,并且开始写数据

7. 执行Drop时:drop table或者index将促使DBW0先将属于该segmentdirty blocks写入磁盘

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页