MySQL Shell 8.4  /  MySQL InnoDB ReplicaSet  /  配置 InnoDB ReplicaSet 实例

9.2 配置 InnoDB ReplicaSet 实例

使用 dba.configureReplicaSetInstance(instance) 配置要在 ReplicaSet 中使用的每个实例。MySQL Shell 可以连接到实例然后对其进行配置,也可以传入 instance 名称以配置特定的远程实例。要在 ReplicaSet 中使用实例,它必须支持持久化设置。请参阅 第 6.2.3 节,“持久化设置”

当您连接到实例执行管理任务时,您需要具有适当权限的用户。创建用于管理 ReplicaSet 的用户的首选方法是使用 setupAdminAccount() 操作。参见。或者,如果您提供 clusterAdmin 选项,则 dba.configureReplicaSetInstance() 操作可以选择创建管理员帐户。使用管理 InnoDB ReplicaSet 所需的正确权限集创建该帐户。

重要

管理员帐户必须在同一个集群或副本集的所有实例中具有相同的用户名和密码。

要配置 rs-1:3306 上的实例,集群管理员名为 rsadmin,请发出

mysql-js> dba.configureReplicaSetInstance('root@rs-1:3306', {clusterAdmin: "'rsadmin'@'rs-1%'"});

交互式提示符请求指定用户所需的密码。要配置 MySQL Shell 当前连接到的实例,可以指定 null 实例定义。例如,发出

mysql-js> dba.configureReplicaSetInstance('', {clusterAdmin: "'rsadmin'@'rs-1%'"});

交互式提示符请求指定用户所需的密码,这会检查 MySQL Shell 当前连接到的实例是否可用于 InnoDB ReplicaSet。如果可能,将配置与 InnoDB ReplicaSet 不兼容的设置。使用 InnoDB ReplicaSet 所需的权限创建集群管理员帐户。

您可以使用 clusterAdminPasswordExpiration 选项定义密码过期时间。此选项可以设置为天数,NEVER 表示永不过期,或 DEFAULT 表示使用系统默认值。

如果您使用 SSL 证书进行身份验证,则可以使用 clusterAdminCertIssuerclusterAdminCertSubject 选项分别添加证书颁发者和主题。