通过脚本在Docker环境中一键安装master主从环境

10次阅读

共计 1341 个字符,预计需要花费 4 分钟才能阅读完成。

通过脚本在 Docker 环境中一键安装 master 主从环境

日期:2019-07-24
类别:docker
标题:通过脚本在 Docker 环境中一键安装 master 主从环境
作者:黄高明

名称 结果 备注
实测环境 mac for docker 实测通过
支持平台 Debian, Ubuntu, Fedora, CentOS and Arch Linux…Docker
git 路径 setup.sh
脚本名称 setup.sh
执行方式 /bin/bash setup.sh
是否需要传参数
是否有配置参数 有, 见下

配置参数setup.sh

其中 hostip 是必须修改的, 其他配置可以酌情修改.
注意: 如果你的 Docker 环境是通过 Docker Toolbox, 且是安装在 windows 环境, 建议将 isToolBox=1.
因为 windows 下数据目录共享可能会出现磁盘异步 io 的异常, 此时通过设置 --skip-innodb-use-native-aio 关闭异步 io 之后就会正常. 关闭异步 io 会导致性能下降, 此参数仅建议用于测试。磁盘异步 IO 介绍请参考:https://dev.mysql.com/doc/refman/5.7/en/innodb-linux-native-aio.html

mysqld 启动参数查询:mysqld --verbose --help |grep aio

logdir=/data/log/shell          #日志路径
log=$logdir/log.log            #日志文件
is_font=1              #终端是否打印日志: 1 打印 0 不打印
is_log=0               #是否记录日志: 1 记录 0 不记录
hostip="10.0.0.107"    #docker host machine 
networkName="o2o-network"       #docker 网络
dockerMaster="o2o-mysql-master" #master 名称
dockerSlave="o2o-mysql-slave"   #slave 名称
rootPass="d3eb23f714529f1e73f934876d1b39" #root 密码
replicationUser="backup"                  #复制账号
replicationPasss="04698e89512807"         #复制密码
masterPort=3307                           #master 映射后端口
isToolBox=0                               #是否 toolBox 安装 docker 环境,1 是 0 否
dockerCompose="docker-compose.yml.template" #docker-compose.yml 模板文件
memLimit="8g"               #内存限制
masterData=".\/master\/db"  #master 数据目录
slaveData=".\/slave\/db"    #slave 数据目录
waitMYSQLTime=30            #mysql 初始化后等待时间, 单位秒
waitSlaveTime=15            #mysql 主从连接初始化后等待时间, 单位秒
操作说明
  • 初始化以及一键安装
    /bin/bash setup.sh
  • 删除数据文件且停止和删除容器
    /bin/bash setup.sh clean
  • 初始化容器(build)
    /bin/bash setup.sh init
  • 初始化配置容器
    /bin/bash setup.sh config

运行截图

正文完
 0