Docker配置安装 MySQL主从

一、安装docker

yum install docker

二、查看docker版本

docker version

       可能报错:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

       解决:

                 $ systemctl daemon-reload

                 $ sudo service docker restart

                 $ sudo docker run hello-world

                

三、设置自启

systemctl start docker.service

systemctl enable docker.service

四、docker获取mysql镜像

docker pull mysql:5.7  

查看镜像是否下载成功:docker images

五、运行容器

主:docker run --name mysql-master -p 3339:3306 -e MYSQL_ROOT_PASSWORD=*密码 -d mysql:5.7

从:docker run --name mysql-slave -p 3340:3306 -e MYSQL_ROOT_PASSWORD=*密码 -d mysql:5.7

六、进入容器进行配置:

6-1:docker exec -it mysql-master /bin/bash           #进入主库

         mysql -u root -p //连接数据库

         ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '*密码';     //修改 root 可以通过任何客户端连接

         vim /etc/mysql/mysql.conf.d/mysqld.cnf

          #在 [mysqld] 段添加以下配置:log-bin=mysql-bin //[必须]启用二进制日志 server-id=1 //[必须]服务器标识ID,每台服务器唯一

 6-2:docker exec -it mysql-slave /bin/bash         #进入从库

         mysql -u root -p     //连接数据库

         ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '*密码';    //修改 root 可以通过任何客户端连接

         vim /etc/mysql/mysql.conf.d/mysqld.cnf

          #在 [mysqld] 段添加以下配置:log-bin=mysql-bin //[必须]启用二进制日志 server-id=2 //[必须]服务器标识ID,每台服务器唯一

6-3:重启mysql的docker 【重要】

         docker restart mysql-master //主库重启

         docker restart mysql-slave //从库重启

七、配置mysql主从

 1.首先连接 master 服务器,查看数据库状态:show master status;

2.记录 File 的值和 Position 的值,等会配置 slave 服务器的时候要用。

3.接下来连接 slave 服务器,配置主从复制:

   change master to

   master_host='114.115.143.106',

   master_user='root',

   master_log_file='mysql-bin.000001',

   master_log_pos=154,

   master_port=3339,

   master_password='*密码';

八、查看是否从库配置生效:show slave status\G

*************************************  错误板块  ***************************************
1.FirewallD is not running
答:开启防火墙:systemctl start firewalld

2.重启mysql 的docker 报错
答:systemctl restart docker  然后进行 重启

3.进入容器无法使用vi or vim
答:  apt-get update     
      apt-get install -y vim

4.停止复制主库:stop slave;

5.然后从库不生效:先停止复制 
        ->
        stop slave; 
        SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;
        start slave; 
        show slave status\G  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值