Kubernetes 的 MySQL 运算符  / 第 3 章 MySQL InnoDB 集群  /  3.5 InnoDBCluster部署创建的MySQL账号

3.5 InnoDBCluster部署创建的MySQL账号

MySQL Operator for Kubernetes 创建和/或使用多个 MySQL 帐户,就像创建 InnoDB 集群时一样。仅由 MySQL Operator for Kubernetes 创建并使用的内部帐户可供用户使用,但不得更改(删除、更改密码、更改授权等)。

通常,系统管理员使用的唯一帐户是“root”用户,而其他 MySQL 用户被认为是 MySQL InnoDB Cluster 安装的内部用户。

表 3.1 MySQL 操作员创建和/或使用的 MySQL 帐户。

MySQL用户 目的 造物主 描述
root 用户的一般系统管理 用户定义的 Kubernetes MySQL Operator

secretsName在使用配置选项 引用的用户提供的 Kubernetes 秘密对象创建 InnoDB Cluster 时定义。它通常root@'%'但可以使用rootUserrootHost配置选项覆盖。

您可能希望使用此用户创建权限较低的 MySQL 帐户。

localroot Operator 用于执行本地管理任务 Kubernetes 的 MySQL 运算符 这个本地 root 帐户特定于 MySQL Operator for Kubernetes,由 MySQL sidecar 容器用于本地维护任务,例如创建其他帐户、配置实例和验证复制状态。用户不应使用或编辑它。它是使用 auth_socket 身份验证和 PROXY 创建的,具有完全权限且没有密码。
mysqladmin 操作员的管理任务 Kubernetes 的 MySQL 运算符 用于管理 InnoDB 集群,凭据由“{clustername}-privsecrets”Kubernetes 秘密管理
mysqlbackup 操作员的管理任务 Kubernetes 的 MySQL 运算符 用于创建备份和管理备份作业,凭据由“{clustername}-backup”Kubernetes 秘密管理
mysqlrouter 操作员的管理任务 Kubernetes 的 MySQL 运算符 任务包括管理 MySQL Router 实例以访问集群元数据;由“{clustername}-router”Kubernetes 秘密管理的凭据
mysqlhealthchecker 内部健康检查 Kubernetes 的 MySQL 运算符 仅用于健康检查的本地帐户(活性和就绪探测);使用 auth_socket 身份验证创建,没有特权。
mysql_innodb_cluster_{server_id} 启用集群中服务器之间连接的内部恢复用户 MySQL InnoDB 集群 每个 MySQL 实例一个,有关其他信息,请参阅 InnoDB Cluster 创建的内部用户帐户
mysql.infoschema 预订的 MySQL服务器 请参阅保留帐户
mysql.session 预订的 MySQL服务器 请参阅保留帐户
mysql.sys 预订的 MySQL服务器 请参阅保留帐户

相关:为 Kubernetes 部署 MySQL Operator 创建一个 Kubernetes 服务帐户,其名称默认为 mysql-operator-sa捆绑 deploy-operator.yaml和 Helm 部署模板中的名称。

有关 MySQL 服务使用的所有端口的列表,请参阅 MySQL 端口参考