透明表空间加密,是保护数据安全的一种手段。
在数据库层面完成加密和解密,对应用完全透明。
即使数据文件泄露出去,也不能读取其中的加密数据。
简单操作步骤如下:
--1、查看现有 wallet 目录,并创建 select * from v$encryption_wallet;
SQL>host mkdir –p /u01/app/oracle/admin/zxqyrzpri/wallet
--2、完成以上操作后, 创建加密 key alter system set encryption key identified by oracle;
--3、此时再查看 wallet 的状态为 Open: select * from v$encryption_wallet;
--4、创建加密表空间 create tablespace TBS_ZXQYRZ_TDE datafile '/u01/app/oracle/oradata/zxqyrz/df_zxqyrz_tde01.dbf' size 1G autoextend on next 128m maxsize 30G encryption default storage(encrypt);
alter tablespace TBS_ZXQYRZ_TDE add datafile '/u01/app/oracle/oradata/zxqyrz/df_zxqyrz_tde02.dbf' size 1G autoextend on next 128m maxsize 30G; alter tablespace TBS_ZXQYRZ_TDE add datafile '/u01/app/oracle/oradata/zxqyrz/df_zxqyrz_tde03.dbf' size 1G autoextend on next 128m maxsize 30G;
select tablespace_name,encrypted from dba_tablespaces where tablespace_name like '%TDE%';
如果是dg环境,备库也要相关操作,请谨慎操作,否则会导致同步停止。
具体详情请参考官方文档,在测试环境测试完成后再在生产环境操作。