开启数据库闪回功能
--关闭数据库,需要将数据库打开到mount状态才能开启闪回功能:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> show user
USER is "SYS"
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[lubinsu@localhost oracle]$ sqlplus sys/lubinsu as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Mar 23 20:14:38 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> show parameter database
ORA-01034: ORACLE not available
SQL> startup nomout
SP2-0714: invalid combination of STARTUP options
SQL> startup nomount
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1218968 bytes
Variable Size 88082024 bytes
Database Buffers 188743680 bytes
Redo Buffers 7168000 bytes
SQL> alter database flashback on
2 ;
alter database flashback on
*
ERROR at line 1:
ORA-01507: database not mounted
SQL> alter database mount
2 ;
Database altered.
SQL> alter database flashback on
2 ;
alter database flashback on
*
ERROR at line 1:
ORA-38706: Cannot turn on FLASHBACK DATABASE logging.
ORA-38707: Media recovery is not enabled.
--需要开启归档才能使用闪回功能
SQL> alter database archivelog on
2 ;
alter database archivelog on
*
ERROR at line 1:
ORA-00933: SQL command not properly ended
SQL> alter database archivelog;
Database altered.
SQL> alter database flashback on;
Database altered.
SQL> alter database open;
Database altered.
--查看能够闪回的最早的scn号
--如果返回记录为空,说明没有打开闪回功能
SQL> select oldest_flashback_scn from v$flashback_database_log;
OLDEST_FLASHBACK_SCN
--------------------
1.3161E+13
SQL> select flashback from v$database;
select flashback from v$database
*
ERROR at line 1:
ORA-00904: "FLASHBACK": invalid identifier
--也可以这么查看是否已经打开闪回功能:
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
YES