文档主页
适用于 VS Code 的 MySQL Shell


正式发布前:2024-07-17

5.6 AdminAPI

MySQL Shell 的 AdminAPI 包含几个类,以 JavaScript 和 Python 实现,您可以使用它们来开发与 MySQL 交互的代码。AdminAPI 还提供为 MySQL Router 配置用户的操作,以尽可能简化与 InnoDB 集群、InnoDB ClusterSet 和 InnoDB ReplicaSet 的集成。

dba 全局对象

dba 全局对象提供了一个入口点,用于创建、配置和获取 AdminAPI 中的其他 InnoDB 对象。

InnoDB 对象 管理操作
集群 dba.configureInstance() JavaScript 方法或 dba.configure_instance() Python 方法可用于使用在 InnoDB 集群中使用 MySQL 实例所需的设置来配置该实例。

可以使用 dba.createCluster() JavaScript 方法或 dba.create_cluster() Python 方法创建 InnoDB 集群。

可以使用 dba.getCluster() JavaScript 方法或 dba.get_cluster() Python 方法获取 InnoDB 集群管理对象。

ClusterSet 可以使用 cluster.createClusterSet() JavaScript 方法或 cluster.create_cluster_set() Python 方法创建 ClusterSet。

创建后,可以使用 dba.getClusterSet()cluster.getClusterSet() JavaScript 方法、dba.get_cluster_set()cluster.get_cluster_set() Python 方法获取 InnoDB ClusterSet 管理对象。

ReplicaSet dba.configureReplicaSetInstance() JavaScript 方法或 dba.configure_replica_set_instance() Python 方法可用于使用在 InnoDB ReplicaSet 中使用 MySQL 实例所需的设置来配置该实例。

可以使用 dba.createReplicaSet() JavaScript 方法或 dba.create_replica_set() Python 方法创建 InnoDB ReplicaSet。

可以使用 dba.getReplicaSet() JavaScript 方法或 dba.get_replica_set() Python 方法获取 InnoDB ReplicaSet 管理对象。

InnoDB 集群

InnoDB 集群提供了一个集成的解决方案,用于使用基于 InnoDB 的 MySQL 数据库实现高可用性和可扩展性。InnoDB 集群是使用组复制的替代解决方案,无需高级 MySQL 专业知识。

InnoDB 集群中的每个 MySQL 服务器实例都运行 MySQL 组复制,这提供了在 InnoDB 集群中复制数据的机制,并具有内置的故障转移功能。AdminAPI 无需直接使用 InnoDB 集群中的组复制。您还可以设置 InnoDB ClusterSet,通过将主 InnoDB 集群与其自身的一个或多个副本链接到备用位置(例如不同的数据中心)来为 InnoDB 集群部署提供灾难恢复能力。

有关更多信息,请参阅 InnoDB 集群

InnoDB ClusterSet

InnoDB ClusterSet 通过将主 InnoDB 集群与其自身的一个或多个副本链接到备用位置来为 MySQL InnoDB 集群部署提供灾难恢复能力。

管理员可以通过 MySQL Shell 使用 AdminAPI(包含在 MySQL Shell 中)触发 InnoDB ClusterSet 部署中的主 InnoDB 集群与其副本集群之间的紧急故障转移。您还可以执行从主集群到副本集群的受控切换,即使主集群仍然可用,例如,如果配置更改,或者您需要在主集群上进行维护。

有关更多信息,请参阅 InnoDB ClusterSet

InnoDB ReplicaSet

InnoDB ReplicaSet 使您能够管理一组运行异步全局事务 ID (GTID) 的 MySQL 实例。

一个 InnoDB ReplicaSet 由一个主节点和多个从节点组成,称为 MySQL 复制源和副本。您可以使用 ReplicaSet 对象和 AdminAPI 操作来管理您的 ReplicaSet,例如检查 InnoDB ReplicaSet 的状态,并在发生故障时手动故障转移到新的主节点。

有关更多信息,请参阅 InnoDB ReplicaSet