Docker部署mysql5.6读写分离
本文作者:FUNKYE(陈健斌),杭州某互联网公司主程。
首先说下为什么要使用docker,因为在你没有资金买更多的服务器的时候,docker就可以让你实现一台机子进行装无数相同的程序.所以就可以在一台服务器上轻松装2个mysql,然后进行主从配置.
docker安装文章可以直接百度,https://www.cnblogs.com/rookie404/p/5965518.html
1.安装docker及对应容器
首先安装好docker直接启动,docker会自己拉去对应的mysql版本,33306:3306代表把容器里的3306映射到宿主机的3306,为了不跟宿主机原来的mysql3306冲突,所以换为33306.
1 | docker run -d -p 33306:3306 -v /home/mysql:/home --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci |
因为docker的mysql5.6安装后会有字符集的问题所以要做以下操作,进入到容器内部
1 | docker exec -it mysql /bin/bash |
)
2.进行主库配置
1 | #配置完毕后 |
)
完成后,退出容器ctrl d(确认自己是退出容器,而不是只退出了mysql),然后docker restart mysql 进行重启
1 | 接下来继续进入主库容器 |
)
3.从库配置
1 | docker exec -it mysql2 /bin/bash #进入容器 |
)
接下来重启从库容器
1 | docker restart mysql2 #重启从库容器 |
)
到这里就全部配置好了,你可以去主库进行对你设置需要同步的数据库增删改,然后去从库看看是否也变得跟主库操作后一样的结果.
之后有空会把spring boot mybatis plus+dubbo的读写分离配置写上来.