数据库主从复制

实验环境:centos7.3 两台

master节点配置

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

slave节点配置

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

已同步搭建成功

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

数据库主从复制_第20张图片
然后到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了就可以验证数据是否可以同步了:

数据库主从复制_第21张图片
Master服务创建数据库并查看数据库
数据库主从复制_第22张图片
slave服务器查看数据库
数据库主从复制_第23张图片

你可能感兴趣的:(安全,笔记,数据库,mysql,数据库,mariadb,负载均衡,linux)