首页 > 数据库 > Oracle > flashback database在测试中的应用
什么是flashback database
flashback database通过保存数据库的归档日志及记录数据库修改的块来实现数据库快速回退到历史的某个时间点。
Flashback database的用途
flashback database新功能在测试中非常有用,数据库在很短的时间内恢复到测试前。flashback database使用flashback logs来记录更改的data block的历史version,在rollback的时候,就不需要恢复整个数据文件,只要回复修改的data block就可以了。
下面是在测试中用的语句。
1. use database as archive log mode and set archive dest location
alter system set LOG_ARCHIVE_DEST_1 = 'LOCATION=/u04/arch/orcl' scope=spfile;
2. configuration retention days/size/distination
ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=43200; --30 days
ALTER SYSTEM SET db_recovery_file_dest_size=10g SCOPE=BOTH;
ALTER SYSTEM SET db_recovery_file_dest='/u04/flash_recovery_area/orcl' SCOPE=BOTH;
3. enalbe database flashback
ALTER DATABASE FLASHBACK ON;
4. create restore pint
CREATE RESTORE POINT before_upgrade GUARANTEE FLASHBACK DATABASE;
SELECT NAME, SCN, TIME, DATABASE_INCARNATION#,GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE FROM V$RESTORE_POINT;
DROP RESTORE POINT BEFORE_UPGRADE;
5. do some changes.
6. rollback database to restore point
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
FLASHBACK DATABASE TO RESTORE POINT 'BEFORE_UPGRADE';
ALTER DATABASE OPEN RESETLOGS;
7. Clear space for flashback database
You can disable Flashback Database with the ALTER DATABASE FLASHBACK OFF command.
As a consequence, all existing Flashback Database logs are deleted automatically
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25105315/viewspace-694247/ ,如需转载,请注明出处,否则将追究法律责任。