Восстановление DB2, проблемы с повтором транзакций - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь сделать оперативное резервное копирование моей базы данных GS_DB на сервере server1, затем восстановить ее на сервере server2 и, наконец, перенести GS_DB на сервере server2.

На сервере server1 резервное копирование в сети: GS_DB уже включил режим журнала архива, (LOGARCHMETH1) = ДИСК: C: \ GS_DB_ARCHIVELOG \

db2 backup db GS_DB online to <path> include logs

Scp образа резервной копии на сервер2.

На сервере 2 восстановить базу данных:

db2 create db GS_DB2
db2 restore gs_db taken at <timestamp> into gs_db2
SQL2529W  Warning!  Restoring to an existing database that is different from the backup image database, and the alias name "GS_DB2" of the existing database does not match the alias name "GS_DB" of the backup image, and the database name "GS_DB2" of the existing database does not match the database name "GS_DB" of the backup image. The target database will be overwritten by the backup version. The Roll-forward recovery logs associated with the target database will be deleted.
Do you want to continue ? (y/n) y
DB20000I  The RESTORE DATABASE command completed successfully.

Подключитьсяto gs_db2:

db2 connect to gs_db2
SQL1117N  A connection to or activation of database "GS_DB2" cannot be made because of ROLL-FORWARD PENDING.  SQLSTATE=57019

Rollforward gs_db2:

db2 rollforward db gs_db2 to end of logs and complete
SQL1273N  An operation reading the logs on database "GS_DB2" cannot continue because of a missing log file "S0000266.LOG" on database partition "0" and log stream "0".

Я нашел этот код ошибки и нашел опцию logtarget в команде восстановления, может быть, полезно, но я все еще не понимаю, что должнобыть путем logtarget?

db2 restore gs_db taken at <timestamp> into gs_db2 logtarget <???>

Я что-то здесь упускаю?Должен ли я также scp архив журнала S0000266.LOG с сервера1 на сервер2?Я полагаю, что опция include logs в команде резервного копирования должна была это сделать?

Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 13 февраля 2019

Используйте следующую команду для отката до конца резервного копирования.

db2 rollforward db gs_db2 to end of backup and complete

0 голосов
/ 13 февраля 2019

scp журналы в путь к архивному журналу восстановленной базы данных, затем db2 rollforward db mydb до конца журналов и полный путь к overlog "(/ home / db2 / archivelogs)"

0 голосов
/ 13 февраля 2019

Файлы журнала, необходимые для отката базы данных до минимального момента времени (конец резервного копирования) после восстановления ее из онлайн-архива, включены в этот онлайн-каталог по умолчанию.
Вам необходимо Поверните базу данных минимум до минимума за раз, когда вы восстанавливаете из онлайн архива.
Если вы укажете предложение logtarget, файлы журнала из архива будут извлечены в каталог.
Вы можете использовать этот каталог в предложении OVERFLOW LOG PATH команды ROLLFORWARD DATABASE .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...