免费注册 查看新帖 |

Chinaunix

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

db2数据库备份问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-12-24 17:26 |只看该作者 |倒序浏览
大侠们帮我分析一下,我的DB2数据库在线全量备份时,为什么 db2diag.log 日志中总会有 Error的错误信息
备份脚本:
  1. #!/bin/sh
  2. #采用的是在线全量备份

  3. #加载DB2环境变量
  4. . /home/db2inst1/sqllib/db2profile

  5. #数据库文件备份路径
  6. bakpath=/amfe/amfedb_bak

  7. #获取上一日期(YYYYMMDD)
  8. deldate=$(date +"%Y%m%d" -d yesterday)

  9. #备份日志路径及名称
  10. logDir=$bakpath
  11. logFile=db2backup_history.log

  12. #记录备份日志文件
  13. echo "" | tee -a ${logDir}/${logFile}
  14. echo "" | tee -a ${logDir}/${logFile}
  15. echo "==============================[ `date +\"%Y-%m-%d %T\"` ]==============================" | tee -a ${logDir}/${logFile}

  16. #开始备份DB2数据库
  17. echo "begin backup,date: "$(date +"%Y%m%d %T") | tee -a ${logDir}/${logFile}
  18. db2 backup db AMFEDB online to $bakpath compress include logs
  19. if [ $? != 0 ]; then       
  20.         echo "backup failed !" | tee -a ${logDir}/${logFile}
  21. else
  22.         #备份成功删除上次全量备份文件
  23.         echo "backup success !" | tee -a ${logDir}/${logFile}
  24.         rm -f ${bakpath}/AMFEDB*${deldate}*
  25.         echo "delete old backup file success !" | tee -a ${logDir}/${logFile}
  26.        
  27.         #备份成功删除归档文件
  28.         filetimestamp=`ls -t ${bakpath}/AMFEDB* | head -1 | awk -F"." '{print $6}'`
  29.         echo "filetimestamp:" $filetimestamp | tee -a ${logDir}/${logFile}
  30.         db2 connect to amfedb
  31.         db2 prune history $filetimestamp and delete
  32.         echo "delete archivelog success !" | tee -a ${logDir}/${logFile}
  33.         db2 connect reset
  34.        
  35.         #备份成功后把备份文件上次至AMFE备份服务
  36.         filename=`ls -t ${bakpath}/AMFEDB* | head -1`
  37.         sftp db2inst1@SFTPHOSTS <<EOF
  38.         cd  ${bakpath}
  39.         lcd ${bakpath}
  40.         put $filename
  41.         quit
  42. EOF

  43. fi
