天天看点

三种Oracle RMAN备份加密策略

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

RMAN备份安全的三种策略分别为:密码口令安全、Oracle Wallet安全和混合加密安全

RMAN> show encryption for database ;

db_unique_name 为 NEWTEST 的数据库的 RMAN 配置参数为:

RMAN> show encryption algorithm;

默认RMAN是不启用加密机制的。加密问题一定跟随着加密算法,默认加密算法为AES128。查看视图v$RMAN_ENCRYPTION_ALGORITHMS,可以看到当前可以使用的加密算法。

RMAN> select * from v$rman_encryption_algorithms;

ALGORITHM_ID ALGORITHM_NAME

ALGORITHMDESCRIPTION IS RES

AES 128-bit key YES NO

AES 192-bit key NO NO

AES 256-bit key NO NO

使用口令加密,首先使用set encryption命令设置上口令。

RMAN> set encryption on identified by 'test' only

2> ;

正在执行命令: SET encryption

RMAN> show encryption for database;

RMAN> backup database plus archivelog;

从位于 05-2月 -18 的 backup 开始

当前日志已存档

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在启动归档日志备份集

通道 ORA_DISK_1: 正在指定备份集内的归档日志

输入归档日志线程 = 1 序列 = 15 RECID=155 STAMP=967284487

通道 ORA_DISK_1: 正于 05-2月 -18 启动段 1

通道 ORA_DISK_1: 完成了于 05-2月 -18 启动段 1

片段句柄 = E:\RECOVERYFLASH\NEWTEST\BACKUPSET\2018_02_05\O1_MF_ANNNN_TAG20180205T100807F7HH47FM.BKP 标记 = TAG20180205T100807 注释 = NONE

通道 ORA_DISK_1: 备份集完成, 用时: 00:00:01

在 05-2月 -18 完成了 backup

从位于 05-2月 -18 的 Control File and SPFILE Autobackup 开始

片段句柄 = E:\CONTROLBACKUP\CF-C-1779551310-20180205-04 注释 = NONE

在 05-2月 -18 完成了 Control File and SPFILE Autobackup

RMAN> shutdown immediate;

数据库已关闭

数据库已卸装

Oracle 实例已关闭

RMAN> startup mount;

已连接到目标数据库 (未启动)

Oracle 实例已启动

数据库已装载

系统全局区域总计 2768240640 字节

Fixed Size 8922760 字节

Variable Size 704645496 字节

Database Buffers 2046820352 字节

Redo Buffers 7852032 字节

RMAN> restore database ;

从位于 05-2月 -18 的 restore 开始

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=33 设备类型=DISK

正在跳过数据文件 2; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBSEED\SYSTEM01.DBF

正在跳过数据文件 4; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBSEED\SYSAUX01.DBF

正在跳过数据文件 6; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBSEED\UNDOTBS01.DBF

正在跳过数据文件 8; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBTEST\SYSTEM01.DBF

正在跳过数据文件 9; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBTEST\SYSAUX01.DBF

正在跳过数据文件 10; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBTEST\UNDOTBS01.DBF

正在跳过数据文件 11; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\PDBTEST\USERS01.DBF

正在跳过数据文件 40; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\CLONEPDB_PLUG\SYSTEM01.DBF

正在跳过数据文件 41; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\CLONEPDB_PLUG\SYSAUX01.DBF

正在跳过数据文件 42; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\CLONEPDB_PLUG\UNDOTBS01.DBF

正在跳过数据文件 43; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\CLONEPDB_PLUG\USERS01.DBF

正在跳过数据文件 45; 已还原到文件 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\CLONEPDB_PLUG\FDA01.DBF

通道 ORA_DISK_1: 正在开始还原数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

通道 ORA_DISK_1: 将数据文件 00001 还原到 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\SYSTEM01.DBF

通道 ORA_DISK_1: 将数据文件 00003 还原到 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\SYSAUX01.DBF

通道 ORA_DISK_1: 将数据文件 00005 还原到 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\UNDOTBS01.DBF

通道 ORA_DISK_1: 将数据文件 00007 还原到 C:\APP\ADMINISTRATOR\VIRTUAL\ORADATA\NEWTEST\USERS01.DBF

通道 ORA_DISK_1: 正在读取备份片段 E:\RECOVERYFLASH\NEWTEST\BACKUPSET\2018_02_05\O1_MF_NNNDF_TAG20180205T100514F7HGYVZ5.BKP

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-03002: 位于 02/05/2018 10:11:52 的 restore 命令失败

ORA-19870: 还原备份片段 E:\RECOVERYFLASH\NEWTEST\BACKUPSET\2018_02_05\O1_MF_NNNDF_TAG20180205T100514F7HGYVZ5.BKP 时出错

ORA-19913: 无法解密备份

ORA-28365: Wallet 未打开

RMAN> set decryption identified by 'test';

正在执行命令: SET decryption

通道 ORA_DISK_1: 片段句柄 = E:\RECOVERYFLASH\NEWTEST\BACKUPSET\2018_02_05\O1_MF_NNNDF_TAG20180205T100514F7HGYVZ5.BKP 标记 = TAG20180205T100514

通道 ORA_DISK_1: 已还原备份片段 1

通道 ORA_DISK_1: 还原完成, 用时: 00:01:05

在 05-2月 -18 完成了 restore

RMAN> recover database;

从位于 05-2月 -18 的 recover 开始

正在开始介质的恢复

介质恢复完成, 用时: 00:00:01

在 05-2月 -18 完成了 recover

RMAN> alter database open;

已处理语句

RMAN> set encryption off;

这种策略,是比较简单的RMAN备份集合加密策略。一般正式运维场景下,是不使用这个的。

Oracle Wallet加密策略

Oracle Wallet是一种加密安全策略,过去我们在TDE(Oracle透明加密)部分研究过这个组件。简单的说,Oracle Wallet就是在本机上配置一个加密配置文件,通过SQL命令控制Oracle Wallet的开启关闭状态,如果Wallet关闭或者不存在,那么一些加密的信息(包括TDE和RMAN备份集合)数据就不能正常打开。

使用Oracle Wallet应用在RMAN备份中,可以实现类似的透明策略。而且,备份集合只能在相同的服务器(借助Wallet文件)才能正确打开。

rman似乎有问题下次测试

     本文转自whshurk 51CTO博客,原文链接:http://blog.51cto.com/shurk/2068871,如需转载请自行联系原作者