DB CHNGPGS_THRES 参数
来源:互联网 发布:会计上升空间 知乎 编辑:程序博客网 时间:2024/05/21 06:55
----start
之前看书的时候遇到这样一个问题,并不是每次commit都会使record写到磁盘上,而是当被修改的数据页数目达到了CHNGPGS_THRES 数值时,缓冲池中的这些修改的数据页记录就会被“具体化”或者被写到表空间磁盘上。如果这时系统突然停电了,怎么办?用户认为自己已经commit了,可是数据并没有写到磁盘上。
后来我在牛新庄的<循序渐进db2>找到了答案,原来以上问题少分析了一个很重要的东西,那就是日志,当我们commit事务时,我们的事务将会被记录在日志中(db2采用提前写入日志的方式),但对数据做的更改不一定写入磁盘,有可能在缓冲池中,此时,用户将会收到commit成功的消息。还有一种情况,当用户在一个事务中对数据库做大规模操作时,有可能数据已经写入了磁盘,但是commit并没有结束。如果在这两种情况下,系统突然断电,或因其他原因崩溃,那么数据库将会处于一种不一致的状态,当下次启动db2时,db2将会自动启动崩溃恢复,它将根据日志文件,回滚那些没有提交,但数据库已经写入磁盘的事务,重新提交那些已经提交,但数据并没有写入磁盘的事务,以此来保证数据库的一致性。
---更多参见:DB2 精萃
----声明:转载请注明出处。
----last updated on 2009.12.29
----written by ShangBo on 2009.12.29
----end
- DB CHNGPGS_THRES 参数
- mongo db 参数详解
- openerp参数db-filter使用说明
- Oracle db 参数文件笔记
- Flask-db.relationship()参数注释
- 获取db.propeties参数值两次失误
- 系统及DB参数引发的“灾难”
- db
- DB
- db
- DB
- db
- DB
- db
- db
- db
- DB
- db
- Windows服务小记
- linux last 命令详解
- 在linux中 应用程序如何调用模块内的函数
- WTL实践经验总结(不断更新)
- C#高级编程:ServiceController类
- DB CHNGPGS_THRES 参数
- Axis实践之Axis入门
- jdk1.5新特性(二)_注解
- C#实现闪动托盘图标示例
- oracle的正则表达式(regular expression)简单介绍
- 程序碎片- 分油问题(bfs)
- 范型学习
- 关键不是发现问题,而是解决问题。
- base64,恺撒法