Mycat高级功能测试案例

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MyCAT高级功能测试案例部署方式:后端双主双从模式的数据库模式,四个实例分别命名为M1,M2,S1,S2,(M1-S1,M2-S2,并且M1与M2互为主备)Schema.xml配置如下:dataNodename=dn1dataHost=localhost1database=db1/dataNodename=dn2dataHost=localhost1database=db2/dataNodename=dn3dataHost=localhost1database=db3/dataHostname=localhost1maxCon=500minCon=10balance=1dbType=mysqldbDriver=nativeheartbeatselectuser()/heartbeat!--canhavemultiwritehosts--writeHosthost=hostM1url=localhost:3306user=rootpassword=123456!--canhavemultireadhosts--readHosthost=hostS1url=localhost:3307user=rootpassword=123456//writeHostwriteHosthost=hostM2url=localhost:3308user=rootpassword=123456!--canhavemultireadhosts--readHosthost=hostS2url=localhost:3309user=rootpassword=123456//writeHost/dataHost心跳功能测试:案例一:所有节点正常,心跳正常。案例二:S1或S2停掉,发现检测出来心跳异常。案例二:S1或S2恢复,发现检测出来心跳正常。高可用测试:案例一:所有节点正常,此时M1负责写数据,通过执行insert或update可以看到SQL是在M1上执行。16:37:21.660DEBUG[Processor0-E3](PhysicalDBPool.java:333)-selectreadsourcehostM1fordataHost:localhost1观察数据库的日志或数据库本身的数据记录,可以验证这一点。案例二:M1停止,观测到日志中发现节点切换事件,insert或update语句此时在M2上执行。案例三:M2也停止,此时执行update或insert语句报错,而命令行执行select语句不成功,因为双主都停掉,select意义不大,mycat不对外提供select服务。读写分离测试:环境正常,M1为当前写节点。案例一:balance设置为0,此时,所有操作会在M1上。案例二:balance设置为1,此时,写操作会在M1上,读操作会在M2,S2,S1上随机分配。观察日志以及查看数据库日志(数据库日志可以临时开启),可以发现这一点。案例三:balance设置为2,此时,写操作在M1上,所有读操作会在M1,M2,S1,S2上随机分配。故障情况下的读写分离测试:案例一:balance为1,M1停止,此时,写操作会在M2上,读操作会在S2上案例二:balance为1,M1停止M2停止,此时,写操作失败,读操作也会失败。案例三:balance为2,M1停止,此时,写操作会在M2上,读操作会在S2,M2上案例四:balance为2,M1,M2停止,此时,写操作失败,读操作会也会失败。案例五:balance为1,S1停止,此时,读操作会在S2、M2上,反之若停止S2,则读操作在S1、M1上。案例六:balance为1,S1、S2都停止,则读操作在M2上。案例七:balance为2,S1停止,则读操作在M2上,M1、S2上。案例八:balance为2,S1,S2都停止,则读操作在M2上,M1上。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功