欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

centos 部署mysql数据库主从复制

程序员文章站 2022-06-19 10:20:00
实验环境:centos7.3 两台master节点配置查看网卡修改主机名称修改DNS映射改下面文件中的SELINUX=permissive重启虚拟机安装mariadb-server添加服务并启动初始化数据库密码:(1) 启用二进制日志;(2) 设置一个在当前集群中惟一的server-id(主/从服务器的ID不能重复);二进制日志,在Mariadb安装完成之后默认就是启动的,这里只是将mysql-bin改为了master-bin当然不改也是可以的,另外serve...

实验环境:centos7.3 两台

master节点配置

查看网卡
centos 部署mysql数据库主从复制
修改主机名称
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
修改DNS映射
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
改下面文件中的SELINUX=permissive
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
重启虚拟机
centos 部署mysql数据库主从复制
安装mariadb-server
centos 部署mysql数据库主从复制
添加服务并启动
centos 部署mysql数据库主从复制
初始化数据库密码:
centos 部署mysql数据库主从复制
(1) 启用二进制日志;
(2) 设置一个在当前集群中惟一的server-id(主/从服务器的ID不能重复);
二进制日志,在Mariadb安装完成之后默认就是启动的,这里只是将mysql-bin改为了
master-bin当然不改也是可以的,另外server-id的选项也是默认的,这里并没有修改。
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
创建/var/log/mysql并且更改属主和属组:
centos 部署mysql数据库主从复制
创建一个有复制权限(REPLICATION SLAVE, REPLICATION CLIENT)账号并刷新;
centos 部署mysql数据库主从复制
在master节点启用参数:
添加第四条:同步二进制日志,事务提交则马上将内存中的二进制日志同步到磁盘
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
重启数据库:
centos 部署mysql数据库主从复制

slave节点配置

查看网卡
centos 部署mysql数据库主从复制
修改主机名称
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
修改DNS映射
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
改下面文件中的SELINUX=permissive
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
重启虚拟机
centos 部署mysql数据库主从复制
安装mariadb-server
centos 部署mysql数据库主从复制
添加服务并启动
centos 部署mysql数据库主从复制
初始化数据库密码:
centos 部署mysql数据库主从复制
(1) 启用中继日志; 第二行
(2) 设置一个在当前集群中惟一的server-id;第三行
关闭从服务器写入功能第四行
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
重启数据库:
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
启动Mariadb slave的 IO和SQL线程
centos 部署mysql数据库主从复制
查看从服务器复制状态,IO和SQL线程还是处于关闭状态,需要手动启动才会
开始复制
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
注意上图中IO线程处于连接状态是错误的,应该是两个都是yes
并且解决以上报错:是防火墙的问题:(master和slave都配置防火墙)
centos 部署mysql数据库主从复制
centos 部署mysql数据库主从复制
然后再查看IO和SQL的状态:都是yes
centos 部署mysql数据库主从复制
在主服务器上创建新的库并查看从服务器是否能同步:
centos 部署mysql数据库主从复制
在从服务器查看:
centos 部署mysql数据库主从复制

已同步搭建成功

注意如果遇到一下问题如何解决:
Mariadb主从复制,MySQL同步故障解决:
“Slave_SQL_Running: No” 解决方案
首先在Slave主机上停掉Slave服务:
MariaDB [(none)]> stop slave;
到Master服务器上查看主机状态,记录File和Position对应的值:
MariaDB [(none)]> show master status;

centos 部署mysql数据库主从复制
然后到slave服务器上执行手动同步:
MariaDB [(none)]> change master to master_host=‘192.168.60.20’,
master_user=‘repluser’,master_password=‘Pa9865321’,
master_port=3306,master_log_file=‘master-bin.000001’,
master_log_pos=326;
MariaDB [(none)]> start slave;
再查看IO和SQL的状态都是YES了就可以验证数据是否可以同步了:

centos 部署mysql数据库主从复制
Master服务创建数据库并查看数据库
centos 部署mysql数据库主从复制
slave服务器查看数据库
centos 部署mysql数据库主从复制

本文地址:https://blog.csdn.net/weixin_51167520/article/details/112644503