centos 部署mysql数据库主从复制
实验环境:centos7.3 两台
master节点配置
查看网卡
修改主机名称
修改DNS映射
改下面文件中的SELINUX=permissive
重启虚拟机
安装mariadb-server
添加服务并启动
初始化数据库密码:
(1) 启用二进制日志;
(2) 设置一个在当前集群中惟一的server-id(主/从服务器的ID不能重复);
二进制日志,在Mariadb安装完成之后默认就是启动的,这里只是将mysql-bin改为了
master-bin当然不改也是可以的,另外server-id的选项也是默认的,这里并没有修改。
创建/var/log/mysql并且更改属主和属组:
创建一个有复制权限(REPLICATION SLAVE, REPLICATION CLIENT)账号并刷新;
在master节点启用参数:
添加第四条:同步二进制日志,事务提交则马上将内存中的二进制日志同步到磁盘
重启数据库:
slave节点配置
查看网卡
修改主机名称
修改DNS映射
改下面文件中的SELINUX=permissive
重启虚拟机
安装mariadb-server
添加服务并启动
初始化数据库密码:
(1) 启用中继日志; 第二行
(2) 设置一个在当前集群中惟一的server-id;第三行
关闭从服务器写入功能第四行
重启数据库:
启动Mariadb slave的 IO和SQL线程
查看从服务器复制状态,IO和SQL线程还是处于关闭状态,需要手动启动才会
开始复制
注意上图中IO线程处于连接状态是错误的,应该是两个都是yes
并且解决以上报错:是防火墙的问题:(master和slave都配置防火墙)
然后再查看IO和SQL的状态:都是yes
在主服务器上创建新的库并查看从服务器是否能同步:
在从服务器查看:
已同步搭建成功
注意:如果遇到一下问题如何解决:
Mariadb主从复制,MySQL同步故障解决:
“Slave_SQL_Running: No” 解决方案
首先在Slave主机上停掉Slave服务:
MariaDB [(none)]> stop slave;
到Master服务器上查看主机状态,记录File和Position对应的值:
MariaDB [(none)]> show master status;
然后到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了就可以验证数据是否可以同步了:
Master服务创建数据库并查看数据库
slave服务器查看数据库
本文地址:https://blog.csdn.net/weixin_51167520/article/details/112644503
下一篇: Java8 Stream API总结