在归档日志模式下,如果没有使用自动归档方式或者自动归档配置出现故障(比如磁带机出现故障,存储管理软件出现故障等等),则存储的日志文件会不断增多,有可能造成日志所在的文件系统空间满。 当这种情况发生时,会根据参数 BLK_LOG_DSK_FUL 的配置而有不同的现象:
如果该参数启用,则 DB2 数据库可继续读操作,但是写操作会挂起。
如果该参数没有启用,则 DB2 数据库会停止工作。
两种情况下,都需要到日志所在的文件系统添加了空间后整个数据库才会恢复正常。
收起官方解释:0_0
日志磁盘已满时挂起(blk_log_dsk_ful)
可以设置此配置参数以防止当 DB2® 不能在活动日志路径中创建新日志文件时出现“磁盘已满”错误。相反,DB2 将尝试每隔五分钟就创建一次日志文件,直至成功。每次尝试之后,DB2 都会将一条消息写至管理通知日志。确认应用程序因为日志磁盘已满情况而挂起的唯一的方法就是监视管理通知日志。在成功创建日志文件之前,尝试更新表数据的所有用户应用程序都不能落实事务。只读查询可能不会直接受影响;但是,如果查询需要访问被更新请求锁定的数据或者由更新应用程序在缓冲池中修正的数据页时,只读查询也将像挂起一样。
将 blk_log_dsk_ful 设置为 YES 导致 DB2 遇到日志磁盘已满错误时应用程序挂起。于是您就能够解决错误,而事务继续运行。磁盘已满情况可以通过将旧的日志文件移至另一文件系统或增加文件的大小以使挂起应用程序能够完成来解决。
如果 blk_log_dsk_ful 设置为 NO,那么接收到日志磁盘已满错误的事务将失败并被回滚。在某些情况下,如果事务导致日志磁盘已满错误,那么数据库将崩溃。