Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Бекап базы DB2 9.7 через батник (проблема с запуском базы) / 15 сообщений из 15, страница 1 из 1
26.07.2012, 10:26
    #37893339
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Добрый день. Имеется сервер с прикладной программой ((база DB2 9.7) (Windows)). Необходимо каждый день делать копию базы, архивировать, и отправлять службе сопровождения программы. Поэтому написал батник для создания резервной копии базы и архивирования:

Backup_CITYNEW.cmd


REM Путь к базе
set DBPATH=C:
REM Псевдоним базы\алиас
set DBNAME=CITYNEW
REM Каталог в который архивируем базу
set DBBACKUPPATH="C:\Backup"
db2 CONNECT TO %DBNAME% USER %1 USING %2
db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
db2 CONNECT RESET
db2 BACKUP DATABASE %DBNAME% TO %DBBACKUPPATH% WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING
db2 CONNECT TO %DBNAME%
db2 UNQUIESCE DATABASE
db2 CONNECT RESET
db2 TERMINATE
exit



Все работает отлично, копия создается, база архивируется.

Проблема состоит в следующем. После восстановления в службе сопровождения программы (это в другом городе) база не запускается.Появляется проблема с повтором транзакций. Восстановление производится через центр управления. Пунктов "только восстановить" и "перевести базу в активное состояние" у них в мастере восстановления почему то нет. Пробовал восстановить у себя и выбирал именно эти пункты ("только восстановить" и "перевести базу в активное состояние") - база запускается нормально.

Может быть нужно дописать FORCE APPLICATIONS ALL в батнике?

P.S. С DB2 только начинаю работать (2 месяца всего).
...
Рейтинг: 0 / 0
26.07.2012, 10:58
    #37893426
Andron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин,

Если у вас база восстанавливается из этого бэкапа нормально, то проблема явно там где ее восстановить не могут.

автор...
Появляется проблема с повтором транзакций. Восстановление производится через центр управления. Пунктов "только восстановить" и "перевести базу в активное состояние" у них в мастере восстановления почему то нет.
...


Может версия центра управления (а точнее версии db2) у вас и "у них" отличаются?
...
Рейтинг: 0 / 0
26.07.2012, 11:03
    #37893434
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин, может попробовать специалистам, кто восстанавливает БД выполнить остановку повтора транзакций?

db2 rollforward db DB_NAME stop
...
Рейтинг: 0 / 0
26.07.2012, 11:15
    #37893450
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Andron, и у нас, и "у них" совершенно одинаковые версии:

О среде инструментов управления DB2
============================================================
Уровень инструментов управления DB2:
Идентификатор продукта SQL09075
Идентификатор уровня 08060107
Уровень DB2 v9.7.500.4299
Уровень компиляции special_27924
PTF IP23286_27924
============================================================
Комплект разработки Java (JDK):
Уровень IBM Corporation 1.6.0
============================================================
...
Рейтинг: 0 / 0
26.07.2012, 11:23
    #37893462
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Или как вариант посмотреть в конфигурации БД перед выполнением РК какое значение параметров LOGARCHMETH1 и LOGARCHMETH2.? Могу предположить, что у Вас журналы архивируются... для возможности последующего восстановления БД с "накатом" журналов до требуемой точки.
...
Рейтинг: 0 / 0
26.07.2012, 11:36
    #37893494
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Kostya9Или как вариант посмотреть в конфигурации БД перед выполнением РК какое значение параметров LOGARCHMETH1 и LOGARCHMETH2.? Могу предположить, что у Вас журналы архивируются... для возможности последующего восстановления БД с "накатом" журналов до требуемой точки.

Посмотрел сейчас.
LOGARCHMETH1 стоял в LOGRETAIN когда отправлял копии. Сегодня бекапил базу вручную и поставил LOGARCHMETH1 в USEREXIT. LOGARCHMETH2 стоит в OFF.

То есть получается что без логов, они не восстановят базу?
...
Рейтинг: 0 / 0
26.07.2012, 11:38
    #37893499
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин, после восстановления выполнить команду остановки

db2 rollforward db DB_NAME stop
...
Рейтинг: 0 / 0
26.07.2012, 11:40
    #37893501
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Варианты:
1. см. предыдущий пост
2. отправить вместе с логами
3. поставить параметр LOGARCHMETH1 В OFF и делать бекап
...
Рейтинг: 0 / 0
26.07.2012, 11:55
    #37893521
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин,

