|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
Добрый день форумчане. Есть такой вот вопросик по технологии стендбай. Какое-то время в прошлом написал я скрипт, который успешно обновлял тестовую БД из бекапов RMAN на протяжении минимум года. При этом тестовая БД никоим образом не была напрямую связана с боевой. Только файлы бекапа архивлогов накатывались на тестовую БД. Вот упрощенный код скрипта Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Бекап на боевом сервере изменили. Теперь он бекапит на виртуальное ленточное устройство. И команду "catalog start with" не запустишь. Переделал я скрипт. Я вначале восстанавливаю controlfile который знает где и какие файлы есть на виртуальном ленточном устройстве. А потом уже обновляю БД. упрощенный код нового скрипта. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.
Новый скрипт после recover database; Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
И преобразование в snapshot вываливается с ошибкой Код: plsql 1. 2. 3. 4. 5. 6.
Вручную это лечится легко. Архивируем лог 22189 на боевом сервере копируем его на тестовой сервер. команда "catalog archivelog". А далее тестовая база успешно обновляется, конвертится и открывается. Но мне нужен скрипт который обновлял тестовую БД автоматически из виртуального ленточного устройства. Без ручного вмешательства. Может кто знает как это сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 14:57 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
igaraev, найти сиквенс для последнего доступного архивлога в библиотеке и выполнять Код: plsql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 15:18 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
landy, Это вручную. Я и написал что так я могу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 15:32 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
Используйте catalog базу данных Она для этого предназначена Код: plsql 1.
Только не забудьте сделать sync перед recover Использование Oracle для такой базы бесплатно, часто ее делают общей с OMS repository и размещают на виртуалке ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 15:47 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
Vadim Lejnin, Не думаю что catalog БД решит проблему. Так как после восстановления контрольника, скрипт успешно накатывает все имеющиеся архивлоги. Но стендбай отказывается конвертится без следующего, который еще не появился - он еще redolog не архивированный. То есть как бы бекап для него не консистентный. Почему для меня загадка. Ведь если я не восстановлю контрольник, а просто добавлю последующие архивлоги командой catalog, то бекап консистентный. А так новый контрольник знает о существовании еще чегото что находится в REDOLOG и это не дает сконвертировать БД в снепшот. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 16:27 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
igaraev Это вручную. после восстановления контрольника Код: plsql 1.
вторая колонка в последней строке. Точно так же можешь распарсить в скрипте и подставить в команду наката в RMAN ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 16:34 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
landy, Да могу. Но он и без этого восстанавливает все до последнего архивлоги. Проблема в том что контрольник знает про данные которые есть в REDOLOG и они еще не заархивированы. А вот когда на боевом он заархивируется и я его добавлю вручную без обновления контрольника и автобекапа, то все получится. А если опять обновлю контрольник из автобекапа, то свежий архивлог успешно накатится, но для конвертации он будет ждать свежую порцию данных, которые есть в REDOLOG, и опять ничего не получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 16:42 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
ну или перед восстановлением контрольника прочитать из стендбая последний scn, а после восстановления контрольника Код: plsql 1.
чтобы уменьшить ввод/вывод из библиотеки ЗЫ. т е заскриптовать все это ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 16:47 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
которые есть в REDOLOG и они еще не заархивированы. И что? Вы утверждаете, что нельзя восстановить БД(стендбай) на момент до последнего scn? А как же PITR? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 16:50 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
igaraev, 1) В 11g был жук/фича, когда не отрабатывался последний archivelog при backup не выполнялся alter database archivelog current Возможно, Вы в него наступили: MOSHowto make a consistent RMAN backup in an Standby database in Active DataGuard mode (Doc ID 1419923.1) RMAN-06820 ORA-17629 During Backup at Standby Site (Doc ID 1616074.1) Аналогичная проблема возникала у меня когда создавал master copy базу (нужна была база которую можно поднять без archivelog) созданную как каскадный standby Поднял скрипты по моему помогло: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Для 19с уже в rman можно напрямую использовать until consistent тынц , но в 11g по моему только из sql работало, уже не помню ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 17:38 |
|
Тестовая БД (snapshot standbay) на Oracle 11G через RMANовский бекап
|
|||
---|---|---|---|
#18+
resync catalog разумеется после mount ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2020, 17:39 |
|
|
start [/forum/topic.php?fid=52&msg=40022822&tid=1880655]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
67ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 167ms |
0 / 0 |