一,DBWN功能

  将脏数据写盘

二,什么情况下会触发DBWN的进程呢?

1)  check pointer:有检查点, 
2)  脏数据达到阀值:达到buffer内存的10%即要将脏数据写到磁盘; 
这就是造成为什么没有提交的脏数据会写到磁盘; 
并且这样也不会影响读数据,因为在修改一个数据块时,在buffer  cache
中会生成一个与原始数据一致的镜像数据,以供其他会话访问,和做
rollback时使用! 
3)  扫描整个database buffer cache没有空闲: 
这种情况是:虽然脏数据没有占到Buffer的10%,但是数据的缓存占了
太多Buffer空间,所以需要释放空间,会优先读取lruw(脏数据链表), 
再读取LRU,做超0释放,释放数据缓存空间; 
4)  time off:每三秒调度一次数据写; 
5)  在集群环境中的ping请求: 
将所有结点的脏数据写磁盘,使数据状态一致,协同工作的 
6)  删除表、截断表:drop table、trucat table; 
7)  tablespace read only: 
表空间只读触发 
8)  tablespace offline: 
表空间脱机触发数据写; 
9)  begin backup: 
热备份命令触发数据写;