DmitryF написал(а):
Усё. Все красиво стартануло.
Вот теперь бы докатиться до нужного состояния. Хотя бы еще 2-3 дня после оффлайн бэкапа восстановить. Это возможно?
Всё возможно, если сохранились редологи после того оффлайн бэкапа (от 18 марта) в течение нужных Вам 2-3 дней. И, конечно, если в течение этих 2-3 дней не было resetlogs. Оракловый процесс ACRH копирует редологи не проверяя, что с таким же именем уже есть. Он их просто затирает. Поэтому если было 2 resetlogs с небольшим интервалом, то логи после последнего сброса через небольшое время начнут затирать редологи от предыдущего сброса. Но, надеюсь, это не Ваш случай. Я предполагаю, что попытки восстановления и, соответственно, сбросы номеров редологов у вас начались много позже, а перед этим был долгий период без сброса номеров, так что нужные Вам редологи затереться не успели.
Так что для доката базы до нужного Вам состояния у Вас всё должно быть. Если sapdba не хочет этого делать - не беда, всё можно сделать вручную. Вам надо сделать следующее:
1. Восстановить датафайлы (и только их, контролфайлы восстанавливать не надо) от оффлайн бэкапа 18 марта. Это можно сделать brrestore с опцией '-m all'.
2. Восстановить контролфайлы от последнего онлайн бэкапа до resetlogs (ну на самом деле достаточно, чтоб он был после той даты, на которую вы хотите докатывать базу - то есть от 22 или от 23 марта). sapdba это умеет, в точности не напишу как - под рукой sapdba сейчас нет. Но можно в крайнем случае это сделать ручками.
1 и 2 можно выполнять в любом порядке, главное, чтоб в итоге датафайлы были от 18 марта, а контролфайлы от 22 или от 23.
3. startup mount
4. recover database until time 'YYYYMMDD HH:MM:SS'
5. alter database open resetlogs.
Необходимо сделать ещё пару замечаний:
а) Перед докатом не стоит проверять "как восстановилась база". То есть если вместо "startup mount" вы сделаете "starup;shutdown;startup mount", то толку не будет. Вещь вроде бы очевидная, и на курсах всегда это объясняют, но все оракловые админы на это нарываются обычно по разу :-/.
б) Посмотрите внимательно на даты сохранения редологов. Если Вас устроит время одного из сохранений, то recover предпочтительно делать не 'until time', а 'until cancel' до этого редолога. В этом случае Вы сможете открыть базу с опцией NORESETLOGS. Что сохранит преемственность бэкапов.