构筑TDE 环境的例子:

测试环境:12.1.0.2

$ cd $ORACLE_HOME/network/admin
$ vim sqlnet.ora

$ pwd
/u01/app/oracle/product/12.1.0/dbhome_1/network/admin

sqlnet.ora 需要配置:

$ cat sqlnet.ora

ENCRYPTION_WALLET_LOCATION =
 (SOURCE =(METHOD = FILE)(METHOD_DATA =
   (DIRECTORY = /u01/app/oracle/admin/$ORACLE_SID/encryption_keystore/)

创建相应的目录:

$ mkdir -p /u01/app/oracle/admin/$ORACLE_SID/encryption_keystore

创建 KEYSTORE:

$ sqlplus / as sysdba

SQL> ADMINISTER KEY MANAGEMENT CREATE KEYSTORE '/u01/app/oracle/admin/ora12102/encryption_keystore/' IDENTIFIED BY myPassword;

SQL> HOST ls /u01/app/oracle/admin/ora12102/encryption_keystore/
ewallet.p12 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<    发现生成了相关的文件

SQL> ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY myPassword CONTAINER=ALL;

SQL> ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY myPassword WITH BACKUP CONTAINER=ALL;

确认结果:

SQL> SET LINESIZE 100
SQL> SELECT con_id, key_id FROM v$encryption_keys;

CON_ID
----------
KEY_ID
----------------------------------------------------------------------------------------------------
        0
AclrihXAik+1vxl5oahS/ukAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

0
AUgIBXZg2E9rvzdpDEfXjVIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

0
AekjUfUQkE9Mv+hfTnnWDfIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

SQL> SET LINESIZE 200
SQL> COLUMN wrl_parameter FORMAT A50
SQL> SELECT * FROM v$encryption_wallet;

WRL_TYPE                                                     WRL_PARAMETER
------------------------------------------------------------ --------------------------------------------------
STATUS                                                                                     WALLET_TYPE                                                  WALLET_ORDER
------------------------------------------------------------------------------------------ ------------------------------------------------------------ ---------------------------
FULLY_BACKED_UP                 CON_ID
--------------------------- ----------
FILE                                                         /u01/app/oracle/admin/ora12102/encryption_keystore
                                                             /
OPEN                                                                                       PASSWORD                                                     SINGLE
NO                                   0

SQL> CONN sys@mypdb1 AS SYSDBA

SQL> SELECT con_id, key_id FROM v$encryption_keys;

CON_ID
----------
KEY_ID
------------------------------------------------------------------------------------------------------------------------------------------------------------
        0
AUgIBXZg2E9rvzdpDEfXjVIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

SQL> grant dba to test identified by test;

SQL> conn test/test@mypdb1

SQL> CREATE TABLE tde_test (
 id    NUMBER(10),
 data  VARCHAR2(50) ENCRYPT
);

SQL> INSERT INTO tde_test VALUES (1, 'This is a secret!');
SQL> commit;

SQL> conn sys@mypdb1 AS SYSDBA

创建 TDE 表领域:

SQL> CREATE TABLESPACE encrypted_ts
        DATAFILE '/home/oracle/tbs01.dbf' SIZE 128K
        AUTOEXTEND ON NEXT 64K
        ENCRYPTION USING 'AES256'
        DEFAULT STORAGE(ENCRYPT);

SQL> ALTER USER test QUOTA UNLIMITED ON encrypted_ts;

然后,可以使用TDE 表领域来创建和使用表了:

SQL> CONN test/test@mypdb1

SQL> CREATE TABLE tde_ts_test (
 id    NUMBER(10),
 data  VARCHAR2(50)
) TABLESPACE encrypted_ts;

SQL> INSERT INTO tde_ts_test VALUES (1, 'This is also a secret!');
SQL> commit;

参考:https://oracle-base.com/articles/12c/multitenant-transparent-data-encryption-tde-12cr1

[Oracle]构筑TDE 环境的例子的更多相关文章

  1. 【转载】Maven+druid+MyBatis+Spring+Oracle+Dubbo开发环境搭建

    原地址:http://blog.csdn.net/wp1603710463/article/details/48247817#t16 Maven+druid+MyBatis+spring+Oracle ...

  2. Oracle 11g RAC环境下Private IP修改方法及异常处理

    Oracle 11g RAC环境下Private IP修改方法及异常处理 Oracle 11g RAC环境下Private IP修改方法及异常处理 一. 修改方法 1. 确认所有节点CRS服务以启动 ...

  3. Oracle 11g RAC 环境下单实例非缺省监听及端口配置

    如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器.大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口.而且在Orac ...

  4. Oracle RAC 实验环境RMAN备份v1.01

    Oracle RAC 实验环境RMAN备份v1.01 环境:RHEL 6.5 + Oracle GI 11.2.0.4 + RAC 11.2.0.4 (2 nodes) 需求:制定RAMN备份策略 版 ...

  5. plsql developer 11 + Oracle 11g 开发环境setup

    这是一个很水的博客, 介绍搭建plsql developer 11+ Oracle 11g 开发环境. 1. 本机上安装Oracle 11g express 对于开发足够了, 300MB的下载文件, ...

  6. 用 Docker 搭建 ORACLE 数据库开发环境

    用 Docker 搭建 ORACLE 数据库开发环境 需要安装 ORACLE 数据库做开发,直接安装的话因为各类平台的限制,非常复杂,会遇到很多问题. 还好,现在有 Docker 化的部署方式,省去很 ...

  7. Maven+druid+MyBatis+Spring+Oracle+Dubbo开发环境搭建

    1.开发工具使用: MyEclipse或Eclipse,数据库使用Oracle.需要用到的软件有Zookeeper(注册中心),Tomcat(Web容器)和Maven(包管理). 2.初始环境配置: ...

  8. CC++初学者编程教程(12) 基于rhel6.3的Oracle数据库学习环境搭建

    前言 安装oracle 11g系统最好是1G以上内存,硬盘至少需要4.5G空间. 至少环境在Linux Server release 5.3以上. win安装包 win32_11gR2_databas ...

  9. Tomcat+Oracle配置连接池的例子

    我这有一个Tomcat+Oracle连接池的例子,放上来和大家分享一下. Tomcat +Oracle  连接池配置   Author: Kenneth.Leaf@GalaxySoft Date: / ...

随机推荐

  1. OCaml相关

    1.open Core.Std 时报Unbound module Core 先安装库 $ opam init $ opam install core $ opam install utop 在~/.o ...

  2. 基于TensorFlow进行TensorBoard可视化

    # -*- coding: utf-8 -*- """ Created on Thu Nov 1 17:51:28 2018 @author: zhen "&q ...

  3. 洗礼灵魂,修炼python(39)--面向对象编程(9)—魔法方法表

    好的,不多说,大招来了,几乎完整的魔法方法: 基本的魔法方法 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Defi ...

  4. 大表分批删除脚本之MySQL版

    经常需要定期对某些表删除历史数据,通常这样的表的数据又是非常巨大,为了减轻对线上环境的影响,删除时必须分成小批量来进行. 以前分享过SQLServer的版本. 下面是MySQL版本: delimite ...

  5. 【PAT】B1040 有几个PAT(25)(25 分)

    一点25分的样子都没有 #include<cstdio> #include<string.h> using namespace std; int main(){ long lo ...

  6. 2.1Python数据处理篇之---内建有关数学的函数

    目录 目录 前言 (一)数学相关得内建函数 (二)具体演示 1.求绝对值 2.创建一个复数 3.求商和余数 4.求x得y次幂 5.生成一个序列 6.四舍五入 7.对一个集合求和 8.求最大值 9.求最 ...

  7. HTML 中点击<a>标签,页面跳转执行过程

    HTML链接使用的是<a>标签 点击超链接,后台的执行大致如下: <a href="https://www.baidu.com">超链接</a> ...

  8. MATLAB线性方程组的迭代求解法

    MATLAB线性方程组的迭代求解法 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ 一.实验目的 1. 借助矩阵按模最大特征值,判断解方程组的Jacobi ...

  9. golang []byte和string相互转换

    测试例子 package main   import (     "fmt" )   func main() {     str2 := "hello"     ...

  10. Javascript中的undefined、null、""、0值和false的区别总结

    在程序语言中定义的各种各样的数据类型中,我们都会为其定义一个"空值"或"假值",比如对象类型的空值null,.NET Framework中数据库字段的空值DBN ...