10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载 本手册节选

13.1.10 ALTER TABLESPACE语句

改变(撤销)表空间tablespace_nameNDB只有:{add | drop} datafile 'file_name' [INITIAL_SIZE [=] size] [WAIT]InnoDB NDB:(重命名tablespace_nameInnoDB只有:[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引入了对通用表空间的加密支持。的加密支持mysqlsystem表空间在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_ATTRIBUTEoption(在MySQL 8.0.21中可用)用于为主存储引擎指定表空间属性。该选项保留供将来使用。

允许的值是一个字符串字面值,包含一个有效的JSON文档或空字符串(")。无效的JSON将被拒绝。

修改表空间ts1 ENGINE_ATTRIBUTE='{"关键”:“价值“}”;

ENGINE_ATTRIBUTE可以无错误地重复值。在本例中,使用最后指定的值。

ENGINE_ATTRIBUTE服务器不会检查值,也不会在表的存储引擎更改时清除值。

不允许修改JSON属性值的单个元素。只能添加或替换属性。