Flashback是Oracle中一个重要的功能,想要使用闪回数据库功能,需要将数据库置于闪回数据库的状态。
1.检查数据库是否开启归档状态
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence
Next log sequence to archive
Current log sequence
如果数据库为开启归档模式
--关闭数据库
SQL> shutdown immediate
--打开数据库都mount阶段
SQL> startup mount
--开启归档模式
SQL> alter database archivelog;
--打开数据库
SQL> alter database open;
2.检查数据库是否启用数据库闪回功能
SQL> select flashback_on from v$database; FLASHBACK_ON
------------------
NO
3.修改db_recovery_file_dest、db_recovery_file_dest_size及db_flashback_retention_target三个参数内容
1)db_recovery_file_dest、db_recovery_file_dest_size两个参数用于指定闪回日志存放位置及最大大小。可以根据具体环境做相应调整使用alter system set语句进行修改
SQL> show parameter db_recovery NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /u01/oracle/fast_recovery_area
db_recovery_file_dest_size big integer 4182M
2)查看db_flashback_retention_target保留时间
SQL> show parameter db_flashback NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_flashback_retention_target integer
4.启动数据库到mount阶段
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down. SQL> startup mount;
ORACLE instance started.
Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
Database mounted.
5.启用flashback功能,并打开数据库
--启用flashback功能
SQL> alter database flashback on; Database altered.
--打开数据库
SQL> alter database open; Database altered.
6.验证闪回功能是否已开启
SQL> select flashback_on from v$database; FLASHBACK_ON
------------------
YES
来自:https://blog.csdn.net/u011364306/article/details/49249187