linux(centos7)mysql8.0主从集群搭建(两台机器)

docker安装:(转载)centos7安装Docker详细步骤(无坑版教程)-CSDN博客

环境信息

主数据库服务器:192.168.1.10

从数据库服务器:192.168.1.11

1. mysql8.0镜像下载

docker pull mysql:8.0.23

linux(centos7)mysql8.0主从集群搭建(两台机器)_第1张图片

2.创建docker容器

2.1在主数据库上创建docker容器

docker run -d --name  mainer  -p 8008:3306 -e MYSQL_ROOT_PASSWORD=root 
 --net=host mysql:8.0.23

参数说明

--name  容器名称
-p 8008:3306  端口映射
-e MYSQL_ROOT_PASSWORD=root 指定root账户密码
--net=host 设置与宿主机公用一个网络



2.2在从数据库上创建docker容器

docker run -d --name  follower  -p 8008:3306 -e MYSQL_ROOT_PASSWORD=root 
 --net=host  mysql:8.0.23

3.修改mysql的my.cnf配置文件 

3.1修改主数据库的my.cnf文件

将容器中的mysql配置文件my.cnf复制到宿主机
docker cp 容器id:/etc/mysql/my.cnf ./
===========================================
vim my.cnf
在[mysqld]加上下面两行
log-bin=mysql-bin
server-id=1
===========================================
将编辑好的my.cnf配置文件放回容器中
docker cp ./my.cnf 容器id:/etc/mysql
重启mysql主容器
docker restart 容器id

linux(centos7)mysql8.0主从集群搭建(两台机器)_第2张图片

3.2修改从数据库的my.cnf文件

除了server-id=2为之外,其他的步骤跟主数据库一样。

linux(centos7)mysql8.0主从集群搭建(两台机器)_第3张图片

4.配置数据库相关信息

4.1主数据库配置

docker exec -it mainer /bin/bash
mysql -u root -p

进入mysql,执行以下命令:

CREATE USER 'ganing'@'%' IDENTIFIED WITH mysql_native_password BY 'ganing';

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

# 刷新
flush privileges;

# 查看主节点同步状态:
show master status;
 4.2 从数据库配置

docker exec -it 容器id /bin/bash
mysql -u root -p

关联主数据库 192.168.1.10 主数据库地址
CHANGE REPLICATION SOURCE TO
SOURCE_HOST='192.168.1.10',  
SOURCE_PORT=3306,
SOURCE_USER='ganjing',
SOURCE_PASSWORD='ganjing';
mysql> START REPLICA;

mysql> SHOW REPLICA STATUS\G //查看主从状态

SHOW REPLICA STATUS\G //查看主从状态 

linux(centos7)mysql8.0主从集群搭建(两台机器)_第4张图片当出现红框中都为YES时,则表示搭建成功。

6.测试主从集群
create database test default charset utf8mb4;

show databases;

你可能感兴趣的:(数据库相关知识,mysq8.0主从,mysql集群,docker搭建mysql集群)