复制代码
db2diag.log 具体报错信息如下:
  1. 2015-12-22-01.30.03.028361+480 E8019776E491        LEVEL: Info
  2. PID     : 4041                 TID  : 140514032609024PROC : db2sysc
  3. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  4. APPHDL  : 0-1147               APPID: *LOCAL.db2inst1.151221173003
  5. AUTHID  : DB2INST1
  6. EDUID   : 28                   EDUNAME: db2agent (AMFEDB)
  7. FUNCTION: DB2 UDB, database utilities, sqluxGetDegreeParallelism, probe:507
  8. DATA #1 : <preformatted>
  9. Autonomic backup/restore - using parallelism = 8.

  10. 2015-12-22-01.30.03.038382+480 E8020268E517        LEVEL: Info
  11. PID     : 4041                 TID  : 140514032609024PROC : db2sysc
  12. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  13. APPHDL  : 0-1147               APPID: *LOCAL.db2inst1.151221173003
  14. AUTHID  : DB2INST1
  15. EDUID   : 28                   EDUNAME: db2agent (AMFEDB)
  16. FUNCTION: DB2 UDB, database utilities, sqluxGetAvailableHeapPages, probe:618
  17. DATA #1 : <preformatted>
  18. Autonomic BAR - heap consumption.
  19. Targetting (50%) - 13088 of 26176 pages.

  20. 2015-12-22-01.30.03.038468+480 E8020786E505        LEVEL: Info
  21. PID     : 4041                 TID  : 140514032609024PROC : db2sysc
  22. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  23. APPHDL  : 0-1147               APPID: *LOCAL.db2inst1.151221173003
  24. AUTHID  : DB2INST1
  25. EDUID   : 28                   EDUNAME: db2agent (AMFEDB)
  26. FUNCTION: DB2 UDB, database utilities, sqlubTuneBuffers, probe:869
  27. DATA #1 : <preformatted>
  28. Autonomic backup - tuning enabled.
  29. Using buffer size = 512, number = 16.

  30. 2015-12-22-01.30.03.063404+480 E8021292E452        LEVEL: Info
  31. PID     : 4041                 TID  : 140514032609024PROC : db2sysc
  32. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  33. APPHDL  : 0-1147               APPID: *LOCAL.db2inst1.151221173003
  34. AUTHID  : DB2INST1
  35. EDUID   : 28                   EDUNAME: db2agent (AMFEDB)
  36. FUNCTION: DB2 UDB, database utilities, sqlubSetupJobControl, probe:1533
  37. MESSAGE : Starting an online db backup.

  38. 2015-12-22-01.30.06.190350+480 E8021745E426        LEVEL: Info
  39. PID     : 4041                 TID  : 140514032609024PROC : db2sysc
  40. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  41. APPHDL  : 0-1147               APPID: *LOCAL.db2inst1.151221173003
  42. AUTHID  : DB2INST1
  43. EDUID   : 28                   EDUNAME: db2agent (AMFEDB)
  44. FUNCTION: DB2 UDB, database utilities, sqlubcka, probe:838
  45. MESSAGE : Backup complete.

  46. 2015-12-22-01.30.06.369583+480 E8022172E520        LEVEL: Info
  47. PID     : 4041                 TID  : 140514024220416PROC : db2sysc
  48. INSTANCE: db2inst1             NODE : 000          DB   : AMFEDB
  49. APPHDL  : 0-1148               APPID: *LOCAL.db2inst1.151221173006
  50. AUTHID  : DB2INST1
  51. EDUID   : 30                   EDUNAME: db2agent (AMFEDB)
  52. FUNCTION: DB2 UDB, database utilities, sqluhDeletionReport, probe:381
  53. MESSAGE : ADM8506I  Successfully deleted the following database logs "327 -
  54.           357" in log chain "0".

  55. 2015-12-22-01.30.06.480547+480 I8022693E365        LEVEL: Warning
  56. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  57. INSTANCE: db2inst1             NODE : 000
  58. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  59. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3108
  60. MESSAGE : Started archive for log file S0000357.LOG.

  61. 2015-12-22-01.30.06.480662+480 I8023059E448        LEVEL: Error
  62. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  63. INSTANCE: db2inst1             NODE : 000
  64. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  65. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogDisk, probe:2500
  66. RETCODE : ZRC=0x860F000A=-2045837302=SQLO_FNEX "File not found."
  67.           DIA8411C A file "/amfe/dblog/S0000357.LOG" could not be found.

  68. 2015-12-22-01.30.06.480740+480 E8023508E473        LEVEL: Warning
  69. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  70. INSTANCE: db2inst1             NODE : 000
  71. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  72. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3150
  73. MESSAGE : ADM1848W  Failed to archive log file "S0000357.LOG" to
  74.           "/amfe/dbarchlog/db2inst1/AMFEDB/NODE0000/C0000000/" from
  75.           "/amfe/dblog/".

  76. 2015-12-22-01.30.06.480857+480 E8023982E562        LEVEL: Error
  77. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  78. INSTANCE: db2inst1             NODE : 000
  79. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  80. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3160
  81. MESSAGE : ZRC=0x860F000A=-2045837302=SQLO_FNEX "File not found."
  82.           DIA8411C A file "" could not be found.
  83. DATA #1 : <preformatted>
  84. Failed to archive log file S0000357.LOG to /amfe/dbarchlog/db2inst1/AMFEDB/NODE0000/C0000000/ from /amfe/dblog/.

  85. 2015-12-22-01.30.06.480922+480 I8024545E381        LEVEL: Error
  86. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  87. INSTANCE: db2inst1             NODE : 000
  88. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  89. FUNCTION: DB2 UDB, data protection services, sqlpgArchivePendingLogs, probe:1500
  90. MESSAGE : Log archive failed with rc -2045837302 for LOGARCHMETH1.

  91. 2015-12-22-01.30.27.480090+480 I8024927E365        LEVEL: Warning
  92. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  93. INSTANCE: db2inst1             NODE : 000
  94. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  95. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3108
  96. MESSAGE : Started archive for log file S0000357.LOG.

  97. 2015-12-22-01.30.27.480205+480 I8025293E448        LEVEL: Error
  98. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  99. INSTANCE: db2inst1             NODE : 000
  100. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  101. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogDisk, probe:2500
  102. RETCODE : ZRC=0x860F000A=-2045837302=SQLO_FNEX "File not found."
  103.           DIA8411C A file "/amfe/dblog/S0000357.LOG" could not be found.

  104. 2015-12-22-01.30.27.480284+480 E8025742E473        LEVEL: Warning
  105. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  106. INSTANCE: db2inst1             NODE : 000
  107. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  108. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3150
  109. MESSAGE : ADM1848W  Failed to archive log file "S0000357.LOG" to
  110.           "/amfe/dbarchlog/db2inst1/AMFEDB/NODE0000/C0000000/" from
  111.           "/amfe/dblog/".

  112. 2015-12-22-01.30.27.480390+480 E8026216E562        LEVEL: Error
  113. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  114. INSTANCE: db2inst1             NODE : 000
  115. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  116. FUNCTION: DB2 UDB, data protection services, sqlpgArchiveLogFile, probe:3160
  117. MESSAGE : ZRC=0x860F000A=-2045837302=SQLO_FNEX "File not found."
  118.           DIA8411C A file "" could not be found.
  119. DATA #1 : <preformatted>
  120. Failed to archive log file S0000357.LOG to /amfe/dbarchlog/db2inst1/AMFEDB/NODE0000/C0000000/ from /amfe/dblog/.

  121. 2015-12-22-01.30.27.480439+480 I8026779E510        LEVEL: Warning
  122. PID     : 4041                 TID  : 140513583818496PROC : db2sysc
  123. INSTANCE: db2inst1             NODE : 000
  124. EDUID   : 140                  EDUNAME: db2logmgr (AMFEDB)
  125. FUNCTION: DB2 UDB, data protection services, sqlpgRetryFailedArchive, probe:4760
  126. MESSAGE : Unable to find log file 357 for LOGARCHMETH1 using method 1 and
  127.           target /amfe/dbarchlog/db2inst1/AMFEDB/NODE0000/C0000000/.  Assume
  128.           log was archived and continue.
