mycat 简单实现读写分离

mycat 简单实现读写分离
mycat安装包 http://dl.mycat.org.cn/1.6.7.4/Mycat-server-1.6.7.4-release/Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz
yum install java
tar xvf Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz -C /apps/
mv mycat mycat-1.6.7.4
ln -s mycat-1.6.7.4 mycat
echo ‘PATH=/apps/mycat/bin:$PATH’ >> /etc/profile.d/mycat.sh
source /etc/profile.d/mycat.sh
配置 server.xml,设置客户端连接的用户密码,虚拟库名称(可以使用默认的)

<user name="root" defaultAccount="true">
		<property name="password">123456</property>
		<property name="schemas">TESTDB</property>
		<property name="defaultSchema">TESTDB</property>

配置schema.xml(组名dn1,映射的真实库test,balance=1为读写分离,写主机和读主机的ip和登录用户密码)

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

	<schema name="TESTDB" checkSQLschema="flase" sqlMaxLimit="100" dataNode="dn1">
	</schema>

	<dataNode name="dn1" dataHost="localhost1" database="test" />

	<dataHost name="localhost1" maxCon="1000" minCon="10" balance="1"
			  writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
		<heartbeat>select user()</heartbeat>
		<writeHost host="host1" url="172.29.9.5:3306" user="root"
				   password="123">
			<readHost host="host2" url="172.29.9.15:3306" user="root"
				   password="123"/>
		</writeHost>

		</dataHost>
</mycat:schema>

重启mycat
mycat restart
分析:打开主从库的通用日志,客户端连接mycat ,通过 select 和insert 操作查看读写操作是否分离。
当从节点故障时,主节点会处理读操作,但是主节点故障后,从节点不会承担写操作,说明承担写操作的主节点仍然存在单点问题,需要配置高可用集群的技术解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值