FLUSH BUFFERPOOLS
使用此选项可在卸载启动之前将 Db2® 缓冲池清空到磁盘。
- FLUSH BUFFERPOOLS
- 注意:
- 必须验证 db2hpu.cfg 参数 flush_bufferpools的设置。 如果未设置 db2hpu.cfg 文件参数 flush_bufferpools,那么此控制文件选项将缺省为 YES。 使用控制文件选项来覆盖 db2hpu.cfg 文件中的设置。
- 在 UNLOAD 块中设置 FLUSH BUFFERPOOLS 将覆盖 GLOBAL 块中设置的值。
- 如果您正在使用 FLUSH BUFFERPOOLS NO ,并且正在卸载的表位于 DMS 或自动存储器受管表空间中,请确保未发出 ALTER TABLESPACE 语句,而该语句会导致表空间的大小减小 (REDUCE , RESIZE , DROP 或其他选项)。
- 语法
- 清空缓冲池是 | 否
- 变量
- 无。
- 缺省值
- 是
- 清空缓冲池是锁定是
- 建议使用此选项,因为它可确保安全且一致的卸载。 Db2 将收到通知,指示正在进行卸载,对表及其依赖关系执行停顿共享锁定,并且该锁定将保留到卸载结束为止。 在启动卸载之前,会将相关缓冲池页面清空到磁盘,并且在卸载完成之前不允许对表进行任何修改。
- 清空缓冲池是锁定号
- 将执行停顿共享锁定,并向 Db2发送卸装通知。 将从缓冲池中清空所有相关页面。 与上例不同的是,卸载通知成功完成后,系统会立即通知 卸载已结束,并释放 quiesce 共享锁,即使卸载尚未开始、 Optim™ High Performance Unload 会立即通知 Db2 卸载已结束,并释放 quiesce 共享锁,即使卸载尚未开始。 但是,由于未保留任何锁定,因此在运行卸载时没有针对正在修改的数据的保护。 因此,仅当在卸载过程中存在另一个防止数据修改的机制时,才应使用此方法。
- 刷新缓冲池 无锁定 是
- 如果指定或缺省为 LOCK YES,那么 FLUSH BUFFERPOOLS 将强制为 YES。 因此,此组合将自动转换为 FLUSH BUFFERPOOLS YES LOCK YES。
- 清空缓冲池无锁定号
- Db2 未收到卸载通知,并且未指示正在进行卸载。 不会将 Db2 缓冲池页面清空到磁盘,并且不会获取 Db2 锁定。 虽然此组合具有最低的开销,但存在很大风险,即抽取的数据可能与事务不一致或表示卸载时的数据。 执行甚至可能导致不可预测和意外的行为,包括异常终止,特别是如果处理的对象上的更改严重影响其结构或布局 (连接或拆离数据分区,重组对象 ...)。 仅当您确定所有数据页面都已清空到磁盘并且当前未被另一个 Db2 应用程序修改时,才使用此组合。
注意: 在大多数产品故障情况下, Optim High Performance Unload 重置桌面空间上的静默。 但是,存在一些未发生此情况的罕见情况,并且表空间仍处于停顿方式。 要手动重置停顿方式,请参阅 重置停顿方式 部分。