改变(撤销)表空间tablespace_nameNDB只有:{add | drop} datafile 'file_name' [INITIAL_SIZE [=] size] [WAIT]InnoDB NDB:(重命名tablespace_name]InnoDB只有:[AUTOEXTEND_SIZE[=]”价值”][集{活动|非活动}][加密(=){' Y ' | ' N '})InnoDB NDB:(引擎(=)engine_name]保留供将来使用的:[ENGINE_ATTRIBUTE[=]”字符串']
这个语句用在withNDB
而且InnoDB
表空间。控件中添加新数据文件,或从控件中删除数据文件NDB
表空间。它还可以用来重命名一个NDB集群磁盘数据表空间,重命名一个InnoDB
一般表空间,加密一个InnoDB
一般表空间,或标记InnoDB
将表空间撤消为活动或不活动。
的撤销
关键字,在MySQL 8.0.14中引入,与设置{激活|不激活}
条款来标记InnoDB
将表空间撤消为活动或不活动。有关更多信息,请参见第15.6.3.4节“撤消表空间”.
的添加数据文件
类的初始大小NDB
磁盘数据表空间使用INITIAL_SIZE
条款,大小
以字节为单位度量;默认值为134217728 (128mb)。你可以选择跟随大小
用一个字母缩写来表示一个数量级,类似于my.cnf
.一般来说,这是其中一个字母米
(mb)或G
(g)。
在32位系统上,的最大支持值INITIAL_SIZE
为4294967296 (4gb)。(错误# 29186)
INITIAL_SIZE
是圆的,明确的,至于创建表空间
.
一旦创建了数据文件,它的大小就不能更改;但是,您可以使用additional命令向NDB表空间添加更多的数据文件改变表空间……添加数据文件
语句。
当改变表空间……添加数据文件
是使用引擎= NDB
时,在每个Cluster数据节点上创建一个数据文件,但在INFORMATION_SCHEMA。文件
表格参见该表的说明,以及第23.5.10.1节“NDB集群磁盘数据对象”,以查询更多资料。添加数据文件
不支持InnoDB
表空间。
使用删除数据文件
与修改表空间
删除数据文件'file_name
’。不能从任何表正在使用的表空间中删除数据文件;换句话说,数据文件必须为空(不使用区)。看到第23.5.10.1节“NDB集群磁盘数据对象”.此外,任何要删除的数据文件都必须事先添加到表空间创建表空间
或修改表空间
.删除数据文件
不支持InnoDB
表空间。
等待
被解析,但在其他情况下会被忽略。它的目的是为了未来的扩张。
的引擎
子句指定表空间使用的存储引擎,已弃用;希望它在未来的版本中被删除。数据字典知道表空间存储引擎,因此引擎
条款过时了。如果指定了存储引擎,则必须与数据字典中定义的表空间存储引擎匹配。唯一的价值engine_name
兼容NDB
表空间是NDB
而且NDBCLUSTER
.
一个重命名为
运行时无法执行操作锁表
或用读锁刷新表
对驻留在表空间中的表有效。
独家元数据锁在重命名表空间时,对驻留在通用表空间中的表进行处理,这防止了并发DDL。支持并发DML。
的创建表空间
对象重命名时需要InnoDB
一般的表空间。
的AUTOEXTEND_SIZE
选项定义使用的数量InnoDB
当表空间满时扩展表空间的大小。在MySQL 8.0.23中介绍。该设置必须是4MB的倍数。默认设置为0,这将导致根据隐式默认行为扩展表空间。有关更多信息,请参见第15.6.3.9节“表空间AUTOEXTEND_SIZE配置”.
的加密
子句启用或禁用页级数据加密InnoDB
一般表空间或mysql
系统表空间。MySQL 8.0.13引入了对通用表空间的加密支持。的加密支持mysql
system表空间在MySQL 8.0.16中引入。
在启用加密之前,必须安装和配置密匙环插件。
从MySQL 8.0.16开始,如果table_encryption_privilege_check
变量,则TABLE_ENCRYPTION_ADMIN
权限更改一般表空间时需要加密
子句设置不同于default_table_encryption
设置。
如果通用表空间中的任何表属于用定义的模式,则对该表空间启用加密将失败默认加密= ' N '
.类似地,如果通用表空间中的任何表属于用定义的模式,则禁用加密将失败默认加密= ' Y '
.的默认加密
MySQL 8.0.16中引入了schema选项。
如果一个修改表空间
在一般表空间上执行的语句不包括加密
子句,表空间将保留其当前加密状态,而不管default_table_encryption
设置。
一般表空间或mysql
系统表空间是加密的,所有表空间中的表都是加密的。同样,在加密表空间中创建的表也是加密的。
的原地
算法在修改加密
属性的通用表空间mysql
系统表空间。的原地
算法允许在表空间中的表上并发DML。并发DDL被阻塞。
有关更多信息,请参见第15.13节“InnoDB数据静止加密”.
的ENGINE_ATTRIBUTE
option(在MySQL 8.0.21中可用)用于为主存储引擎指定表空间属性。该选项保留供将来使用。
允许的值是一个字符串字面值,包含一个有效的JSON
文档或空字符串(")。无效的JSON
将被拒绝。
修改表空间ts1 ENGINE_ATTRIBUTE='{"关键”:“价值“}”;
ENGINE_ATTRIBUTE
可以无错误地重复值。在本例中,使用最后指定的值。
ENGINE_ATTRIBUTE
服务器不会检查值,也不会在表的存储引擎更改时清除值。
不允许修改JSON属性值的单个元素。只能添加或替换属性。