• docker pull mysql:5.7

  • 创建目录/mydata/mysql/log /mydata/mysql/conf /mydata/mysql/data
  • docker run -itd --name mysql-back -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql  mysql:5.7
  • docker exec -it '容器ID' bash 进入容器

主数据库

#my.cnf配置编码和忽略大小写
character_set_server=utf8
init_connect='SET NAMES utf8'
# Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0
lower_case_table_names=1

my.cnf添加

server-id=1 # 服务器唯一id 保证唯一,不能重复(一般为ip最后一段)
log-bin=mysql-bin # 启用二进制日志,MySOL的bin-log的名字
binlog-do-db=mydb # 指定需要同步的数据库

重启mysql

service mysqld restart

在MySQL主上创建用于备份账号

CREATE USER 'resp'@'%' IDENTIFIED BY 'repl123456';

GRANT REPLICATION SLAVE ON *.* TO 'resp'@'%';

MySQL主上,查看bin-log的文件名和位置并记录(resp_mysql.000001 |      605 )

SHOW MASTER STATUS;

编辑MySQL从数据库上的my.cnf

注:docker映射目录创建mysql默认没有配置文件,需要自己创建,目录 /mydata/mysql/conf。也可以先临时创建一个mysql容器,把配置文件cp出来,删除容器后再重新创建挂载。

vi /mydata/mysql/conf/my.cnf
character_set_server=utf8
init_connect='SET NAMES utf8'
lower_case_table_names=1
server-id=2

执行SQL
change master to master_host='ip',master_user='resp',master_password='repl123456',master_port=13306,master_log_file='resp_mysql.000001',master_log_pos=286944;

master host:MySQL主的地址
master_user:备份的用户名
master_password:备份的用户密码
master_log_file:bin-log的文件名
master_log_pos:bin-log的位置

MySOL从上开启同步(如果主数据库之前已有数据,先备份还原到从数据库)

START SLAVE;

查看状态

show slave status

主服务器防火墙端口需要开放从数据库的IP地址,从服务器无需开启。

#修改mysql密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; #给所有权限
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456"; 

最新文章

  1. AutoMagic
  2. python基础-PyCharm设置作者信息模板_修改解释器_设置软件UTF-8编码
  3. MVC5 + EF6 + Bootstrap3 (11) 排序、搜索、分页
  4. 用 eric6 与 PyQt5 实现python的极速GUI编程(系列03)---- Drawing(绘图)(1)-- 绘写文字
  5. 通过javascript完成分页查询功能
  6. 规范化ProjectEuler
  7. C#对XML、JSON等格式的解析
  8. DCI
  9. js比较两个日期大小
  10. Visual Studio 2017无法加载Visual Studio 2015创建的SharePoint解决方案
  11. spark集群搭建整理之解决亿级人群标签问题
  12. 项目中的Git七步精髓
  13. Spring源码学习-容器BeanFactory(四) BeanDefinition的创建-自定义标签的解析.md
  14. CAS工程用redis集群存储票据ticket Spring整合
  15. LGOJ P2921 [USACO08DEC]在农场万圣节Trick or Treat on the Farm
  16. python摸爬滚打之day21---- 模块
  17. STM32 定时器级联
  18. 调查显示数据分析已取代Web开发成为第一用例
  19. POJ-1160 Post Office (DP+四边形不等式优化)
  20. Linux系统优势六大方面

热门文章

  1. 【uniapp 开发】如何给边框添加阴影效果
  2. XUtils 开发框架
  3. Python找出列表中的最大数和最小数
  4. YC-Framework版本更新:V1.0.6
  5. C++篇:第四章_函数_知识点大全
  6. 搜索与图论①-深度优先搜索(DFS)
  7. Vue Router的简单了解
  8. Java web与web gis学习笔记(一)——Tomcat环境搭建
  9. 攻防世界-MISC:pure_color
  10. 【PyTorch】常用的神经网络层汇总(持续补充更新)