AdminAPI 由 MySQL Shell 提供。可以通过 dba
全局变量及其关联方法访问 AdminAPI。dba
变量的方法提供了使您能够部署、配置和管理 InnoDB 集群、InnoDB 集群集和 InnoDB 副本集的操作。例如,使用 dba.createCluster()
方法创建 InnoDB 集群。此外,AdminAPI 还支持管理一些与 MySQL Router 相关的任务,例如创建或升级可与 InnoDB 集群、InnoDB 集群集和 InnoDB 副本集一起使用的用户帐户。
AdminAPI 支持以下部署方案
生产环境部署: 如果要使用完整的生产环境,则需要配置所需数量的机器,然后将服务器实例部署到这些机器。
-
沙箱部署: 如果您想在提交到完整的生产环境部署之前测试部署,则提供的沙箱功能使您能够在本地机器上设置测试环境。将使用所需的配置为您创建沙箱服务器实例。您可以进行实验以熟悉所采用的技术。
重要AdminAPI 沙箱部署不适用于完整的生产环境。
除了原生 SQL 模式之外,MySQL Shell 还提供两种语言模式:JavaScript 和 Python。在本指南中,MySQL Shell 主要在 JavaScript 模式下使用。MySQL Shell 启动时默认处于 JavaScript 模式。通过发出 \js
命令进入 JavaScript 模式,发出 \py
命令进入 Python 模式。通过发出 \js
命令确保您处于 JavaScript 模式。
MySQL Shell 使您能够通过套接字连接连接到服务器,但 AdminAPI 需要与服务器实例建立 TCP 连接。AdminAPI 不支持基于套接字的连接。
本节假定您熟悉 MySQL Shell;有关更多信息,请参阅 MySQL Shell 8.4.0。MySQL Shell 还为 AdminAPI 提供在线帮助。要列出所有可用的 dba
命令,请使用 dba.help()
方法。要获取有关特定方法的在线帮助,请使用常规格式 object.help('methodname')
。例如,使用 JavaScript
mysql-js> dba.help('getCluster')
Retrieves a cluster from the Metadata Store.
SYNTAX
dba.getCluster([name][, options])
WHERE
name: Parameter to specify the name of the cluster to be returned.
options: Dictionary with additional options.
...
或者使用 Python
mysql-py>dba.help('get_cluster')
NAME
get_cluster - Retrieves a cluster from the Metadata Store.
SYNTAX
dba.get_cluster([name][, options])
WHERE
name: Parameter to specify the name of the cluster to be returned.
options: Dictionary with additional options.
...
除了本文档之外,MySQL Shell JavaScript API 参考或 MySQL Shell Python API 参考中还提供了所有 AdminAPI 方法的开发者文档,可从 连接器和 API 获取。