基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
CREATE TABLESPACE
更新时间:2024-11-11 23:00:00
描述
该语句用来创建 TableSpace(表空间)逻辑对象,TableSpace 属性支持加密。
语法
创建加密表空间。
CREATE TABLESPACE tablespace_name [ENCRYPTION [=] 'tablespace_encryption_option']; tablespace_encryption_option: N | Y | AES-256 | AES-256-GCM | AES-128 | AES-128-GCM | AES-192 | AES-192-GCM | SM4-CBC | SM4-GCM创建表空间。
CREATE TABLESPACE tablespace_name [ADD DATAFILE 'file_name'] [FILE_BLOCK_SIZE = value] USE LOGFILE GROUP logfile_group [EXTENT_SIZE [=] extent_size] [INITIAL_SIZE [=] initial_size] [AUTOEXTEND_SIZE [=] autoextend_size] [MAX_SIZE [=] max_size] [NODEGROUP [=] nodegroup_id] [WAIT] [COMMENT [=] 'string'] [ENGINE [=] engine_name]注意
仅支持该关键字语法,功能不生效。该语法关键字不能与
ENCRYPTION一同执行,否则语法会报错。
参数说明
| 参数 | 描述 |
|---|---|
| tablespace_name | 指定要创建的 TableSpace 对象名称。 |
| ENCRYPTION | 可选项,指定加密所使用的关键字,用于指定 TableSpace 所使用的加密算法。如果不通过关键字 ENCRYPTION 指定加密算法,则默认创建不加密的 TableSpace。加密算法的详细介绍,请参见下文 tablespace_encryption_option。 |
tablespace_encryption_option
N:表示不加密。Y:如果使用Y,则表示默认使用AES-256。AES-256:使用 256 位密钥进行加密和解密。AES-256-GCM:使用 256 位密钥的 GCM 模式。AES-128:使用 128 位密钥进行加密和解密。AES-128-GCM:使用 128 位密钥的 GCM 模式。AES-192:使用 192 位密钥进行加密和解密。AES-192-GCM:使用 192 位密钥的 GCM 模式。SM4-CBC:SM4 算法采用 CBC 模式,其中每个数据块都与前一个块加密后的输出进行异或操作再进行加密。SM4-GCM:SM4 算法采用 GCM 模式,此模式下 SM4 同时提供了数据加密和认证功能。
说明
- AES (Advanced Encryption Standard) 是一个对称加密算法,意味着相同的密钥用于加密和解密数据。AES 算法本身是基于区块加密的,通常以 128 位的区块对数据进行加密。
- AES-GCM (Galois/Counter Mode) 是一种操作模式,用于对区块加密算法(如 AES)进行处理,提供加密和数据认证(也称为消息认证码)。
- SM4 算法的区块长度是 128 位,密钥长度也是 128 位。
示例
创建一个未加密的 TableSpace 对象。
CREATE TABLESPACE tablespace001;创建一个使用透明数据加密 (TDE) 的 TableSpace 对象。
设置加密方式为内置的透明加密。
ALTER SYSTEM SET tde_method = 'internal';显示当前加密方式的配置。
SHOW PARAMETERS LIKE 'tde_method';生成新的主加密密钥。
ALTER INSTANCE ROTATE INNODB MASTER KEY;注意
尽管该命令可执行,但如果磁盘空间已满,则生成新的主加密密钥将无法完成。
创建一个名为
tablespace2的加密表空间,使用SM4-GCM加密算法。CREATE TABLESPACE tablespace002 ENCRYPTION = 'SM4-GCM';