Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
Привет! Имеется 2 физических сервера с db2 9.7. Задача: делать бэкапы на рабочем сервере так, чтобы их можно было использовать для восстановления на другом, при этом без потерь данных (онлайн бэкапы баз делать не подходит). Можно ли это делать только с помощью полных бэкапов и архивных логов? Была попытка перенести архивные логи и полный бэкап на другой сервер, сделать restore и rollforward до конца логов, но информация, введенная в базу после полного бэкапа не восстановилась. Может быть стоит применить другой способ бэкапа в данном случае? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2012, 19:58 |
|
||
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
usha_cow, Здравствуйте. Покажите последовательность действий на новом сервере с указанием полного вида команд и, если можно, результаты их работы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2012, 10:31 |
|
||
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
Получилось, что надо. Но не совсем понимаю из каких логов он повторяет транзакции и как. Если поясните - будет круто :) На первом сервере у базы изменила следующие параметры для того, чтобы она оказалась в режиме восстановления: LOGRETAIN = RECOVERY LOGARCHMETH1 = DISK:D:\os2archivelogs\ - для ведения архивных логов Тоже самое сделала на втором сервере. Затем полный бэкап бд на первом сервере. Рестор бд на новом: Код: plsql 1. Скопировала логи активные (C:\DB2\NODE0000\SQL00002\SQLOGDIR\) и архивные (D:\os2archivelogs\) (хотя как я понимаю, после включения режима восстановления для базы, активные логи архивируются, и копировать нужно только архивные). Положила их в соответствующие папочки на втором сервере. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2012, 13:20 |
|
||
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
Непонятно чем вы руководствовались меняя параметр LOGRETAIN, поскольку This parameter is deprecated in Version 9.5, but is still being used by pre-Version 9.5 data servers and clients. Any value specified for this configuration parameter will be ignored by the DB2® Version 9.5 database manager. Starting in Version 9.5, the logarchmeth1 configuration parameter is used to set the LOGRETAIN value. т.е. вместо него используется параметр logarchmeth1 который вы после него и установили. Не надо первую базу переводить в какой либо режим, чтобы из ее бэкапов восстановить базу на другом сервере. Для восстановления на другом сервере надо установить базу такой же версии как исходной (хотя можно взять и версию поновее но это детали), где делался бэкап, а также иметь в наличии файлы бэкапа. Можете почитать например хорошую статью на эту тему Введение в восстановление после сбоев базы данных DB2 9 и конечно документацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2012, 14:48 |
|
||
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
Полный бэкап будет делаться раз в день например, поэтому хотелось бы иметь возможность сделать рестор из этого бэкапа + накатить все транзакции, совершенные после полного бэкапа. Не очень понятно, как db2 делает rollforward, как и какие логи при этом использует, чтобы четко знать, что копировать на другой сервер, кроме полного бэкапа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2012, 15:08 |
|
||
|
Восстановление DB2 из полного бэкапа и архивных логов
|
|||
|---|---|---|---|
|
#18+
usha_cowНе очень понятно, как db2 делает rollforward, как и какие логи при этом используетИщет подходящие файлы журналов и накатывается по ним. Ищет сначала в пути для активных журналов, потом по порядку в каталогах, указанных в: - OVERFLOW LOG PATH опции команды ROLLFORWARD, если указано - OVERFLOWLOGPATH параметре БД - history file - LOGARCHMETH* параметрах БД Использует журналы с номерами большими или равными номеру, который можно получить среди прочего, например, утилитой: Код: plaintext С журналами db2 работает вкратце так: как активный закрывается, так его копируют в путь для архивных журналов, если этот путь установлен. Иначе (если logarchmeth* = logretain) он остаётся лежать в пути для активных журналов. Активный журнал может закрыться не только при его заполнении, но и, например, при деактивации БД или при взятии online архива. Поэтому, если вы хотите, чтобы все транзакции сохранились при накате, вам надо не только из архивного пути журналы подсунуть в соотв. каталог, но и из активного пути. Правда, незаархивированный файл надо брать только если с БД не работает никто в данный момент. Например, когда система упала. Тогда активный журнал не успел заархивироваться, в нём есть завершенные транзакции, но с БД в данный момент никто не работает (т.е. в файл не идёт запись). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2012, 18:19 |
|
||
|
|

start [/forum/topic.php?fid=43&fpage=45&tid=1601843]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
89ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
95ms |
get tp. blocked users: |
2ms |
| others: | 274ms |
| total: | 500ms |

| 0 / 0 |
