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 statusG

*************************************  错误板块  ***************************************
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 statusG
经验分享 程序员 微信小程序 职场和发展