Thinking in DistSQL ?
提供部分 DistSQL 的完整的使用示例以及一些小技巧,让用户能够更轻松的使用 DistSQL
语法
第一期为大家带来的是 RAL 语法 :SHOW INSTANCE LIST
语法作用
SHOW INSTANCE LIST
设计的目的是用来展示当前集群中所有的 PROXY 实例以及实例相关的信息,当然如果是非集群模式下则只展示当前实例的信息。关于不同运行模式的定义可以参考 运行模式。
使用
接下来让我们在集群模式和单机模式下实际使用一下 SHOW INSTANCE LIST
语句。
准备工作
- 连接 Proxy :目前 DistSQL 仅支持在 Proxy 上执行 因此在执行 DistSQL 之前需要先启动 Proxy 并进行连接
Proxy 启动和连接的过程可以参考 启动步骤。
- 模式配置:因为需要使用到 Proxy 不同的运行模式,关于不同的运行模式的配置可以参考 模式配置。
单机模式
完整的 Server.yaml 配置
mode:
type: Standalone
repository:
type: File
props:
path: demo/shardingsphere
overwrite: false
rules:
- !AUTHORITY
users:
- root@%:root
在启动并成功连接到 Proxy 后,通过命令行工具执行SHOW INSTANCE LIST
语句。
mysql> show instance list;
执行结果如下
+----------------+-----------+------+---------+------------+--------+
| instance_id | host | port | status | mode_type | labels |
+----------------+-----------+------+---------+------------+--------+
| 12.3.4.56@3309 | 12.3.4.56 | 3309 | enabled | Standalone | |
+----------------+-----------+------+---------+------------+--------+
因为使用单机模式启动,所有 SHOW INSTANCE LIST
语句只会展示当前实例的信息。
字段解析
-
instance_id :为实例的 id,目前由 host 和 port 组成
-
host :主机地址
-
port : 端口号
-
mode_type :实例启动的模式,包括 Standalone,Cluster 等
-
status : 实例的状态,用 enabled, disabled 分别表示启用和禁用状态,可通过
DISABLE INSTANCE
语句对实例进行修改 -
labels : 实例拥有的标签,可通过
LABEL INSTANCE
语句对标签进行新增
集群模式
完整的 server.yaml 配置如下; 此处使用 Zookeeper 作为注册中心,因此需要先启动 Zookeeper ,并将 Zookeeper 地址配置在 server-lists
字段中。
mode:
type: Cluster
repository:
type: ZooKeeper
props:
namespace: governance_ds
server-lists: localhost:2181
retryIntervalMilliseconds: 500
timeToLiveSeconds: 60
maxRetries: 3
operationTimeoutMilliseconds: 500
overwrite: true
rules:
- !AUTHORITY
users:
- root@%:root
以同样的 server.yaml 配置,启动三个 Proxy 实例,连接其中任何一个实例并执行 SHOW INSTANCE LIST
语句。
mysql> show instance list;
+----------------+-----------+------+---------+------------+--------+
| instance_id | host | port | status | mode_type | labels |
+----------------+-----------+------+---------+------------+--------+
| 12.3.4.56@3306 | 12.3.4.56 | 3306 | enabled | Cluster | |
| 12.3.4.56@3307 | 12.3.4.56 | 3307 | enabled | Cluster | |
| 12.3.4.56@3308 | 12.3.4.56 | 3308 | enabled | Cluster | |
+----------------+-----------+------+---------+------------+--------+
可以发现在查询结果中展示了当前集群中所有的 Proxy 实例信息。
以上就是 SHOW INSTANCE LIST 的使用方式。