一、介绍
MySQL Shell是MySQL InnoDB Cluster集群的管理工具,负责管理维护整改InnoDB Cluster,MySQL Shell是MySQL Server的高级客户端和代码编辑器。除了提供的SQL功能,类似于 mysql,MySQL Shell还提供了JavaScript和Python的脚本功能,并包含用于MySQL的API。
二、环境准备
主机名 |
IP地址 |
角色 |
oratest51 |
172.16.9.51 |
primary |
oratest52 |
172.16.9.52 |
seconde |
test61 |
172.16.9.61 |
seconde |
node4 |
172.16.8.68 |
MySQL Router |
操作系统:CentOS Linux release 7.2.1511
MySQL版本:mysql-5.7.26-linux-glibc2.12-x86_64
MySQL Router版本:mysql-router-8.0.17-linux-glibc2.12-x86_64
MySQL Shell版本:mysql-shell-8.0.17-linux-glibc2.12-x86-64bit
三、MySQL Shell安装
3.1在三台MGR上分别安装MySQL Shell
# rpm -ivh mysql-shell-8.0.17-1.el7.x86_64.rpm
四、MySQL Shell常用命令
4.1常用命令
命令 |
描述 |
shell.connect('root@172.16.9.51:3306') |
连接到实例 |
var cluster = dba.getCluster() |
定义集群信息 |
cluster.status(); |
查看集群状态 |
4.2配置命令
命令 |
描述 |
dba.getCluster(); |
查看集群名 |
cluster.status(); |
查看集群状态 |
dba.checkInstanceConfiguration('root@172.16.9.52:3306') |
检查节点状态是否正常 |
dba.configureLocalInstance(); |
检查/etc/my.cnf是否正常 |
var cluster = dba.createCluster('myCluster'); |
创建一个名为myCluster的集群 |
dba.createCluster('st'); |
创建一个名字为st的集群 |
cluster.addInstance('root@oratest52:3306'); |
集群添加节点 |
4.3通用命令
命令 |
别名/快捷方式 |
描述 |
help |
h or ? |
打印有关MySQL Shell的帮助,或搜索联机帮助。 |
quit |
q or exit |
退出MySQL Shell。 |
|
|
在SQL模式下,开始多行模式。输入空行时缓存并执行代码。 |
status |
s |
显示当前的MySQL Shell状态。 |
js |
|
将执行模式切换为JavaScript。 |
py |
|
将执行模式切换为Python。 |
sql |
|
将执行模式切换为SQL。 |
connect |
c |
连接到MySQL服务器。 |
econnect |
|
重新连接到同一个MySQL服务器。 |
use |
u |
指定要使用的架构。 |
source |
. |
使用活动语言执行脚本文件。 |
warnings |
W |
显示语句生成的任何警告。 |
owarnings |
w |
不要显示语句生成的任何警告。 |
history |
|
查看和编辑命令行历史记录。 |
ehash |
|
手动更新自动完成名称缓存。 |
option |
|
查询和更改MySQL Shell配置选项。 |
show |
|
使用提供的选项和参数运行指定的报告。 |
watch |
|
使用提供的选项和参数运行指定的报告,并定期刷新结果。 |