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来随机分配的。不过我们可以用以下命令来查看其具体连接到哪个节点的哪个进程。

SQL>show remoteprocess;

REMOTE PROCESS \sbh02.esgyn.cn:0.$Z0000000QPT

[trafodion@sbh02 ~]$ sqps | grep mxo | grep QPT
[$Z0000000L2P] 000,00024282 001 GEN  ES--A-- $Z0000000QPT NONE         mxosrvr 

通过以下命令可以查看到当前trafci连接到sbh02节点上的进程号为24282的MXOSRVR。
在EsgynDB新版本中,支持使用trafci来连接指定节点指定端口号的MXOSRVR,使用方法如下,

java -Xmx128m -Dt4jdbc.specifiedServer=sbh02.esgyn.cn:23500 -Djline=no -classpath :/opt/trafodion/esgyndb/trafci/lib/jdbcT4-2.7.0.jar:/opt/trafodion/esgyndb/trafci/lib/jline-2.12.jar:/opt/trafodion/esgyndb/trafci/lib/trafci.jar org.trafodion.ci.UserInterface -r '' -h sbh02.esgyn.cn:23400 -u trafodion -p traf123 -s show_sessionid.sql > show_sessionid.log 

上述命令表示使用trafci连接sbh02.esgyn.cn节点上端口号为23500的MXOSRVR。支持连接指定MXOSRVR的好处是方便一些问题的定位,比如验证query cache是否正常工作。query cache的作用是同一条语句在同一个连接里面多次执行,只有第一次需要编译,之后编译时间会变的极短。因此我们可以利用trafci指定mxosrvr的方式来用以下语句来查看第二次连接到相同的mxosrvr时是否能查看到query cache信息。

select * from table(querycache('user','local'));
select * from table(querycacheentries('user','local'));
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据源的港湾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值