接上篇docker-compose部署mysql主从复制,本文介绍如何搭建mycat中间件
,并用mycat
来做读写分离
.
配置文件以及文档地址:mycat-rw
系统环境
- docker 1.12.3
- mysql5.7.17
- deepin 15.3桌面版(这个没啥影响,因为我们用docker)
- mycat1.6
要点说明
- 看上篇文章的详细介绍
- 暴露
mysql
mycat
端口号,方便管理 - 本文直接从
docker-compose.yml
开始
Begin
docker-compose.yml文件
为了看起来方便,咱还是一起都贴出来吧
version: '2'
services:
m1:
build: ./master
container_name: m1
volumes:
- /home/ssab/config/mysql-master/:/etc/mysql/:ro
- /etc/localtime:/etc/localtime:ro
- /home/ssab/config/hosts:/etc/hosts:ro
ports:
- "3309:3306" #暴露mysql的端口
networks:
mysql:
ipv4_address: 172.18.0.2
ulimits:
nproc: 65535
hostname: m1
mem_limit: 1024m
restart: always
environment:
MYSQL_ROOT_PASSWORD: m1test
s1:
build: ./s1
container_name: s1
volumes:
- /home/ssab/config/mysql-s1/:/etc/mysql/:ro
- /etc/localtime:/etc/localtime:ro
- /home/ssab/config/hosts:/etc/hosts:ro
ports:
- "3307:3306"
networks:
mysql:
ipv4_address: 172.18.0.3
links:
- m1
ulimits:
nproc: 65535
hostname: s1
mem_limit: 1024m
restart: always
environment:
MYSQL_ROOT_PASSWORD: s1test
s2:
build: ./s2
container_name: s2
volumes:
- /home/ssab/config/mysql-s2/:/etc/mysql/:ro
- /etc/localtime:/etc/localtime:ro
- /home/ssab/config/hosts:/etc/hosts:ro
ports:
- "3308:3306"
links:
- m1
networks:
mysql:
ipv4_address: 172.18.0.4
ulimits:
nproc: 65535
hostname: s2