Вывод команды db2 rollforward show '-' в столбце "Обработано файлов журнала" для разделов, не входящих в каталог - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть откат базы данных после команды восстановления. Ниже приведены результаты запросов:

  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
 

Кажется, что состояние до применения журнала было:

  1. Для NODE0000 номер журнала был включен: S0001421.LOG
  2. Для NODE0001 номер журнала был включен: S0004725.LOG
  3. Для NODE0002 номер журнала был включен: S0004582.LOG

Тогдапользователь предоставил журналы с диапазоном ниже:

  1. Для NODE0000: S0001421.LOG - S0001423.LOG
  2. Для NODE0001: S0004725.LOG - S0004726.LOG
  3. Для NODE0002: S0004582.LOG - S0004583.LOG

При условии, что к базе данных применены журналы, я не уверен, почему столбец "Файлы журналов обработан" пуст для NODE 1 и 2.

Я вижу изменения номера журнала в разделе 1 и разделе 2 (обновлен столбец «Следующие журналы для чтения»), но в выходных данных не отображается столбец «Файлы журналов обработаны» для раздела 1 и раздела 2. Что может бытьвозможная причина?

`

Когда я пытался использовать другую базу данных, это значение отражалось и для не каталожных узлов:`

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.

1 Ответ

0 голосов
/ 03 ноября 2019

Какой уровень Db2 вы используете? Используются ли в двух средах разные уровни Db2?

Поскольку вы упомянули, что уровни db2 одинаковы, ознакомьтесь со следующей дополнительной информацией: «Сообщенные файлы журнала обработаны» могут быть меньше, чем реально обработанные. Истинным признаком того, что было восстановлено, является отметка времени «Последняя совершенная транзакция».

...