MySQL 外壳 8.0

抽象的

MySQL Shell 是 MySQL 的高级客户端和代码编辑器。本文档描述了 MySQL Shell 的核心特性。除了提供的 SQL 功能外,类似于 mysql,MySQL Shell 还为 JavaScript 和 Python 提供脚本功能,并包括用于与 MySQL 一起工作的 API。X DevAPI 使您能够处理关系数据和文档数据,请参阅 使用 MySQL 作为文档存储。AdminAPI 使您能够使用 InnoDB Cluster、InnoDB ClusterSet 和 InnoDB ReplicaSet。

强烈建议将 MySQL Shell 8.0 与 MySQL Server 8.0 和 5.7 一起使用。请升级到 MySQL Shell 8.0。如果您还没有安装 MySQL Shell,请从 下载站点下载它。

有关详细说明每个版本中更改的注释,请参阅 MySQL Shell 发行说明

如需有关使用 MySQL 的帮助,请访问 MySQL 论坛,您可以在其中与其他 MySQL 用户讨论您的问题。

许可信息。  本产品可能包含第三方软件,在许可下使用。如果您使用的是 MySQL Shell 的商业 版本,请参阅 MySQL Shell 商业许可信息用户手册以获取许可信息,包括与此商业版本中可能包含的第三方软件相关的许可信息。如果您使用的是 MySQL Shell 的社区版本,请参阅 MySQL Shell 社区许可信息用户手册用于许可信息,包括与可能包含在此社区版本中的第三方软件相关的许可信息。

文档生成于:2022-11-17(修订:74548)

目录

1 MySQL Shell 特性
2 安装MySQL外壳
2.1 在 Microsoft Windows 上安装 MySQL Shell
2.2 在 Linux 上安装 MySQL Shell
2.3 在 macOS 上安装 MySQL Shell
3 使用 MySQL Shell 命令
3.1 MySQL Shell 命令
4 MySQL Shell 入门
4.1 启动MySQL Shell
4.2 MySQL Shell 会话
4.2.1Session启动 MySQL Shell 时创建全局对象
4.2.2Session启动MySQL Shell后创建全局对象
4.2.3 JavaScript 和 Python 模式下的脚本会话
4.3 MySQL Shell 连接
4.3.1 使用个别参数连接
4.3.2 使用 Unix 套接字和 Windows 命名管道连接
4.3.3 使用加密连接
4.3.4 使用 LDAP 和 Kerberos 身份验证
4.3.5 使用 SSH 隧道
4.3.6 使用压缩连接
4.4 可插拔密码存储
4.4.1 可插入密码配置选项
4.4.2 使用凭证
4.5 MySQL Shell 全局对象
4.6 使用寻呼机
4.7 云服务配置
5 MySQL Shell 代码执行
5.1 活动语言
5.2 交互式代码执行
5.3 代码自动完成
5.4 编辑代码
5.5 代码历史
5.6 批处理代码执行
5.7 输出格式
5.7.1 表格格式
5.7.2 制表符分隔格式
5.7.3 垂直格式
5.7.4 JSON格式输出
5.7.5 JSON 包装
5.7.6 结果元数据
5.8 API 命令行集成
5.8.1 命令行集成概述
5.8.2 命令行集成细节
5.9 JSON 集成
6 MySQL 管理API
6.1 使用 MySQL AdminAPI
6.2 安装 AdminAPI 软件组件
6.2.1 使用运行MySQL 5.7的实例
6.2.2 配置主机名
6.2.3 连接到服务器实例
6.2.4 持久设置
6.3 检索处理程序对象
6.4 为 AdminAPI 创建用户帐户
6.5 详细日志记录
6.6 寻找主
6.7 编写 AdminAPI 脚本
6.8 AdminAPI MySQL 沙箱
6.8.1 部署沙盒实例
6.8.2 管理沙盒实例
6.8.3 设置 InnoDB Cluster 和 MySQL Router
6.9 标记元数据
6.10 将 MySQL Router 与 AdminAPI、InnoDB Cluster 和 InnoDB ReplicaSet 一起使用
6.10.1 引导 MySQL 路由器
6.10.2 配置MySQL Router用户
6.10.3 部署MySQL路由器
6.10.4 将副本集与 MySQL 路由器一起使用
6.10.5 测试InnoDB集群高可用
6.10.6 使用集群的路由器
6.11 升级元数据模式
7 MySQL InnoDB集群
7.1 InnoDB 集群要求
7.2 InnoDB 集群限制
7.3 InnoDB Cluster 的用户帐户
7.4 部署生产 InnoDB 集群
7.4.1 InnoDB集群使用预检实例配置
7.4.2 为 InnoDB 集群使用配置生产实例
7.4.3 创建 InnoDB 集群
7.4.4 向 InnoDB 集群添加实例
7.4.5 配置 InnoDB 集群端口
7.4.6 将 MySQL 克隆与 InnoDB 集群一起使用
7.4.7 采用组复制部署
7.5 配置InnoDB集群
7.5.1 InnoDB Cluster 的设置选项
7.5.2 自定义 InnoDB Cluster 成员服务器
7.5.3 配置选举过程
7.5.4 配置故障转移一致性
7.5.5 配置实例自动重新加入
7.5.6 配置并行复制Applier
7.5.7 InnoDB集群与自增
7.5.8 InnoDB Cluster 和二进制日志清除
7.5.9 配置组复制通信栈
7.6 保护 InnoDB 集群
7.7 监控InnoDB集群
7.8 恢复和重启 InnoDB 集群
7.8.1 实例重新加入集群
7.8.2 从仲裁丢失中恢复集群
7.8.3 从主要中断中重启集群
7.8.4 重新扫描集群
7.8.5 隔离集群
7.9 修改或解散 InnoDB 集群
7.10 升级InnoDB集群
7.10.1 InnoDB集群升级
7.10.2 InnoDB 集群升级故障排除
8 MySQL InnoDB集群集
8.1 InnoDB ClusterSet 要求
8.2 InnoDB ClusterSet 限制
8.3 InnoDB ClusterSet 的用户帐户
8.4 部署 InnoDB ClusterSet
8.5 将 MySQL Router 与 InnoDB ClusterSet 集成
8.6 InnoDB ClusterSet状态和拓扑
8.7 InnoDB ClusterSet控制切换
8.8 InnoDB ClusterSet 紧急故障转移
8.9 InnoDB ClusterSet修复和重新加入
8.9.1 InnoDB ClusterSet 中的 Fencing 集群
8.9.2 InnoDB ClusterSet 集群中的不一致事务集(GTID 集)
8.9.3 修复InnoDB ClusterSet中的成员服务器和集群
8.9.4 从 InnoDB ClusterSet 中删除一个 Cluster
8.9.5 将集群重新加入到 InnoDB ClusterSet
8.10 升级InnoDB ClusterSet
9 MySQL InnoDB 副本集
9.1 部署 InnoDB 副本集
9.2 配置InnoDB ReplicaSet实例
9.3 创建 InnoDB 副本集
9.4 添加实例到 ReplicaSet
9.4.1 为 InnoDB ReplicaSet 提供实例
9.4.2 向ReplicaSet添加实例示例
9.5 采用现有的复制设置
9.6 更改主实例
9.7 强制一个新的主实例
9.8 InnoDB 副本集锁定
9.9 标记副本集
9.10 检查InnoDB ReplicaSet状态
9.11 升级InnoDB ReplicaSet
10 扩展 MySQL Shell
10.1 使用 MySQL Shell 报告
10.1.1 创建 MySQL Shell 报告
10.1.2 注册 MySQL Shell 报告
10.1.3 持久化 MySQL Shell 报告
10.1.4 MySQL Shell 报告示例
10.1.5 运行 MySQL Shell 报告
10.1.6 内置 MySQL Shell 报告
10.2 向 MySQL Shell 添加扩展对象
10.2.1 创建用户定义的 MySQL Shell 全局对象
10.2.2 创建扩展对象
10.2.3 持久化扩展对象
10.2.4 示例 MySQL Shell 扩展对象
10.3 MySQL Shell 插件
10.3.1 创建 MySQL Shell 插件
10.3.2 创建插件组
10.3.3 MySQL Shell 插件示例
11 MySQL Shell 实用程序
11.1 升级检查器实用程序
11.2 JSON 导入实用程序
11.2.1 运行实用程序
11.2.2 Mysqlsh命令接口导入JSON文件
11.2.3 使用--import命令导入JSON文档
11.2.4 BSON 数据类型表示的转换
11.3 表导出实用程序
11.4 并行表导入实用程序
11.5 实例转储实用程序、模式转储实用程序和表转储实用程序
11.6 转储加载实用程序
11.7 诊断实用程序
11.7.1 collectDiagnostics 实用程序
11.7.2 collectHighLoadDiagnostics 实用程序
11.7.3 collectSlowQueryDiagnostics 实用程序
12 MySQL Shell 日志记录和调试
12.1 应用日志
12.2 详细输出
12.3 用户 SQL 语句的系统日志记录
12.4 MySQL Shell SQL 日志记录
12.5 记录 AdminAPI 操作
13 自定义 MySQL Shell
13.1 使用启动脚本
13.2 添加模块搜索路径
13.2.1 模块搜索路径环境变量
13.2.2 启动脚本中的模块搜索路径变量
13.3 自定义提示
13.4 配置 MySQL Shell 选项
MySQL Shell 命令参考
A.1 mysqlsh — MySQL Shell