如何在Docker 部署MyCat数据库中间件

1、前言
MyCat是目前最流行的基于Java语言编写的数据库中间件,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分库分表。配合数据库的主从模式还可实现读写分离。
MyCAT是一个彻底开源的,面向企业应用开发的“大数据库集群” 支持事务、ACID、可以替代Mysql的加强版数据库.
一个可以视为“Mysql”集群的企业级数据库,用来替代昂贵的Oracle集群
一个融合内存缓存技术、Nosql技术、HDFS大数据的新型SQL Server
结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品
一个新颖的数据库中间件产品。

2、安装

docker pull manondidi/mycat

mkdir -p /home/mycat/conf
mkdir -p /home/mycat/logs

docker run -p 8066:8066 -d --name mycat manondidi/mycat
//拷贝配置
docker cp mycat:/usr/local/mycat/conf/rule.xml /home/mycat/conf
docker cp mycat:/usr/local/mycat/conf/server.xml /home/mycat/conf
docker cp mycat:/usr/local/mycat/conf/schema.xml /home/mycat/conf

docker stop mycat
docker rm mycat

//重新执行
docker run -p 8066:8066 -d --name mycat -v /home/mycat/conf/rule.xml:/usr/local/mycat/conf/rule.xml -v /home/mycat/conf/schema.xml:/usr/local/mycat/conf/schema.xml -v /home/mycat/conf/server.xml:/usr/local/mycat/conf/server.xml -v /home/mycat/logs/:/usr/local/mycat/logs/ --privileged=true manondidi/mycat

3、配置

//server.xml 修改
<?xml version="1.0" encoding="UTF-8"?>



    
        0
        
        0
        
        1
        1
        0
        
        0
        
        300
        
        1
        
        
        (?:(s*nexts+values+fors*MYCATSEQ_(w+))(,|)|s)*)+
        false
        
        io.mycat.route.sequence.handler.HttpIncrSequenceHandler
        
        
        
        
        
        
        
        0
        
        
        
        
        
        
        
        
        0
        
        0
        
        64k
        
        1k
        0
        
        384m
        
        false
        
        
        
        
        
        false
        
        0
    
    
    
    
    
    
    
    
    
    
        123456
        TESTDB
        TESTDB
        
        
        
    
    
        123456
        TESTDB
        true
        TESTDB
    

//schema.xml
<?xml version="1.0"?>


    
        
        
        
        
select user()

在TESTDB -> sys_setting 添加/修改/删除数据
在logistics -> sys_setting 和 logistics2 -> sys_setting 也会进行同步数据

具体配置说明参考
https://blog.csdn.net/yun6713/article/details/103375066

展开阅读全文

页面更新:2024-03-13

标签:中间件   数据库   企业级   节点   集群   逻辑   规则   协议   服务器   数据

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top