我想在 Amazon Relational Database Service (Amazon RDS) for MariaDB 或 MySQL 数据库实例只读副本中执行读取和写入操作。我该如何操作?
简短描述
Amazon RDS 数据库实例只读副本设计为只读模式。在某些情况下,您可能需要配置数据库实例只读副本才能修改副本。
解决方法
如果您使用 Amazon RDS for MySQL 或 MariaDB,请将数据库实例只读副本配置为可读取/写入。为此,您可以将与数据库实例关联的数据库参数组的 read_only 参数设置为 false。如果使用其他 Amazon RDS 引擎(例如 Amazon Aurora),则无法修改 read_only 参数。
**注意:**当您在副本上启用写入功能时,备份、恢复和失效转移等自动化不会受到影响。但是,如果您在不了解写入影响的情况下执行写入,则可能导致不一致或复制失败。
要将您的 Amazon RDS 数据库实例只读副本配置为可读取/写入,请按照以下步骤操作:
- 为您的 MySQL 或 MariaDB 实例创建数据库参数组。
- 修改参数组。
- 将您的 RDS 数据库实例与数据库参数组关联。
注意: 如果您在未指定数据库参数组的情况下创建数据库实例,系统会自动创建默认的数据库参数组。这意味着无法修改默认参数组。如果您已经有与该实例关联的自定义参数组,则无需创建新的参数组。有关数据库参数组的详细信息,请参阅使用参数组。
创建数据库参数组
- 打开 Aurora 和 RDS 控制台。
- 在导航窗格的 Parameter groups(参数组)中,选择 Create parameter group(创建参数组)。
- 对于 Parameter group family(参数组系列),选择参数组系列。
- 对于 Type(类型),选择 DB Parameter Group(数据库参数组)。
- 对于 Group name(组名),输入新数据库参数组的名称。
- 对于 Description(描述),输入新数据库参数组的描述。
- 选择 Create(创建)。
修改参数组
- 打开 Aurora 和 RDS 控制台。
- 在导航窗格中的 Parameter groups(参数组)中,选择要修改的参数组。
- 选择 Parameter group actions(参数组操作),然后选择 Edit(编辑)。
- 编辑以下参数:read_only = 0
- 选择 Save changes(保存更改)。
将您的 RDS 数据库实例与数据库参数组关联
- 打开 Aurora 和 RDS 控制台。
- 在导航窗格中的 Databases(数据库)中,选择要与修改后的数据库参数组关联的数据库实例。
- 选择 Modify(修改)。
**注意:**实例状态为“正在修改”,参数组状态为“正在应用”。
- 对于 Database options(数据库选项)部分,选择要与数据库实例关联的参数组。
- 在实例状态为“可用”且参数组处于“等待重启”后,即可在未进行失效转移的情况下重启实例。
注意: 参数组名称会立即更改,但要等到在未进行失效转移的情况下重启实例后,对参数所做的更改才会生效。
相关信息
Amazon RDS 只读副本概述
如何修改 Amazon RDS 数据库参数组中的值?