1.环境centos7.5  docker

2.下载docker 版本的mysql 启动容器

docker run --name mysql_master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql:latest

docker run --name mysql_slave -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql:latest

3.docker ps 进入容器改my.cnf

master:

server_id=5
binlog_ignore_db=mysql
log_bin=master5
binlog_format=mixed

slave:

server_id=5
binlog_ignore_db=mysql
log_bin=slave6
binlog_format=mixed

4.ctrl + p + q 退出容器  执行重启:

docker  f18ebe8a7546 restart

docker  981e5ff53e4d restart

5.主库执行

create user slave@"%" identified by "123qqq...A";
ALTER USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY '123qqq...A';

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123qqq...A';

grant replication slave on *.* to slave@"%"; 

reset master;

show master status

从库执行

change master to master_host='172.17.0.5', master_user='slave', master_password='123456', master_port=3306, master_log_file='master5.000001', master_log_pos=155;

start slave;

show slave status\G;

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

6.验证数据库是否同步

在宿主机登录(root用户)其中主mysql执行创建库表的命令,在从上查看是否有新数据产生。

7.备份操作全备

mysqldump -Uroot -p密码 -A > all.sql

还原容器里的数据到新的数据库

docker cp f18ebe8a7546:/all.sql ./   移动·容器内的sql文件到宿主机 ,在复制到新的服务器执行:

mysqldump -Uroot -p密码 < all.sql   或者进入数据库执行  source   /root/all.sql

docker (mysql 8.+ )主从同步的更多相关文章

  1. Docker Mysql数据库主从同步配置方法

    一.背景 最近在做内部平台架构上的部署调整,顺便玩了一下数据库的主从同步,特此记录一下操作- 二.具体操作 1.先建立数据存放目录(-/test/mysql_test/) --mysql --mast ...

  2. mysql数据库主从同步

    环境: Mater:   CentOS7.1  5.5.52-MariaDB  192.168.108.133 Slave:   CentOS7.1  5.5.52-MariaDB  192.168. ...

  3. 【转】MySQL数据库主从同步管理

    MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重要,新手往往在出现主从同步错误的时候不知道如何入手,这篇文章就是根据自己的经验来详细叙 ...

  4. MySQL数据库主从同步安装与配置总结

    MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力: ②在从主服务器进行备份,避免备份期间影响主服务器服务: ③当主服务器出现问题时 ...

  5. MYSQL配置主从同步

    MYSQL配置主从同步 mysql主服务器配置 vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql. ...

  6. mysql数据库主从同步读写分离(一)主从同步

    1.mysql数据库主从同步读写分离 1.1.主要解决的生产问题 1.2.原理 a.为什么需要读写分离? 一台服务器满足不了访问需要.数据的访问基本都是2-8原则. b.怎么做?  不往从服务器去写了 ...

  7. mysql 之 主从同步(单向同步和双向同步)

    一. 实验环境部署 主服务器(MySQL-01) IP: 192.168.8.241  端口3306  ,操作系统:Centos6.5 64位 从服务器(MySQL-02)  IP: 192.168. ...

  8. MySQL数据库主从同步延迟分析及解决方案

    一.MySQL的数据库主从复制原理 MySQL主从复制实际上基于二进制日志,原理可以用一张图来表示: 分为四步走: 1. 主库对所有DDL和DML产生的日志写进binlog: 2. 主库生成一个 lo ...

  9. Mysql Replication 主从同步

    简介: Mysql 的主从同步功能,这种解决方案是企业很常见的一种.常用于备份数据库,当客户端操作主库时,主库会产生binlog日志文件, 从库通过复制主库的binlog日志文件,然后解析成相应的 S ...

  10. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

随机推荐

  1. mysqldump备份命令使用参数

    参数 参数说明 导出全部数据库. mysqldump -uroot -p --all-databases 导出全部表空间. mysqldump -uroot -p --all-databases -- ...

  2. 安装 Harbor

    安装Harbor先决条件 https://goharbor.io/docs/2.6.0/install-config/installation-prereqs/ 1.安装docker 参考docker ...

  3. shell 脚本请求接口报错

    2023-01-18 22:07:07.984 WARN 11700 --- [io-9044-exec-10] .w.s.m.s.DefaultHandlerExceptionResolver : ...

  4. sequlizejs学习笔记整理

    1.事务 try { const transaction = await sequelize.transaction(); const user = await User.findOne(..., { ...

  5. kali修改root用户和密码,以及更新源,超详细教学。

    大家好! 又是你们那个傻傻的河东, 今天来讲修改root用户和更新源. 打开上期的kali虚拟机 开启虚拟机 使出吃奶的劲按"e"键:) 进入下面的界面 然后往下找到 Linux ...

  6. vue2中底层响应式数据实现

    <input type="text" id="textInput" />输入:<span id="textSpan"> ...

  7. 掌控安全学院SQL注入靶场-布尔盲注(一)

    靶场地址:http://inject2.lab.aqlab.cn/Pass-10/index.php?id=1 判断注入点: http://inject2.lab.aqlab.cn/Pass-10/i ...

  8. 用telnet远程连接linux系统

    环境,centos7.6 通过telnet进行远程登录的方法如下: 1.安装telnet,telnet-server,xinetd 检测是否安装telnet rpm -qa | grep telnet ...

  9. centos7上搭建Jenkins环境

    选择在centos 上安装jdk和tomcat来搭建Jenkins 1.jdk安装 查看有没有java环境:rpm -qa | grep java 如果没有java环境的话,接着就去查找java-1. ...

  10. 面试之arrayList扩容机制

    参考: ArrayList扩容详解_java编程艺术的博客-CSDN博客_arraylist扩容 ArrayList底层是数组elementData,用于存放插入的数据.初始大小是0,当有数据插入时, ...