Вернуть табличное пространство к моменту в прошлом (TSPITR)
OracleRMANКоманда
-- 1) Is the tablespace self-contained (SQL, on the target DB):
EXEC DBMS_TTS.TRANSPORT_SET_CHECK(ts_list => 'USERS', incl_constraints => TRUE, full_check => TRUE);
SELECT * FROM transport_set_violations;
-- 2) Objects created AFTER the target time that TSPITR will lose:
SELECT owner, name, tablespace_name,
TO_CHAR(creation_time,'YYYY-MM-DD HH24:MI:SS') AS created
FROM ts_pitr_objects_to_be_dropped
WHERE tablespace_name = 'USERS'
AND creation_time > TO_DATE('2026-01-15 03:00:00','YYYY-MM-DD HH24:MI:SS');
# 3) RMAN: with an automatic auxiliary instance
RECOVER TABLESPACE users
UNTIL TIME "TO_DATE('2026-01-15 03:00:00','YYYY-MM-DD HH24:MI:SS')"
AUXILIARY DESTINATION '/u03/aux';
# 4) The tablespace is left OFFLINE: take a backup first, then bring it online
BACKUP TABLESPACE users;
ALTER TABLESPACE users ONLINE;Что делает
RMAN восстанавливает SYSTEM/UNDO/SYSAUX и целевое табличное пространство до заданного времени во временном вспомогательном (auxiliary) экземпляре, затем подключает его обратно в целевую базу через transportable tablespace; остальная часть базы остаётся актуальной.
Когда использовать
Когда ошибочное пакетное задание или неверный DROP/TRUNCATE повредили данные только в одном табличном пространстве (или в самосогласованном наборе табличных пространств), а возможностей flashback недостаточно.
Внимание
ВСЕ изменения в этом табличном пространстве и все объекты, созданные после целевого времени, теряются. Набор табличных пространств должен быть самодостаточным (никаких индексов/таблиц, секций, LOB или FK в другом табличном пространстве). Нельзя использовать для табличных пространств, содержащих объекты SYSTEM, UNDO или SYS. После TSPITR прежние бэкапы этого табличного пространства непригодны; немедленно сделайте бэкап. AUXILIARY DESTINATION требует свободного места для SYSTEM+SYSAUX+UNDO+целевого табличного пространства.
Связанные материалы
- Создать каталог восстановления RMAN и зарегистрировать базу данных
- Создать физический standby из активной базы данных через RMAN DUPLICATE
- Проверить и очистить записи о бэкапах RMAN (CROSSCHECK, EXPIRED, OBSOLETE)
- Проверить базу данных и бэкапы на повреждения (VALIDATE)
- Посмотреть, какие бэкапы использует восстановление, и проверить их (PREVIEW / VALIDATE)
- Восстановить повреждённые блоки онлайн (block media recovery, RECOVER CORRUPTION LIST)