Точки восстановления и ретроспективные запросы для включения требуют предварительно настроенного места хранения.
Решение
Включать нужно выключив и смонтировав базу. Все работы в SQL*Plus.
SQL> SHUTDOWN IMMEDIATE; -- выключить экземпляр, нельзя использовать опцию ABORT База данных закрыта. База данных размонтирована. Экземпляр ORACLE завершен. SQL> STARTUP MOUNT; -- запуск и монтирование Экземпляр ORACLE запущен. Total System Global Area 7499413248 bytes Fixed Size 9152256 bytes Variable Size 2936012800 bytes Database Buffers 4546625536 bytes Redo Buffers 7622656 bytes База данных смонтирована. SQL> ALTER DATABASE FLASHBACK ON; -- включить ALTER DATABASE FLASHBACK ON * ошибка в строке 1: ORA-38706: Невозможно включить протоколирование FLASHBACK DATABASE. ORA-38709: Область восстановления не включена.
Увы, так сходу нельзя включить – место хранения не определено по-умолчанию. Создадим каталог /opt/oracle/oradata/ARCH/db_recovery_file, выделим 15Гб, запишем это в spfile, выключим и запустим.
SQL> alter system set db_recovery_file_dest='/opt/oracle/oradata/ARCH/db_recovery_file' scope=spfile; Система изменена. SQL> alter system set db_recovery_file_dest_size=20g scope=spfile; Система изменена. SQL> shutdown immediate; ORA-01109: база данных не открыта База данных размонтирована. Экземпляр ORACLE завершен. SQL> STARTUP MOUNT; Экземпляр ORACLE запущен. Total System Global Area 7499413248 bytes Fixed Size 9152256 bytes Variable Size 2936012800 bytes Database Buffers 4546625536 bytes Redo Buffers 7622656 bytes База данных смонтирована. SQL> ALTER DATABASE OPEN; База данных изменена. SQL> alter pluggable database all open; Подключаемая база данных изменена.
Проверяем!
SQL> set linesize 200 set longchunksize 200000 set long 200000 set pages 0 set pagesize 200 SQL> SELECT name, open_mode, flashback_on FROM v$database;
Все ок!