复制代码

论坛徽章:
0
2 [报告]
发表于 2015-12-25 10:41 |只看该作者
有知道怎么回事的亲么? 我这个脚本在测试环境是没问题的,一上生产就报错,头疼!
而且我看大家推荐的清除归档日志的方式就是这个方式。

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
3 [报告]
发表于 2015-12-29 13:31 |只看该作者
从日志文件看备份是成功了,问题应该是出在db2 prune history 与LOGARCHMETH1相斥上!你的测试环境与生产环境LOGARCHMETH1应该不一样吧!
建议你把$filetimestamp这个时间再缩小一天看看!就是清昨天之前的日志!

论坛徽章:
0
4 [报告]
发表于 2015-12-30 10:45 |只看该作者
本帖最后由 shiner 于 2015-12-30 10:52 编辑

回复 3# 大梦

大梦兄,我生产和测试环境的DB2环境变量都看了
db2 get db cfg 全部列出来比较了一下
就有两个地方不一样:
测试:Degree of parallelism       (DFT_DEGREE) = ANY
生产:Degree of parallelism       (DFT_DEGREE) = 1

测试:First active log file            = S0005955.LOG
生产:First active log file            = S0000518.LOG


LOGARCHMETH1 的值都是 DISK:/amfe/dbarchlog/

   

论坛徽章:
0
5 [报告]
发表于 2015-12-30 11:38 |只看该作者
感觉好像是 S0000357.LOG 这个日志还没有归档完成,就已经被 db2 prune history 列入需要删除的日志列表里。

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
6 [报告]
发表于 2015-12-30 12:10 |只看该作者
两边的参数上应该没问题!
从db2diag.log里面看应该是prune与archive log操作冲突了,找不到357号日志,之前被剪掉了!
你可以把prune的时间放再改早点或是根据当前的日志号减10,用prune logfile去做看看,避免冲途。

论坛徽章:
0
7 [报告]
发表于 2015-12-30 17:42 |只看该作者
回复 6# 大梦
谢谢大梦兄弟,我试试看,这个为什么会出现冲突呢,DB2机制出了问题?

   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP