此语句将名为‘file_name‘的 UNDO 文件添加到现有日志文件组logfile_group中。ALTER LOGFILE GROUP语句只有一个ADD UNDOFILE子句,当前不支持DROP UNDOFILE子句。
注意
所有NDB集群磁盘数据对象共享同一命名空间。这意味着每个磁盘数据对象必须具有唯一的名称(而不仅仅是给定类型的每个磁盘数据对象)。例如,不能有同名的表空间和撤销日志文件,也不能有同名的撤销日志文件和数据文件。
可选参数INITIAL_SIZE以字节为单位设置撤销文件的初始大小;如果未指定,则初始大小默认为134217728(128MB)。可以选择在文件大小后面加上表示数量级的字母缩写,类似于my.cnf文件中的用法。通常是字母M(兆字节)或G(千兆字节)之一。
在32位系统上,INITIAL_SIZE支持的最大值为4294967296(4 GB)。
INITIAL_SIZE允许的最小值为1048576(1 MB)。
注意
WAIT被解析,但也被忽略。此关键字当前无效,用于将来的扩展。
ENGINE参数确定此日志文件组使用的存储引擎,其中 engine_name 是存储引擎的名称。目前,引擎名称的唯一可接受值是"NDBCLUSTER"和"NDB"。这两个值相等。
下面是一个示例,假设日志文件组lg_3已经使用CREATE LOGFILE GROUP创建:
当ALTER LOGFILE GROUP与ENGINE = NDBCLUSTER(或者,ENGINE = NDB)一起使用时,将在每个NDB集群数据节点上创建一个撤销日志文件。您可以验证撤销文件是否已创建,并通过查询INFORMATION_SCHEMA.FILES表来获取有关它们的信息。例如:
用于UNDO_BUFFER_SIZE的内存来自全局池,其大小由SharedGlobalMemory数据节点配置参数的值确定。这包括通过设置InitialLogFileGroup数据节点配置参数为该选项说明的任何默认值。
ALTER LOGFILE GROUP只对NDB集群磁盘数据存储有用。
ALTER PROCEDURE 语句
此语句可用于更改存储过程特性。ALTER PROCEDURE语句中可以指定多个更改。但是,不能使用此语句更改存储过程的参数或主体;要进行此类更改,必须使用DROP PROCEDURE 和 CREATE PROCEDURE来删除并重新创建该存储过程。
必须具有该存储过程的ALTER ROUTINE权限。默认情况下,该权限自动授予存储过程创建者。可以通过禁用automatic_sp_privileges系统变量来更改此行为。
ALTER SERVER 语句
为 server_name 更改服务器信息,调整CREATE SERVER语句中允许的任何选项,mysql.servers表中的字段也会相应地更新。此语句需要SUPER权限。
例如,要更新USER选项:
ALTER SERVER会导致隐式提交。
无论使用的日志格式是什么,ALTER SERVER都不会写入二进制日志。
官方文档:
https://dev.mysql.com/doc/refman/8.0/en/alter-logfile-group.html
https://dev.mysql.com/doc/refman/8.0/en/alter-procedure.html
https://dev.mysql.com/doc/refman/8.0/en/alter-server.html