为什么我的 Amazon Aurora 数据库实例处于不兼容的参数状态?

上次更新日期:2020-12-14

解决 Amazon Aurora 数据库实例处于“不兼容参数”状态的问题为什么我的数据库实例处于不兼容参数状态,我该如何解决此问题?

简短描述

当关联参数组中一个参数的值与您使用的当前引擎版本或当前数据库实例类和大小不兼容时,就会出现不兼容参数状态。

如果 Amazon Aurora for MySQL 数据库实例处于不兼容参数状态,则只能重启或删除数据库实例。您无法修改数据库实例或引擎版本。

由于以下原因,数据库实例可能处于不兼容参数状态:

  • 集群和实例参数组中的参数使用的内存总和高于数据库实例上的可用内存。
  • 数据库引擎与自定义数据库参数组中的一个或多个参数设置不兼容。
  • 数据库实例上的工作负载是内存密集型,导致内存不足 (OOM) 状态。即使内存相关参数未设置或设置为默认值,也会发生这种情况。

分辨率

注意:如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请确保您运行的是最新版本的 AWS CLI

要确定问题的根本原因,请首先 复制不兼容的参数组 。然后,比较自定义参数值和默认值之间的差异。有关更多信息,请参阅使用数据库参数组

确定问题后,使用以下方法之一解决不兼容参数状态。

重置不兼容的参数值

请按照以下步骤仅重置不兼容的参数值:

  1. 打开 Amazon Relational Database Service (Amazon RDS) 控制台,选择 Parameter groups(参数组)。
  2. 选择不兼容的参数组,然后选择Edit parameters(编辑参数)。
  3. 输入有效(较低内存使用率)参数值,然后选择 Save changes(保存更改)。
  4. 重新启动数据库实例以应用新设置。

将参数组中的所有参数重置为默认值

遵循以下步骤,使用 Amazon RDS 控制台将参数组中的所有参数重置为默认值:

  1. 打开 Amazon RDS 控制台,然后从导航窗格中选择 Parameter groups(参数组)。
  2. 选择不兼容的参数组,然后选择 Reset(重置)。

注意:通过使用 Amazon RDS 控制台完成此步骤,您可以将参数更改为任何允许的值或相关值。使用 AWS CLI 完成此步骤后,您只能将目标参数重置为默认值。

减少繁重工作负载的内存

对于内存密集型工作负载,请将缓冲池大小从默认值(内存的 75%)减至较小值,例如 DBInstanceClassMemory*5/8DBInstanceClassMemory *1/2。您可以通过修改 innodb_buffer_pool_size 参数来实现这一点。

注意:如果修改或重置了任何静态参数,请等待应用修改,然后触发数据库实例的重启。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?