暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【ACDU翻译】 MySQL 15.12.7 在线 DDL 失败情况

原创 由迪 2022-06-09
383

联机 DDL 操作失败通常是由于以下情况之一:

  • ALGORITHM子句指定与特定类型的 DDL 操作或存储引擎不兼容的算法 。
  • 子句指定与特定类型的 DDL 操作不兼容 的LOCK低程度锁定(SHARED或)。NONE
  • 等待表上的 排他锁时发生超时,在 DDL 操作的初始和最终阶段可能会短暂需要。
  • tmpdiror 文件系统磁盘空间不足, 而innodb_tmpdirMySQL 在创建索引期间将临时排序文件写入磁盘。有关详细信息,请参阅 第 15.12.3 节,“在线 DDL 空间要求”
  • 该操作耗时较长,并发 DML 修改表过多,导致临时在线日志的大小超过 innodb_online_alter_log_max_size 配置选项的值。这种情况会导致 DB_ONLINE_LOG_TOO_BIG错误。
  • 并发 DML 对原始表定义允许的表进行更改,但新表定义不允许更改。该操作仅在最后失败,当 MySQL 尝试应用来自并发 DML 语句的所有更改时。例如,您可能会在创建唯一索引时将重复值插入到列中,或者您可能会 NULL在列上创建 主键索引时将值插入到列中。并发 DML 所做的更改优先,ALTER TABLE 操作被有效回滚
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论