11g wallet使用

使用DBA权限创建

[oracle@oracle wallet]$ cd $ORACLE_HOME/network/admin

添加下面路径到sqlnet.ora里
[oracle@oracle admin]$ vi sqlnet.ora 
ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=$ORACLE_BASE/admin/$ORACLE_SID/wallet/)))
然后重启数据库,否则创建master key文件,指定wallet密码,使用SYS用户登入系统,建立加密文件的时候会报错
SQL> alter system set encryption key authenticated by "password";
alter system set encryption key authenticated by "password"
*
ERROR at line 1:
ORA-28353: failed to open wallet
重启完成后,再设密码,设置完成后默认已经打开wallet.
SQL> alter system set encryption key identified by "password";
System altered.

创建完成后,在$ORACLE_BASE/admin/$ORACLE_SID/wallet/下生成了key文件
[oracle@oracle trace]$ cd $ORACLE_BASE/admin/$ORACLE_SID/wallet/
[oracle@oracle wallet]$ ls -lrt
total 16
drwxr-xr-x 2 oracle oinstall 4096 Nov 17 21:54 ewallet.p12

打开wallet
SQL> alter system set encryption wallet open identified by "abcd1234";
关闭wallet
SQL> alter system set encryption wallet  close identified by "abcd1234";

加密表列
SQL> create table emp_enc ( ENAME VARCHAR2(10) encrypt, EMPNO    NUMBER(4) );
增加加密列
SQL> alter table emp_enc add ( sal NUMBER(7,2) encrypt );


加密新建的表空间
SQL> create tablespace user01 datafile '/opt/app/oracle/oradata/orcl/user01.dbf' size 500m encryption default storage(encrypt);


请使用浏览器的分享功能分享到微信等