Может таки стоит делать ONLINE BACKUP с опцией INCLUDE LOGS и составить скрипт для восстановления с прокатом логов?
Тогда и приложение снимать не нужно на время бекапа и файл бекапа отсылается один, нужные логи уже будут в нем присутствовать.

LOGARHMETH1 для ONLINE-бэкапа должен быть выставлен в некий путь, по этому пути будут отписываться архивные журналы.

Примерно так (взято из старого батника, возможно нужны дополнения):
Backupdb2 archive log for database <имя базы>
db2 backup database <имя базы> online to <каталог> include logs
Restoredb2 restore database <имя базы> from <каталог> taken at <дата> INTO <имя базы> LOGTARGET <временный каталог для логов>
db2 rollforward db <имя базы> to end of logs OVERFLOW LOG PATH(<временный каталог для логов>)
db2 rollforward db <имя базы> stop OVERFLOW LOG PATH(<временный каталог для логов>)
...
Рейтинг: 0 / 0
26.07.2012, 12:06
    #37893552
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Евгений Хабаров, да, кстати, это, все таки будет более верным решением.

Но думаю, что стоит еще посмотреть на само ПО? Может вообще нет необходимости логи еще архивировать, т.к. может пользователи не обращаются в момент выполнения РК и система не выполняет никаких задач с БД. Ну например, РК выполняется ночью...
...
Рейтинг: 0 / 0
26.07.2012, 12:37
    #37893635
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Kostya9Евгений Хабаров, да, кстати, это, все таки будет более верным решением.

Но думаю, что стоит еще посмотреть на само ПО? Может вообще нет необходимости логи еще архивировать, т.к. может пользователи не обращаются в момент выполнения РК и система не выполняет никаких задач с БД. Ну например, РК выполняется ночью...

У меня есть окно в 1 час (обеденный перерыв), я делаю бекап БД сервера плюс еще один бекап другой БД удаленно через Timeviewer.

Остаеться поставить LOGARCHMETH1=OFF и отправить новые копии?
...
Рейтинг: 0 / 0
26.07.2012, 12:59
    #37893694
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин, да. Должны успешно восстановить.
...
Рейтинг: 0 / 0
26.07.2012, 13:23
    #37893743
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр ШевердинПосмотрел сейчас.
LOGARCHMETH1 стоял в LOGRETAIN когда отправлял копии. Сегодня бекапил базу вручную и поставил LOGARCHMETH1 в USEREXIT. LOGARCHMETH2 стоит в OFF.

То есть получается что без логов, они не восстановят базу?Добрый день.
Ставить LOGARCHMETH1 в USEREXIT, не предоставляя саму программу для userexit, не очень хорошо.
У вас было LOGARCHMETH1 в LOGRETAIN. Это значит, что у вас включён режим архивного журналирования.
Вы делаете при таком режиме offline архив.
При восстановлении (restore) из такого архива у вас есть 2 возможности перед тем, как сделать базу доступной - либо:
- накатиться по журналам, чтоб применить транзакции, прошедшие после взятия архива
- не накатываться по этим журналам (это возможно, т.к. архив offline)

Я не могу сказать, почему в мастере нет 2-х разных пунктов как у вас.
Если выполнять restore из такого архива без опции without rolling forward, то база останется в т.н. rollforward pending state, т.е. будет ждать команду rollforward, в которой вы можете указать, будете ли вы накатываться или нет.
Если вам надо сразу после восстановления получить доступную базу, используйте restore с without rolling forward.
...
Рейтинг: 0 / 0
26.07.2012, 15:31
    #37893963
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Всем огромное спасибо за помощь (честно говоря, не ждал такой оперативности).Завтра сделаю РК и отпишусь.

И последний вопрос - нужно ли в батнике Backup_CITYNEW.cmd что либо доработать?
...
Рейтинг: 0 / 0
27.07.2012, 12:50
    #37895176
Kostya9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Бекап базы DB2 9.7 через батник (проблема с запуском базы)
Александр Шевердин И последний вопрос - нужно ли в батнике Backup_CITYNEW.cmd что либо доработать?

Для off-line бекапа все норм.
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Бекап базы DB2 9.7 через батник (проблема с запуском базы) / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]