Я восстановил базу данных и применил архивный журнал. Как я могу узнать метку времени последней транзакции, на которую я восстановился?
Это стандарт Oracle 10g R2 (без флэшбэка)
Скопировано с эта страница:
[...] убедитесь, что все онлайн-файлы данных синхронизированы с точки зрения их SCN, прежде чем мы сможем нормально открыть базу данных. Итак, запустите следующий оператор SQL, как показано ниже, чтобы определить, синхронизированы ли файлы данных или нет. Обратите внимание, что мы запрашиваем V $ DATAFILE_HEADER, потому что мы хотим знать SCN, записанный в заголовке физического файла данных, а не V $ DATAFILE, который получает информацию из файла управления.
select status, checkpoint_change#,
to_char(checkpoint_time, 'DD-MON-YYYY HH24:MI:SS') as checkpoint_time,
count(*)
from v$datafile_header
group by status, checkpoint_change#, checkpoint_time
order by status, checkpoint_change#, checkpoint_time;
Результаты вышеуказанного запроса должны возвращать одну и только одну строку для онлайн-файлов данных, что означает, что они уже синхронизированы с точки зрения их SCN. В противном случае, если результаты возвращают более одной строки для онлайн-файлов данных, тогда эти файлы еще не синхронизированы. В этом случае нам нужно применить архивный журнал (-ы) или повторный (-ые) журнал (-ы) для синхронизации всех онлайн-файлов данных. Между прочим, обратите внимание на CHECKPOINT_TIME в V $ DATAFILE_HEADER, который указывает дату и время, как далеко были восстановлены файлы данных.
Чтобы проверить, была ли вся база данных восстановлена в один и тот же SCN:
select checkpoint_change# from v$database;