docker 环境下创建mysql主从复制集群

1、下载docker镜像:docker pull hub.c.163.com/library/mysql:5.6

2、配置mater节点cnf文件:

3、启动master节点

docker run --name mysql-master -v /usr/local/src/master:/etc/mysql/conf.d \

-p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d hub.c.163.com/library/mysql:5.6

4、对复制用户赋予权限,ip为从节点ip,这里通过docker将ip装在同一个节点192.168.1.119上

GRANT REPLICATION  SLAVE,  REPLICATION  CLIENT  ON  *.* TO  'repl'@'192.168.1.119'  IDENTIFIED  BY '123456';

FLUSH  PRIVILEGES;

5、主节点创建库,插入数据,模拟真实环境

CREATE DATABASE IF NOT EXISTS le  DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

USE le;

DROP TABLE IF EXISTS `users`;

CREATE TABLE `users`  (

`Id` INT(11) NOT NULL AUTO_INCREMENT,

`userName` VARCHAR(255) NOT NULL DEFAULT '' COMMENT ' 用户名',

PRIMARY KEY (`Id`)

) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='用户信息表';

INSERT INTO `users` VALUES (1,'James  Harden'),(2,'Chris Paul'),(3,'Carmelo Anthony');

6、迁移le数据库至从节点

         主节点锁表

         导出数据

         解锁

         从节点创建数据库

CREATE DATABASE IF NOT EXISTS le  DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

         从节点导入数据库

7、配置从节点主节点

         在从节点设置主节点

CHANGE  MASTER  TO  MASTER_HOST='192.168.1.119',  MASTER_USER='repl',

MASTER_PASSWORD='123456',  MASTER_PORT=3307,  MASTER_LOG_FILE='edu-mysql-bin.000004',

MASTER_LOG_POS=932,  MASTER_CONNECT_RETRY=30;     

         执行start slave命令,Slave_IO_Running、Slave_SQL_Running均为Yes则成功

8、检查数据是否同步

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值