ESGYNDB新版本中使用TRAFCI连接指定MXOSRVR
EsgynDB支持使用TRAFCI命令行的方式来进行任意SQL的执行和操作,TRAFCI基于JDBC,需要依赖对应版本的JDBC驱动包。trafci支持Linux版本和Windows版本。
EsgynDB是一个分布式的数据库,一般由多个节点组成,小至4节点、6节点,大至上百个节点。EsgynDB组件中的DCS连接组件,负责处理客户端到服务端的各种连接请求。
DCS包括DCSMaster、DCSServer及MXOSRVR。DCSMaster类似于监听器,用于接收客户端的请求,一般在生产环境配置多个,保证高可用,当一个主的DcsMaster失效时,另一个DcsMaster会成为主的DcsMaster。DcsServer在每个节点上均有一个,用于管理并维护当前节点上的MXOSRVR进程。MXOSRVR在每个节点上会有多个,一般根据整个系统的大并发请求数而定。MXOSRVR在每个节点上的个数是可配置的。
trafci相对于数据库服务端就是一个命令行方式的客户端工具,由于分布式的特点,trafci登录成功后,这个session具体连接到哪个节点上面的哪个MXOSRVR,这个是不确定的,它是由DcsMaster来随机分配的。不过我们可以用以下命令来查看其具体连接到哪个节点的哪个进程。
- 1
- 2
- 3
- 4
- 5
- 6
通过以下命令可以查看到当前trafci连接到sbh02节点上的进程号为24282的MXOSRVR。
在EsgynDB新版本中,支持使用trafci来连接指定节点指定端口号的MXOSRVR,使用方法如下,
- 1
上述命令表示使用trafci连接sbh02.esgyn.cn节点上端口号为23500的MXOSRVR。支持连接指定MXOSRVR的好处是方便一些问题的定位,比如验证-query cache是否正常工作。query cache的作用是同一条语句在同一个连接里面多次执行,只有次需要编译,之后编译时间会变的极短。因此我们可以利用trafci指定mxosrvr的方式来用以下语句来查看第二次连接到相同的mxosrvr时是否能查看到query cache信息。
相关文章