开启/关闭归档模式
// 修改归档日志存放位置(禁止往快速恢复区存放归档日志)
SQL> !mkdir /u01/arch01
SQL> !mkdir /u01/arch02
SQL> alter system set log_archive_dest_1='location=/u01/arch01';
SQL> alter system set log_archive_dest_2='location=/u01/arch02';
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database archivelog; // alter database noarchivelog;
SQL> alter database open;
// 查看归档归档模式
SQL> archive log list;
SQL> select log_mode from v$database;
注册 catalog 恢复目录
// 连接到恢复目录数据库
// 1.为恢复目录创建一个表空间,该表空间做为恢复目录所有者的默认表空间
// 2.创建恢复目录所有者。
// 3.授予 RECOVERY_CATALOG_OWNER 角色
[oracle@orcl ~]$ sqlplus sys/oracle_4U@192.168.13.21:1522/orcl.example.com as sysdba
SQL> create tablespace rcat_ts datafile '/u01/app/oracle/oradata/catdb/rcat_ts.dbf' size 15M autoextend on;
Tablespace created.
SQL> create user rcowner identified by "oracle_4U" temporary tablespace temp default tablespace rcat_ts quota unlimited on rcat_ts;
User created.
SQL> grant recovery_catalog_owner to rcowner;
Grant succeeded.
// 创建恢复目录
[oracle@orcl ~]$ rman catalog rcowner/oracle_4U@192.168.13.21:1522/orcl.example.com
RMAN> CONNECT CATALOG rcowner/oracle_4U@192.168.13.21:1522/orcl.example.com
RMAN> create catalog;
recovery catalog created
// 将目标数据库注册到恢复目录数据库中
[oracle@orcl ~]$ rman target "'/ as sysbackup'" catalog rcowner/oracle_4U@192.168.13.21:1522/orcl.example.com
RMAN> register database;
database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
// 从恢复目录中注销目标数据库
[oracle@orcl ~]$ rman target "'/ as sysbackup'" catalog rcowner/oracle_4U@192.168.13.21:1522/orcl.example.com
RMAN> unregister database;
database name is "ORCL" and DBID is 1519857657
Do you really want to unregister the database (enter YES or NO)? y
database unregistered from the recovery catalog
// 手动重新同步恢复目录
[oracle@orcl ~]$ rman target "'/ as sysbackup'" catalog rcowner/oracle_4U@192.168.13.21:1522/orcl.example.com
RMAN> resync catalog;