DB2备份前关键准备步骤:停止所有应用连接数据库、检查日志空间充足、确认备份目标盘空间足够、运行db2diag收集诊断信息、验证数据库一致性并更新统计信息。
CSDN网友分享
备份前首先要确保数据库处于一致状态,使用db2 "connect to dbname"连接后运行db2 " quiesce db for table dbname"来静止数据库。还要检查是否有长事务在运行,用db2pd -db dbname -applications查看并kill掉。
博客园经验帖
关键一步是更新数据库统计信息,db2 update db statistics for table all。备份前关闭所有客户端连接,db2 force application all。确认日志文件系统有足够空间,至少是数据库大小的20%。
IBM社区讨论
网友推荐:运行db2 get db cfg for dbname | grep LOG,检查LOGFILSIZ和LOGPRIMARY参数是否合适。备份前执行db2 reorg table all in dbname进行表重组,避免备份文件过大。还要backup database dbname to /backup/path use 2 tapes if offload。
知乎高赞回答
准备清单:1. db2 deactivate db dbname;2. 检查实例内存,db2set DB2MEMDISK=自动调整;3. 验证备份设备可用,db2adutl query db dbname;4. 通知所有用户暂停操作。
IT论坛帖子
必读:备份前先runstats all,db2 runstats db on table all with distribution and detailed indexes all。确保无pending的alter table操作,db2 "select * from syscat.tables where status <> 'N'"检查。
FAQ
Q: 备份前为什么需要force application?A: 为了确保没有活跃连接干扰备份一致性,避免备份文件损坏。
Q: 日志空间不足会怎样?A: 备份过程中可能回滚失败,导致数据库不一致或备份中断。
Q: 如何验证备份成功?A: 用db2ckbkp /backup/dbname.0.dbname.DBPART000.backup检查备份完整性。