之前中招,要full database backup,搞了一个通宵,痛定思痛,踏实学backup & recovery
flashback in single很多书都有提过,网上搜到的也一大堆,这里就不说了。在RAC下测试成功:
1. enable flashback
1.1 确定是在archivelog模式:
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 0
Next log sequence to archive 1
Current log sequence 1
1.2 设定以下三个系统参数:
SQL> show parameter recovery_file_dest;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /THRAC_D00/flashback
db_recovery_file_dest_size big integer 2G
SQL> show parameter db_flashback_retention_target;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_flashback_retention_target integer 1440
1.3 shutdown immediate所有节点
1.4 startup mount一个节点
1.5 并SQL> alter database flashback on;
1.6 在所有节点下检查
SQL> SELECT LOG_MODE,FLASHBACK_ON FROM V$DATABASE;
LOG_MODE FLASHBACK_ON
------------ ------------------
ARCHIVELOG YES
那就成功设定了
2. practice一下
node1:
SQL> desc william.t1
Name Null? Type
----------------------------------------- -------- ----------------------------
AAA NUMBER(5)
SQL> drop table william.t1;
Table dropped.
SQL> commit;
Commit complete.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
node2:
SQL> desc william.t1
ERROR:
ORA-04043: object william.t1 does not exist
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 599785472 bytes
Fixed Size 2022600 bytes
Variable Size 281019192 bytes
Database Buffers 310378496 bytes
Redo Buffers 6365184 bytes
Database mounted.
SQL> flashback database to timestamp TO_TIMESTAMP ('2009-12-16 08:35:00', 'YYYY-MM-DD HH24:MI:SS');
Flashback complete.
SQL> alter database open resetlogs;
Database altered.
SQL> desc william.t1;
Name Null? Type
----------------------------------------- -------- ----------------------------
AAA NUMBER(5)
node1:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 599785472 bytes
Fixed Size 2022600 bytes
Variable Size 289407800 bytes
Database Buffers 301989888 bytes
Redo Buffers 6365184 bytes
Database mounted.
Database opened.
SQL> desc william.t1
Name Null? Type
----------------------------------------- -------- ----------------------------
AAA NUMBER(5)
完
ps:这个数据库参数还没有优化,请大家不要见笑