参考地址:https://www.cnblogs.com/jinjiangongzuoshi/p/9299275.html

1.下载镜像

docker pull mysql:5.7.19

2.建立配用文件

--mysql
  --master
    --data
    --conf
      --my.cnf
  --slave
    --data
    --conf
      --my.cnf

3.master配置文件

[mysqld]
server_id = 1

log-bin= mysql-bin

read-only=0

replicate-ignore-db=mysql

replicate-ignore-db=sys

replicate-ignore-db=information_schema

replicate-ignore-db=performance_schema

!includedir /etc/mysql/conf.d/

!includedir /etc/mysql/mysql.conf.d/

4.slave配置文件

[mysqld]
server_id = 2

log-bin= mysql-bin

read-only=1

replicate-ignore-db=mysql

replicate-ignore-db=sys

replicate-ignore-db=information_schema

replicate-ignore-db=performance_schema

!includedir /etc/mysql/conf.d/

!includedir /etc/mysql/mysql.conf.d/

5. 启动服务

主服务

docker run --name mastermysql  -d -p 3307:3306 -eMYSQL_ROOT_PASSWORD=123456 ~/docker/mysql-master/data:/var/lib/mysql -v ~/docker/mysql-master/conf/my.cnf:/etc/mysql/my.cnf  3e3878acd190

从服务

docker run --name slavemysql  -d -p 3308:3306 -eMYSQL_ROOT_PASSWORD=123456 -v  ~/docker/mysql-slave/data:/var/lib/mysql -v ~/docker/mysql-slave/conf/my.cnf:/etc/mysql/my.cnf  imageid

6.进入容器

主服务

  docker exec -it mastermysql bash

  mysql -u root -p

  //查看状态,记住File、Position的值,在Slave中将用到

  show master status/G;

从服务 //进入slaver容器

  docker exec -it slavemysql bash

//启动mysql命令,刚在创建窗口时我们把密码设置为:root
mysql -u root -p
//设置主库链接master_log_file(主服务File)master_log_pos(主服务Position)
change master to master_host='172.17.0.2',master_user='slave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=0,master_port=3306; //启动从库同步 start slave; //查看状态 show slave status\G;
//启动从库同步
start slave;
//查看状态
show slave status\G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

mysql --help |grep 'my.cnf'

chmod 664 /etc/my.cnf

最新文章

  1. SVN提交代码的规范
  2. vs2013 无法打开 源 文件 "SDKDDKVer.h"
  3. [开源ORM] SqliteSugar 3.x .net Core版本成功上线
  4. 获取程序的SHA1值
  5. css浮动与绝对定位小记
  6. sprintf()函数,把数字转换成字符串
  7. 学习ASP.NET MVC(七)——我的第一个ASP.NET MVC 查询页面
  8. face mask in opencv
  9. COM/ATL 资料收集
  10. hdu 4144 状态压缩dp
  11. 使用SharePoint 2010的母版页
  12. CAS SSO对手机应用支持的一种思路
  13. Android WebView Error – Uncaught TypeError: Cannot call method ‘getItem’ of null at
  14. 关于document.selection和TextRange对象的介绍
  15. 网站压力测试之ApacheBench
  16. NET 平台下的插件化开发内核
  17. angular指令笔记(一):ng-options
  18. Request和Response的格式
  19. maya cmds pymel selectType() 选择类型切换
  20. 2018-2019-1 20189201 《LInux内核原理与分析》第八周作业

热门文章

  1. 重启报错:Failed to open /dev/initctl: No such device or address
  2. linux强制将数据写入磁盘,防止丢失内存的数据
  3. Android:四大架构的优缺点,你真的了解吗?
  4. Confluence 6 临时目录(安装目录)
  5. Linux超级守护进程——xinetd
  6. ionic3 点击输入 框弹出白色遮罩 并把 界面顶到上面
  7. 2017-2018-2 20165314 实验三《 敏捷开发与XP实践》实验报告
  8. oracle 备份脚本
  9. 饮冰三年-人工智能-Python-13Python基础之运算符与数据类型
  10. 步步为营-90-SEO(url重写+超链接技巧)