Oceanbase 透明加密TDE
官方文档:数据库透明加密概述-V4.3.2-OceanBase 数据库文档-分布式数据库使用文档
OceanBase 数据库社区版暂不支持数据透明加密。
数据存储加密是指对数据和 Clog 等保存在磁盘中的数据进行无感知的加密,即透明加密(简称 TDE)。数据在写入存储设备前自动进行加密,读取时自动解密,该过程对用户是透明的,黑客和恶意用户无法从数据文件、数据库备份或磁盘中读取到敏感数据。
一.Mysql模式下的数据透明加密:
使用限制
系统租户不能开启加密。
租户配置透明加密后,除非租户重建,否则无法再切换为其他加密模式。为新创建的表设置透明加密
为新创建的表设置透明加密
业务租户登录到集群的 MySQL 租户
1..执行以下语句,开启 internal 方式的透明加密。
ALTER SYSTEM SET tde_method='internal';
2.执行以下语句,确认该租户上所有 OBServer 节点上的配置项 tde_method
的值均为 internal
。
SHOW PARAMETERS LIKE 'tde_method';
3.确认后,执行以下语句,生成主密钥。
ALTER INSTANCE ROTATE INNODB MASTER KEY;
4.创建表空间并指定加密算法
CREATE TABLESPACE sectest_ts1 encryption = 'y';
5.在加密的表空间中创建新表
CREATE TABLE t1 (id1 int, id2 int) TABLESPACE sectest_ts1;
6.确认表空间内的表是否标记为加密。
SELECT table_name,encryptionalg,encrypted FROM oceanbase.V$OB_ENCRYPTED_TABLES;
我这里测试版本是企业版V3 所以和 V4视图名称不一样。
为已有表设置透明加密
业务租户登录到集群的MySQL租户
1.执行以下语句,开启 internal 方式的透明加密。
ALTER SYSTEM SET tde_method='internal';
2.执行以下语句,确认该租户上所有 OBServer 节点上的配置项 tde_method
的值均为 internal
。
SHOW PARAMETERS LIKE 'tde_method';
3.确认后,执行以下语句,生成主密钥。
ALTER INSTANCE ROTATE INNODB MASTER KEY;
4.创建表空间并指定加密算法。
CREATE TABLESPACE sectest_ts1 encryption = 'y';
5.创建t1表
CREATE TABLE t1 (id1 int, id2 int);
6.将已有表移入加密表空间
ALTER TABLE t1 TABLESPACE sectest_ts1;
解除加密:
t1
的加密状态如下,且表 t1
在加密的表空间 sectest_ts1
中。


对表执行渐进合并。
progressive_merge_num
的值设置为大于 1
的数,并执行 OPTIMIZE
命令,准备做渐进合并。
ALTER TABLE t1 SET progressive_merge_num = 3;
OPTIMIZE TABLE t1;
CREATE TABLESPACE ts2;
将表 t1
从加密的表空间 sectest_ts1
中移到未加密的表空间 ts2
中。
ALTER TABLE t1 TABLESPACE ts2;
SHOW CREATE TABLE t1 \G
查询 oceanbase.V$OB_ENCRYPTED_TABLES
视图,确认表的加密状态。
二.Oracle模式下的数据透明加密
为新创建的表设置存储加密
1.管理员用户登录到数据库的 Oracle 租户。
ALTER SYSTEM SET tde_method='internal';
2.执行以下语句,确认该租户上所有 OBServer 节点上的配置项 tde_method
的值均为 internal
。
SHOW PARAMETERS LIKE 'tde_method';
3.创建 Keystore。
ADMINISTER KEY MANAGEMENT CREATE KEYSTORE keystore_name IDENTIFIED BY password;
4.开启 Keystore。
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY password;
5.执行以下语句,生成主密钥。
ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY password;
6.创建表空间并指定加密算法。
CREATE TABLESPACE sectest_ts1 ENCRYPTION USING 'aes-256';
7.验证加密是否配置成功
创建表并指定表空间。
CREATE TABLE t1 (id1 int, id2 int) TABLESPACE sectest_ts1;
确认表空间内的表是否标记为加密。
SELECT TABLE_NAME,ENCRYPTIONALG FROM v$encrypted_tables;
为已有表设置透明加密
1.管理员用户登录到数据库的 Oracle 租户
2.执行以下语句,开启 internal 方式的存储加密
ALTER SYSTEM SET tde_method='internal';

3.执行以下语句,确认该租户上所有 OBServer 节点上的配置项 tde_method
的值均为 internal
。
SHOW PARAMETERS LIKE 'tde_method';
4.创建 Keystore
ADMINISTER KEY MANAGEMENT CREATE KEYSTORE keystore_name IDENTIFIED BY password;
5.开启 Keystore
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY password;
6.执行以下语句,生成主密钥
ADMINISTER KEY MANAGEMENT SET KEY IDENTIFIED BY password;
7.创建表空间并指定加密算法
CREATE TABLESPACE sectest_ts1 ENCRYPTION USING 'aes-256';
8.将已有表移入加密表空间
ALTER TABLE t1 TABLESPACE sectest_ts1;
对表执行全量合并
ALTER TABLE t1 set progressive_merge_num = 1;
ALTER SYSTEM MAJOR FREEZE;
SELECT * FROM v$encrypted_tables;
确认所有宏块是否已完成加密。
解除加密:
假设表 t1
的加密状态如下,且表 t1
在加密的表空间 sectest_ts1
中。
SELECT * FROM v$encrypted_tables;
SHOW CREATE TABLE t1;
将表从加密表空间中移出,创建未加密的表空间 ts2
。
CREATE TABLESPACE ts2;
ALTER TABLE t1 TABLESPACE ts2;
操作成功后,执行 SHOW CREATE TABLE
语句,可以看到表 t1
已经移到了表空间 ts2
中
SHOW CREATE TABLE t1;
SELECT * FROM sys.v$encrypted_tables;
可以看到表 t1
的 STATUS
字段为 NORMAL
即未加密状态,说明表 t1
解除加密操作成功。
相关文章:

Oceanbase 透明加密TDE
官方文档:数据库透明加密概述-V4.3.2-OceanBase 数据库文档-分布式数据库使用文档 OceanBase 数据库社区版暂不支持数据透明加密。 数据存储加密是指对数据和 Clog 等保存在磁盘中的数据进行无感知的加密,即透明加密(简称 TDE)。…...

图像去噪实验:基于全变分(TV)模型的MATLAB实现
一、背景 全变分模型在图像处理领域中被广泛用于去除噪声,同时保持图像边缘的清晰度。 二、实验步骤 图像的读取、噪声添加、去噪处理以及结果的显示。 三、实验仿真结果图 四、结论 全变分模型是一种有效的图像去噪方法,它能够在去除噪声的同时&#…...

97.WEB渗透测试-信息收集-Google语法(11)
免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:96.WEB渗透测试-信息收集-Google语法(10) 2 、找上传类漏洞地址&…...

连锁美业门店如何寻找精准客户?美业SaaS拓客系统管理系统源码
连锁美业门店要寻找精准客户,可以采取多种方法结合现实因素进行推广和营销。以下是博弈美业系统给出的一些建议: 1.定位目标客户群体: 首先,门店需要确定目标客户是谁。这可能包括年龄、性别、收入水平、生活方式以及消费习惯等…...

RK3588开发板利用udp发送和接收数据
目录 1 send.cpp 2 receive.cpp 3 编译运行 4 测试 1 send.cpp #include <iostream> #include <string> #include <cstring> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> //…...
代码整洁之道(第3章节)--函数
目录 3.1 短小 3.2 只做一件事 3.3 每个函数一个抽象层级 3.4switch语句 3.5 使用描述性的名称 3.6 函数参数 3.6.1 一元函数的普遍形式 3.6.2标识参数 3.6.3 二元函数 3.6.4 三元函数 3.6.5参数对象 3.6.6参数列表 3.6.7动词与关键字 3.8分隔指令与询问 3.9使用…...

92. UE5 GAS RPG 使用C++创建GE实现灼烧的负面效果
在正常游戏里,有些伤害技能会携带一些负面效果,比如火焰伤害的技能会携带燃烧效果,敌人在受到伤害后,会接受一个燃烧的效果,燃烧效果会在敌人身上持续一段时间,并且持续受到火焰灼烧。 我们将在这一篇文章里…...

