合 在Oracle 12c中,在RMAN方面有哪些增强的新特性?
Oracle 12C的RMAN中新增了很多的新特性,分别如下所示:
(一)新的备份用户特权(SYSBACKUP)
在Oracle 11gR2中,引入了SYSASM特权用来执行与ASM相关的特定操作。同样地,在Oracle 12c中引入了3个新的系统用户SYSBACKUP、SYSDG和SYSKM,其中,SYSKM可以执行与透明数据加密密钥(Transparent Data Encryption keystore)相关的操作,SYSDG可以在DGMGRL或命令行接口里执行与DG(Data Guard)相关的操作,而SYSBACKUP特权用来在RMAN或SQL*Plus
中执行备份和恢复命令。
因此,可以在数据库中创建一个本地用户并在不授予其SYSDBA权限的情况下,通过授予SYSBACKUP权限让其能够在RMAN中执行备份和恢复相关的任务,不再需要SYSDBA这个超级权限。这一特性强制执行了职责安全模型的分离,即备份操作只需要SYSBACKUP权限来运行RMAN命令,并从需要真正的SYSDBA特权的数据库管理员那里承担独立的职责。
RMAN连接到数据库的方式与SQL*Plus
连接到数据库的方式相同。唯一的区别是,RMAN连接到目标或辅助数据库需要SYSDBA或SYSBACKUP特权。任何用户都可以授予此特权。
1 2 | $ rman target '"username/password as SYSBACKUP"' rman target '"/ as sysbackup"' |
在SQL*Plus中,若使用SYSBACKUP进行登录,则其SCHEMA为SYS,而USER为SYSBACKUP。
(二)可以直接在RMAN中执行SQL语句
在Oracle 12c中,可以在不需要SQL前缀的情况下在RMAN中执行任何SQL和PL/SQL命令。当然,原来的加SQL前缀的方式依然有效。如下便是在RMAN中执行SQL语句的案例: