RDS数据库集群参数组和数据库参数组有什么区别?

What is the difference between RDS Database Cluster Parameter Group and Database Parameter Group?

根据我的理解,如果一个集群有多个实例(例如 1 个写入器和 10 个 reader),在这种情况下,如果我们想要进行任何更改,这应该反映在所有 11 个实例中,我们可以使用数据库集群参数组

如果我们希望任何特定参数只为特定实例设置,我们可以使用数据库参数组.

使用这两个组是正确的还是有特定/特定的原因?

两类参数组中的设置是互斥的。查看 AWS 文档,有几段可能有助于解释事情。

A DB parameter group acts as a container for engine configuration values that are applied to one or more DB instances. DB parameter groups apply to DB instances in both Amazon RDS and Aurora. These configuration settings apply to properties that can vary among the DB instances within an Aurora cluster, such as the sizes for memory buffers.

A DB cluster parameter group acts as a container for engine configuration values that are applied to every DB instance in an Aurora DB cluster. For example, the Aurora shared storage model requires that every DB instance in an Aurora cluster use the same setting for parameters such as innodb_file_per_table. Thus, parameters that affect the physical storage layout are part of the cluster parameter group. The DB cluster parameter group also includes default values for all the instance-level parameters

集群中的不同实例可以有不同的实例 类,例如。你可以有一个 db.m5.4xlarge 作为主实例,还有一些 db.m5.large 个实例作为只读副本。

然后您可以为主服务器指定一个 db parameter group,为由于实例大小不同而具有不同配置的副本指定另一个。

必须在所有实例中保持通用的设置(例如 innodb_file_per_table)在 db cluster parameter group 中配置,因为它们 对于所有主机都是相同的.