Echarts可视化大屏数据详解
1、ECharts介绍 1.1、什么是ECharts ECharts是一款由百度开发并开源的数据可视化图表库,旨在帮助开发者通过简单易用的方式实现复杂的数据展示和分析需求。它完全基于 JavaScript 开发,利用 HTML5 的 Canvas 技术进行图形渲染,这使得它能够…...

Linux---文件(2)---文件描述符缓冲区(语言级)
目录 文件描述符 基础知识 文件描述符 对“Linux一切皆文件”的理解 文件描述符分配规则 缓冲区 刷新策略 存放位置 解释一个"奇怪的现象" 格式化输入输出 文件描述符 基础知识 在系统层面上,文件操作都是通过文件描述符来操作的。 程序在启…...

云计算实训39——Harbor仓库的使用、Docker-compose的编排、YAML文件
一、Harbor部署 1.验证python版本 [rootdocker2 ~]#python --version 2.安装pip [rootdocker2 ~]# yum -y install python2-pip #由于版本过低,需要对其进行一个升级 #更新pip [rootdocker2 ~]#pip install --upgrade pip 3.指定版本号 [rootdocker2 ~]# p…...

lambda表达式用法——C#学习笔记
“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。 实例如下: 代码如下: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.…...

【C++ Primer Plus习题】11.6
问题: 解答: main.cpp #include <iostream> #include "Stonewt.h" using namespace std; const int SIZE 6;int main() {Stonewt stone_arr[SIZE] { 253.6,Stonewt(8,0.35),Stonewt(23,0) };double input;Stonewt eleven Stonewt(11, 0.0);Stonewt max st…...
Redis八种数据结构简介
Redis数据结构 Redis新旧版本中一共出现过八种数据结构,分别是SDS、双向链表、压缩列表、整数集合、哈希表、跳表、quicklist、listpack。 SDS SDS是用于存储Redis中字符串的数据结构,Redis底层使用的语言是C语言,因此字符串也是C语言的字…...
数据治理策略:确保数据资产的安全与高效利用
数据治理策略:确保数据资产的安全与高效利用 在数字化时代,数据已成为企业最宝贵的资产之一。然而,随着数据量的爆炸性增长和数据来源的多样化,如何有效地管理和利用这些数据成为企业面临的重要挑战。数据治理策略的制定和执行&a…...

ts格式转mp4,四款亲测好用软件推荐!
在这个数字视频时代,我们经常会遇到各种视频格式兼容性问题,尤其是从网络下载的高清电影或电视剧集,很多时候都是以TS格式存储。然而,当我们想要在移动设备、社交媒体或视频编辑软件中播放、上传时,MP4格式因其广泛的兼…...

10、Django Admin修改标题
admin from django.contrib import admin from .models import Category, Origin, Hero, Villain # 添加以下代码 admin.site.site_header "系统管理" admin.site.site_title "管理员界面" admin.site.index_title "欢迎来到这里ÿ…...

ESRI ArcGIS Pro 3.1.5新功能及安装教程和下载
ESRI ArcGIS Pro 3.1.5 主要新功能包括: 改进的数据编辑和管理:支持更多数据格式和更精细的属性表操作。增强的空间分析工具:新增和优化空间分析工具,提高数据分析效率。更好的3D可视化:改进3D渲染性能,支…...

人工智能,语音识别也算一种人工智能。
现在挺晚了,还是没有去睡觉,自己在想什么呢,也不确定。 这是一篇用语音写的文章,先按自己的想法说出来,然后再适当修改,也许就是一个不错的文章。 看来以后就不需要打字了,语音识别度很高&#…...
Token和Refresh Token
获取令牌(Token) 和 刷新令牌(Refresh Token) 在认证和授权机制中有不同的使用场景和目的,二者主要的区别和为什么需要刷新令牌可以通过以下几点解释: 1. 获取令牌和刷新令牌的区别 获取令牌(Token&#x…...

STM32(一)简介
一、stm32简介 1.外设接口 通过程序配置外设来完成功能 2.系统结构 3.引脚定义 4.启动配置 5.最小系统电路...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...

srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲
文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...