本篇内容主要讲解“如何使用Docker实现Mariadb分库分表及读写分离功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用Docker实现Mariadb分库分表及读写分离功能”吧!本文使用docker实现mysql主从配置,读写分离、分库分表等功能。
javadocker创建mysql主节点配置文件
创建主节点配置文件docker.cnf
创建从节点配置文件 docker.conf
此处使用mariadb最新稳定镜像创建容器创建主节点myslq创建从节点mysqlstep 1 进入主节点step 2 创建用户step 3 进入从节点创建用户开启同步开启主从复制:
从节点设置日志和文件名要跟主节点信息对应,包括日志记录起始位置position检查主从复制是否ok
slave出现2个yes,代表主从复制设置成功。
下载mycat在50节点实现 香港云主机安装
修改mycat目录下 conf的server.xml 文件,指定用户名和密码
上述配置,指定以root为用户名,密码为123456,访问虚拟逻辑数据库test。配置rule规则
修改mycat conf 文件夹下的schema.xml 配置数据库对应规则上述配置scheam name 对应server配置文件的虚拟数据库,指定了2个表信息,tb_user 表主键实现自增长,有4个数据库节点,使用userrule表规则。
datanode 指定了真实对应的物理数据库节点,对应datahost说明了读写指定的用户和节点信息。配置表分片规则文件rule.xml上述文件重点关注第一个tablerule、rule指定了分片规则在哪个表字段,algorithm指定了分片的算法,其中 func1 与文件后面function名称为func1对应,此处使用了partitionbylong分片算法。conf下增加sequence_conf.properties文件,其内容如下:主要申明了主键增长的策略。
master节点手动创建4个数据库db1,db2,db3,db4 (不要操作从节点)
此时打开slave节点,会观察到slave也会自动创建4个数据库。使用命令 ./mycat start 开启mycat
./mycat start 启动
./mycat stop 停止
./mycat console 前台运行
./mycat restart 重启服务
./mycat pause 暂停
./mycat status 查看启动状态
如果启动失败,请查看 /usr/local/mycat的wrapper.log 日志文件信息。
如果遇到上述错误,请在mycat 目录创建logs 文件夹,重新启动即可。
上述消息则表示mycat启动成功。
使用docker镜像开启mycat容器实例或者关闭防火墙。
使用navicate连接mycat,端口8066(9066为管理端口)使用命令连接mycat
管理端命令:
查看虚拟逻辑库:
使用逻辑库创建表:
可以看到mycat,mysql主从都创建了该表在创建一张表:
插入一条数据:
为测试分库效果,我们插入不同id的数据来观察一下:
可以看到数据分别分布在db1/db2/db3/db4,分布的规则取决于插入数据的主键在rule.xml 设置的分片规则约束。
查看mycat节点健康状态,在主节点输入如下命令:
上述 rs_code 1代表节点正常,-1代表节点异常。
查询mycat所有命令:
遇到如下错误:修改schema.xml 文件属性checksqlschema:
遇到如下错误:
请修改server.xml 文件,将user模块的defaultaccount取消:
最后放一张mycat查询结果截图:
到此,相信大家对“如何使用Docker实现Mariadb分库分表及读写分离功能”有了更深的了解,不妨来实际操作一番吧!这里是开发云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
根据IDC的研究显示,未来的 香港云主机数字化转型经济(DX经济)对于企业业务的精准度要求非常之高,尤其是对于像数据中心领域来说,IDC更是针对当前的行业发展给出了未来发展的脉络和预测,本文笔者就和大家一起来看看。 对于企业的数字化转型来说,数据中心近…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。