zoukankan      html  css  js  c++  java
  • Docker 下 mysql 简单的 主从复制实现

    1. 拉取镜像

    docker pull mysql:5.7.21

    2. 运行这个镜像

    docker run -d --name maser mysql:5.7.21

    3. 安装一些必要的软件

    docker exec -it master /bin/bash

    apt-get update
    apt-get install vim

    安装必要的软件

    4. 生成一个带vim编辑器的mysql images

    docker commit master mysqlwithvim:20180822

    5.创建部分目录

    mkdir /mysql
    cd mysql
    mkdir master/data
    mkdir slave/data
    
    创建master和slave 的部分配置文件
    vim my.cnf
    内容为:

    [mysqld]
    log-bin=mysql-bin
    server-id=100

    slave的配置文件为
    [mysqld]
    server-id=200

    6. 启动两个container

    docker rm -f master
    
    docker run -d --name master -p 3307:3306  -e MYSQL_ROOT_PASSWORD='Test6530' mysqlwithvim:20180822
    docker run -d --name slave -e MYSQL_ROOT_PASSWORD='Test6530' mysqlwithvim:20180822
    
    

    7. 进入 master 容器进行设置

    docker exec -it master /bin/bash

    #输入
    mysql -u root -p
    #输入密码 Test6530
    #创建同步用户。
    CREATE USER 'zhaobsh'@'%' IDENTIFIED BY 'Test6530';
    #增加权限
    GRANT REPLICATION SLAVE ON *.* TO 'zhaobsh'@'%';
    GRANT ALL ON *.* TO 'zhaobsh'@'%';
    flush privileges;
    #查看数据库的状态
    show master status;

    结果为:

    +------------------+----------+--------------+------------------+-------------------+
    | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +------------------+----------+--------------+------------------+-------------------+
    | mysql-bin.000003 | 949 | | | |
    +------------------+----------+--------------+------------------+-------------------+

    查看ip地址

    vi /etc/hosts

    8. 进入slave容器进行处理。

    docker exec -it slave /bin/bash
    
    #输入
    mysql -u root -p
    #输入密码 Test6530

    CHANGE MASTER TO MASTER_HOST='172.17.0.2', MASTER_USER='zhaobsh', MASTER_PASSWORD='Test6530', MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=949;

    #跟上面的查询结果对应.

    9. 查看slave 的状态

    在mysql 下面执行
    
    start slave;
    show slave statusG

    10. 报错如图示

    这里需要改改 重启一下 master和 slave 貌似 之前的 my.conf 没生效

    重启一下 应该就可以了

    测试同步

    master 创建一个数据库

     slave 在前后查看 能够同步

     study From 

    https://blog.csdn.net/boling_cavalry/article/details/79751085

  • 相关阅读:
    修复火狐主页被篡改成hao123的办法
    VMware中装Win2012并配置Hyper-v
    Linux下随机密码生成器
    GNS3 桥接虚拟网卡 telnet 实验
    冰点文库下载器停止工作解决办法
    《循序渐进》之简单的DHCP实验
    windows脚本配置ip地址
    phpmyadmin使用中碰到的一些问题
    phpmyadmin导入导出大数据文件的办法
    phpmyadmin的安装和使用
  • 原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/9521283.html
Copyright © 2011-2022 走看看