免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4353 | 回复: 6
打印 上一主题 下一主题

DB2 备份及跨平台迁移 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-03-28 19:32 |只看该作者 |倒序浏览
首先设置归档参数
  1. db2 update db cfg for using mirrorlogpath /home/db2inst1/mirror_log/ //mirror log
  2. db2 get db cfg for //确认是否成功
  3. db2 update db cfg for using userexit on //启用用户出口
  4. db2 update db cfg for using logretain on //启用归档日志
  5. db2 update db cfg for using trackmod on //启用增量备份功能
  6. db2stop force
  7. db2start
  8. db2 backup db to /home/db2inst1/off_back //
复制代码
备份在线数据库
  1. db2 backup db online to /home/db2inst1/on_back/ //在线备份
  2. db2 backup db online incremental to /home/db2inst1/on_back/ //在线做增量备份
  3. db2 list history backup all for //查看备份记录
  4. db2 get db cfg for //查看log所在位置,cp到一个安全目录,供rollforward使用。
  5. db2stop force;db2start;db2 drop db //手工drop数据库,模拟灾难恢复的情况
复制代码
恢复在线数据库
  1. db2ckrst -d -t 20070608032820 -r database //帮助工具提示恢复
  2. db2 restore db incremental from /home/db2inst1/on_back taken at 20070608032820 //恢复数据文件
  3. 先恢复完全备份,然后在恢复增量备份,不能自动寻找完全备份文件。
  4. db2 rollforward database to end of logs and complete overflow log path '(/home/db2inst1/log)' //前滚日志有一点不认同:“先恢复完全备份,然后在恢复增量备份”
  5. 对于增量恢复,你的做法正好反了,你这样做的话,会收到SQL2574N的错误信息。
  6. 在db2ckrst里面已经清楚的告诉你恢复的顺序。
  7. 下面是测试备份镜像中包日志的备份和恢复的步骤:
  8. 注:/home/db2inst1/on_back/ #为备份文件位置
  9. /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #为数据库的log位置,通过db2 get db cfg for 得到。
  10. db2stop force;db2start;db2 drop db #模仿灾难发上,drop数据库。
  11. db2 backup db online to /home/db2inst1/on_back/ include logs #备份带日志的镜像文件
  12. db2 backup db online incremental to /home/db2inst1/on_back/ include logs #备份带日志的增量镜像文件
  13. db2 RESTORE db incremental automatic FROM /home/db2inst1/on_back/ taken at 20070612070526 LOGTARGET /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #恢复时间戳在20070612070526的数据镜像和日志文件
  14. db2 rollforward database to end of logs and complete //回滚log日志
  15. 在“10”中已把数据库drop了,“20”中如何做online backup呢?
  16. 注:/home/db2inst1/on_back/ #为备份文件位置
  17. /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #为数据库的log位置,通过db2 get db cfg for 得到。
  18. db2 backup db online to /home/db2inst1/on_back/ include logs #备份带日志的镜像文件
  19. db2 backup db online incremental to /home/db2inst1/on_back/ include logs #备份带日志的增量镜像文件
  20. db2stop force;db2start;db2 drop db #模仿灾难发上,drop数据库。
  21. db2 RESTORE db incremental automatic FROM /home/db2inst1/on_back/ taken at 20070612070526 LOGTARGET /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ #恢复时间戳在20070612070526的数据镜像和日志文件
  22. db2 rollforward database to end of logs and complete //回滚log日志
复制代码
==================================================

以上为DB2的备份方式



以下介绍一下跨平台迁移DB2

=========================================

源数据库AIX平台+DB2 目标平台LINUX



首先在源库导出库结构。
  1. db2look -d dbname -e -o db2look.sql
复制代码
然后导出源数据库DB2数据
  1. db2move dbname export –u user –p password
复制代码
其中db2move.lst记录所有导出的文件,可以进行编辑从而决定导入哪些数据表



然后在目标linux主机上建立DB2的新库,导入结构及数据、
  1. db2 -tvf db2look.sql
  2. db2move dbname import     
复制代码

论坛徽章:
0
2 [报告]
发表于 2011-03-31 12:11 |只看该作者
没试过这么复杂的....


一般都是EXPORT  ... 再   ... IMPORT   

然后再测试...调整....

论坛徽章:
0
3 [报告]
发表于 2011-03-31 12:13 |只看该作者
呵呵  

论坛徽章:
5
荣誉会员
日期:2011-11-23 16:44:17CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-09-18 15:15:45未羊
日期:2014-02-25 14:37:19射手座
日期:2014-12-26 22:55:37
4 [报告]
发表于 2011-03-31 21:51 |只看该作者
db2move 那种方式只适合小数据量的。

论坛徽章:
0
5 [报告]
发表于 2011-04-01 12:45 |只看该作者
那如果大容量的迁移的话,用哪个命令?
恢复步骤还是楼上说的步骤吗?
谢谢

论坛徽章:
0
6 [报告]
发表于 2011-05-04 17:07 |只看该作者
export,load

论坛徽章:
5
荣誉会员
日期:2011-11-23 16:44:17CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-09-18 15:15:45未羊
日期:2014-02-25 14:37:19射手座
日期:2014-12-26 22:55:37
7 [报告]
发表于 2011-05-04 17:27 |只看该作者
大数据量在9.7开始可以用transportable schema在一些特定平台之间做跨平台迁移。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP