【问题标题】:Converting AWS RDS Databases to InnoDB, does database "mysql" need to be converted?将 AWS RDS 数据库转换为 InnoDB,数据库“mysql”是否需要转换?
【发布时间】:2015-10-18 17:32:12
【问题描述】:

出于显而易见的原因,我将所有 RDS 数据库转换为 InnoDB。但是,我仍然收到通知,并非我的所有数据库都在使用 InnoDB。 唯一不是 InnoDB 的表属于 information_schema 和名为“mysql”的模式。我没有转换这些表,因为我担心它会破坏数据库。

不要将mysql数据库中的mysql系统表(如user或host)转换为InnoDB类型。这是不受支持的操作。系统表必须始终是 MyISAM 类型。

我可以转换名为mysql的数据库吗?这是我从 AWS 收到的消息。

此数据库实例还包含尚未被 迁移到 InnoDB。这些表格会影响您的执行能力 时间点恢复。考虑将这些表转换为 InnoDB。

【问题讨论】:

  • AWS 消息错误。数据库mysql中几乎所有的表都必须是MyISAM。
  • 同意@akuzminsky,不要修改mysql模式中的表。但请确认SELECT * FROM information_schema.tables WHERE ENGINE='MyISAM' AND table_schema != 'mysql'; 不会返回您忽略的任何表。
  • 是的,我已经确认没有任何遗漏。我还重新启动了数据库。我将创建一个 AWS 票证。

标签: mysql innodb myisam rds


【解决方案1】:

不要不要触摸数据库mysqlperformance_schemasyssys_schema 中的表(如果它们存在)。

这里列出了引擎转换中的一些微妙问题: http://mysql.rjweb.org/doc.php/myisam2innodb

【讨论】:

  • information_schema 数据库中的 MyISAM 表怎么样?
  • @Rockallite - 触摸它们我也不会感到安全。在升级期间,这些表(等)可能会发生变化。如果您以任何方式与他们胡闹,它可能会破坏升级。
猜你喜欢
  • 2012-04-15
  • 1970-01-01
  • 2019-03-08
  • 1970-01-01
  • 1970-01-01
  • 2012-05-04
  • 2011-02-01
  • 2010-09-11
  • 2012-06-19
相关资源
最近更新 更多