Oracle 11g RAC开启归档日志和闪回

ruhendervulkan 2016-10-06

Oracle 11g RAC开启归档日志和闪回

1.查看数据库是否开启归档(查看两个节点rac1和rac2是否开归档日志)
SQL> archiveloglist
SP2-0734: unknown command beginning "archivelog..." - rest of line ignored.
SQL> archive log list
Database log mode              No Archive Mode
Automatic archival            Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence    7
Current log sequence          8
SQL>

2.在节点1(rac1)中设置只修改节点1的参数,不影响节点2.
SQL> alter system set cluster_database=false scope=spfile sid='racdb1';
System altered.
SQL>

3.在节点1(rac1)用srvctl命令关闭数据库
[oracle@rac1 ~]$ srvctl stop database -d racdb

4.挂载数据库,日志修改为归档
SQL> startup mount
SQL> alter database archivelog;
SQL> alter system set cluster_database=true scope=spfile sid='racdb1';
SQL> shutdown immediate

5.启动数据库
[oracle@rac1 ~]$ srvctl start database -d racdb

6.检查修改后的归档信息

SQL> archive log list
Database log mode              Archive Mode
Automatic archival            Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence    9
Next log sequence to archive  10
Current log sequence          10
SQL>

7.查看数据库是否启用闪回功能
节点1(rac1):

SQL> select flashback_on from v$database;  --必须先开启归档
FLASHBACK_ON
------------------
NO
SQL>

8.设置闪回的路径和大小
SQL> alter system set cluster_database=false scope=spfile sid='racdb1';
SQL> alter system set db_recovery_file_dest='+FALSE' scope=spfile;
SQL> alter system set db_recovery_file_dest_size=5G scope=spfile;

9.关闭数据库
[oracle@rac1 ~]$ srvctl stop database -d racdb

10.启用闪回
SQL> startup mount
SQL> alter database flashback on;
SQL> alter system set cluster_database=true scope=spfile sid='racdb1';
SQL> shutdown immediate

11.启动数据库
[oracle@rac1 ~]$ srvctl start database -d racdb

12.查看闪回功能
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
YES
SQL>

13.也可启用表空间闪回
SQL> alter tablespace abc flashback on;    --开启表空间闪回
SQL> alter tablespace abc flashback off;    --关闭表空间闪回

相关推荐