我已在restore命令后前滚数据库。以下是查询的输出:
db2 "rollforward db hdpf1 query status"
Rollforward Status
Input database alias = hdpf1
Number of members have returned status = 3
Member ID Rollforward Next log Log files processed Last committed transaction
status to be read
----------- -------------------------- ------------------- ------------------------- --------------------------
0 DB pending S0001422.LOG - 2019-10-22-17.26.46.000000 UTC
1 DB pending S0004726.LOG - 2019-10-22-17.40.25.000000 UTC
2 DB pending S0004583.LOG - 2019-10-22-17.52.59.000000 UTC
db2 "rollforward db hdpf1 to end of logs on all dbpartitionnums OVERFLOW LOG PATH ('/home/db2inst1/logs/db2inst1/HDPF1’)”
Rollforward Status
Input database alias = hdpf1
Number of members have returned status = 3
Member ID Rollforward Next log Log files processed Last committed transaction
status to be read
----------- -------------------------- ------------------- ------------------------- --------------------------
0 DB working S0001423.LOG S0001422.LOG-S0001422.LOG 2019-10-27-07.32.56.000000 UTC
1 DB working S0004727.LOG - 2019-10-25-03.05.53.000000 UTC
2 DB working S0004584.LOG - 2019-10-25-03.04.32.000000 UTC
DB20000I The ROLLFORWARD command completed successfully.
$ db2_all "db2 get db cfg for hdpf1 | grep -i 'First active log file'"
First active log file = S0001421.LOG
db2 get db cfg for ... completed ok
First active log file = S0004725.LOG
db2 get db cfg for ... completed ok
First active log file = S0004582.LOG
db2 get db cfg for ... completed ok
应用日志之前的状态似乎是:
- 对于NODE000,日志编号为:S0001421.log
- 对于NODE001,日志编号为:S0004725.log
- 对于NODE002,日志编号为:S0004582.log
然后用户提供了以下范围的日志:
- 对于NODE000:S001421.LOG-S001423.LOG
- 对于NODE001:S0004725.LOG-S0004726.LOG
- 对于NODE002:S0004582.LOG-S0004583.LOG
如果日志已应用于数据库,我不确定为什么节点1和2的"处理的日志文件"列为空。
我可以看到分区1和分区2中的日志编号发生了变化("Next logs to be read"列已更新(,但输出没有显示分区1和2的"logs files processed"列。可能的原因是什么?
`
当我尝试另一个数据库时,这个值也反映在非目录节点上:`
db2 "rollforward db hdpf2 query status"
Rollforward Status
Input database alias = hdpf2
Number of members have returned status = 4
Member ID Rollforward Next log Log files processed Last committed transaction
status to be read
----------- -------------------------- ------------------- ------------------------- --------------------------
0 DB pending S0000052.LOG - 2019-10-30-07.36.45.000000 UTC
1 DB pending S0000038.LOG - 2019-10-30-07.37.01.000000 UTC
2 DB pending S0000040.LOG - 2019-10-30-07.37.07.000000 UTC
3 DB pending S0000038.LOG - 2019-10-30-07.37.13.000000 UTC
db2 "rollforward db hdpf2 to end of logs on all dbpartitionnums OVERFLOW LOG PATH ('/home/db2inst1/log/HDPF')"
Rollforward Status
Input database alias = hdpf2
Number of members have returned status = 4
Member ID Rollforward Next log Log files processed Last committed transaction
status to be read
----------- -------------------------- ------------------- ------------------------- --------------------------
0 DB working S0000060.LOG S0000052.LOG-S0000059.LOG 2019-10-31-10.32.32.000000 UTC
1 DB working S0000040.LOG S0000038.LOG-S0000039.LOG 2019-10-30-07.37.01.000000 UTC
2 DB working S0000042.LOG S0000040.LOG-S0000041.LOG 2019-10-30-07.37.07.000000 UTC
3 DB working S0000040.LOG S0000038.LOG-S0000039.LOG 2019-10-30-07.37.13.000000 UTC
DB20000I The ROLLFORWARD command completed successfully.
您使用的Db2级别是什么?这两个环境是否使用不同的Db2级别?
由于您提到db2级别是相同的,请参阅以下附加信息:报告的"已处理日志文件"可能少于实际处理的日志文件。已恢复内容的真正指示是"最后提交的事务"时间戳。