《MysqL教程MysqL 5.7 docker 主从复制架构搭建教程》要点:
本文介绍了MysqL教程MysqL 5.7 docker 主从复制架构搭建教程,希望对您有用。如果有疑问,可以联系我们。
MysqL实例分享MysqL 5.7 docker 主从复制架构搭建教程,供大家参考,具体内容如下
MysqL实例环境版本:
MysqL : 5.7.13
Docker : 1.11.2
CentOS : 7.1
MysqL实例1.先在两个物理机上分别安装两个MysqL.命令如下
docker run --name anuo-MysqL -p 3306:3306 -e MysqL_ROOT_PASSWORD=qaz.00JK -d MysqL:5.7.13
MysqL实例2.在主库上创建一个复制账户
复制账户为: rep1
指定从库的IP必须为: 192.168.2.103
复制密码为: qaz.00JK
MysqL实例3.修改主库的配置文件 (麻烦,应该有更方便的修改方式)
MysqL实例3.1先从docker拷贝配置文件到主机/root 目录:
MysqL实例docker cp anuo-MysqL:/etc/MysqL/my.cnf /root
MysqL实例3.2在主机打开 my.cnf,在 [MysqLd] 节点最后加上
MysqL实例log-bin=MysqL-bin
server-id=1
MysqL实例3.3 再把此文件上传到docker MysqL 里面覆盖
MysqL实例docker cp /root/my.cnf anuo-MysqL:/etc/MysqL/my.cnf
MysqL实例3.4 重启 MysqL 的docker,让配置生效
docker restart anuo-MysqL
MysqL实例跟第三步一样,唯一不同是
server-id=2
MysqL实例5. 开始备份,在主库执行以下命令,让主库所有表置于只读不能写的状态,这样达到主从库数据一致性
MysqL实例FLUSH TABLES WITH READ LOCK;
MysqL实例用navicat for MysqL 很方便操作
MysqL实例7. 从库还原后,释放主库的读锁,这样主库恢复写权限
MysqL实例unlock tables;
MysqL实例8.配置从库连接主库,在从库上执行
MysqL实例 CHANGE MASTER TO MASTER_HOST='192.168.2.108',MASTER_PORT=3306,MASTER_USER='rep1',MASTER_PASSWORD='qaz.00JK',MASTER_LOG_FILE='MysqL-bin.000002',MASTER_LOG_POS=898;
MysqL实例最后两项
MASTER_LOG_FILE 和 MASTER_LOG_POS
在主库执行 : SHOW MASTER STATUS; 命令可以取得
对应的字段是 File 和 Position
MysqL实例9. 在从库启动 slave 线程开始同步
START SLAVE;
MysqL实例10.在从库 查看同步状态
show slave status;
如果看到 Slave_Io_State 字段有 :
MysqL实例Waiting for master to send event ...
那就成功了 ! ! !