参考的doc如下:
http://www.oracle.com/technology/oramag/oracle/05-sep/o55security.html
http://users.telenet.be/oraguy.be/encryption1.htm
[@more@]0.说明wallet的location
在sqlnet.ora中增加下面内容说明wallet的location:
ENCRYPTION_WALLET_LOCATION =
(SOURCE=
(METHOD=file)
(METHOD_DATA=
(DIRECTORY=/orawall)))
1.察看备份加密特性是否激活
RMAN> show all;
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO 300 M;
CONFIGURE ENCRYPTION FOR DATABASE ON;
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:ORACLEPRODUCT10.2.0DB_1DATABASES
NCFTEST.ORA'; # default
RMAN>
2.激活rman的备份加密特性
RMAN> CONFIGURE ENCRYPTION FOR DATABASE on;
新的 RMAN 配置参数:
CONFIGURE ENCRYPTION FOR DATABASE ON;
已成功存储新的 RMAN 配置参数
正在启动全部恢复目录的 resync
完成全部 resync
3.创建wallet
SQL> alter system set encryption key authenticated by "manager";
系统已更改。
4.open wallet --创建wallet之后自动打开了wallet
SQL> alter system set wallet open identified by "manager";
alter system set wallet open identified by "manager"
*
第 1 行出现错误:
ORA-28354: wallet 已经打开
5.测试
RMAN> backup tablespace 'TEST';
启动 backup 于 2008/08/23 15:33:22
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00006 name=C:ORACLEPRODUCT10.2.0ORADATATESTTEST.DBF
通道 ORA_DISK_1: 正在启动段 1 于 2008/08/23 15:33:22
通道 ORA_DISK_1: 已完成段 1 于 2008/08/23 15:33:23
段句柄=C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREATESTBACKUPSET2008_08_23O1
_MF_NNNDF_TAG20080823T153322_4BZHB2OR_.BKP 标记=TAG20080823T153322 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 2008/08/23 15:33:23
6.close wallet
SQL> alter system set wallet close;
系统已更改。
7. restore 测试:
RMAN> RESTORE TABLESPACE 'TEST';
启动 restore 于 2008/08/23 15:33:52
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00006恢复到C:ORACLEPRODUCT10.2.0ORADATATESTTEST.DBF
通道 ORA_DISK_1: 正在读取备份段 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREATES
TBACKUPSET2008_08_23O1_MF_NNNDF_TAG20080823T153322_4BZHB2OR_.BKP
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore 命令 (在 08/23/2008 15:33:54 上) 失败
ORA-19870: 读取备份段 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREATESTBACKUPSE
T2008_08_23O1_MF_NNNDF_TAG20080823T153322_4BZHB2OR_.BKP 时出错
ORA-19913: 无法解密备份
ORA-28365: Wallet 未打开
8.OPEN WALLET
SQL> alter system set wallet open identified by "manager";
系统已更改。
SQL>
9.继续restore:
RMAN> RESTORE TABLESPACE 'TEST';
启动 restore 于 2008/08/23 15:34:22
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00006恢复到C:ORACLEPRODUCT10.2.0ORADATATESTTEST.DBF
通道 ORA_DISK_1: 正在读取备份段 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREATES
TBACKUPSET2008_08_23O1_MF_NNNDF_TAG20080823T153322_4BZHB2OR_.BKP
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore 命令 (在 08/23/2008 15:34:24 上) 失败
ORA-19870: 读取备份段 C:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREATESTBACKUPSE
T2008_08_23O1_MF_NNNDF_TAG20080823T153322_4BZHB2OR_.BKP 时出错
ORA-19573: 无法获得 exclusive 入队 (数据文件 6 的)
--上面之所以出错是因为数据库是出于正常的open状态,表空间test也是正常的可用状态!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/19602/viewspace-1009383/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/19602/viewspace-1009383/