简述mysql 主从复制原理及其工作过程,配置一主两从并验证

devtools/2025/1/22 22:18:38/

第一种基于binlog的主从同步

首先对主库进行配置:

[root@openEuler-1 ~]# vim /etc/my.cnf

启动服务

[root@openEuler-1 ~]# systemctl enable --now mysqld

主库的配置

从库的配置

第一个从库

[root@openEuler-1 ~]# vim /etc/my.cnf


[root@openEuler-1 ~]# systemctl enable --now mysqld

mysql> change master to
    -> master_host='192.168.1.13',
    -> master_user='rep',
    -> master_password='123456',
    -> master_log_file='binlog.000001',
    -> master_log_pos=678;
Query OK, 0 rows affected, 8 warnings (0.02 sec)

mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.05 sec)

mysql> show slave status \G
*************************** 1. row ***************************
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

第二个从库

[root@openEuler-1 ~]# vim /etc/my.cnf


[root@openEuler-1 ~]# systemctl enable --now mysqld

mysql> change master to
    -> master_host='192.168.1.13',
    -> master_user='rep',
    -> master_password='123456',
    -> master_log_file='binlog.000001',
    -> master_log_pos=678;
Query OK, 0 rows affected, 8 warnings (0.02 sec)

mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.05 sec)

mysql> show slave status \G
*************************** 1. row ***************************
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

进行测试

在主库中

mysql> create database test;
mysql> use test;
mysql> create table td1(id int(10),name varchar(20));
mysql> insert into td1 values (1,'张三'),(2,'李遂');
从库中

第二种基于gtid的主从同步配置

在主库和从库中分别开启gtid

[root@openEuler-1 ~]# vim /etc/my.cnf


[root@openEuler-1 ~]# systemctl restart mysqld.service

从库1:mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> change master to
    -> master_host='192.168.1.13',
    -> master_user='rep',
    -> master_password='123456',
    -> master_auto_position=1;
Query OK, 0 rows affected, 7 warnings (0.02 sec)

mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> show slave status \G
*************************** 1. row ***************************
            Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
            
 

从库2:

mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> change replication source to
    -> source_host='192.168.1.13',
    -> source_user='rep',
    -> source_password='123456',
    -> source_auto_position=1;
Query OK, 0 rows affected, 2 warnings (0.02 sec)

mysql> start replica;
Query OK, 0 rows affected (0.02 sec)

mysql> show slave status \G
*************************** 1. row ***************************
            Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

测试:

主库:

mysql> create database py;
Query OK, 1 row affected (0.01 sec)

mysql> use py;
Database changed
mysql> create table yp(id int(10), name varchar(20));
Query OK, 0 rows affected, 1 warning (0.02 sec)

mysql> insert into yp values (1,'张三');
Query OK, 1 row affected (0.01 sec)

从库中


http://www.ppmy.cn/devtools/152702.html

相关文章

规避路由冲突

路由冲突是指在网络中存在两个或多个路由器在进行路由选择时出现矛盾,导致网络数据包无法正确传输,影响网络的正常运行。为了规避路由冲突,可以采取以下措施: 一、合理规划IP地址 分配唯一IP:确保每个设备在网络中都有…

redis 分布式方案

文章目录 前言一、主从复制1、主从配置2、建立连接3、数据同步3.1、全量同步3.2、全量同步配置3.3、 增量同步3.4、 增量同步配置 二、redis sentinel1、主要功能2、sentinel配置3、高可用3.1、故障发现3.2、故障转移3.2.1、选举sentinel进行故障转移3.2.2、选举从节点升级成主…

2.5G PoE交换机 TL-SE2109P 简单开箱评测,8个2.5G电口+1个10G光口(SFP+)

TPLINK(普联)的万兆上联的2.5G网管交换机TL-SE2109P简单开箱测评。8个PoE 2.5G电口,1个万兆SFP上联口。 2.5G交换机 TL-SE2420 简单开箱评测,16个2.5G电口4个10G光口(SFP):https://blog.zeruns.com/archives/837.html…

前端【3】--CSS布局,CSS实现横向布局,盒子模型

盒子分类 1、块级盒子 2、内联级盒子 3、内联块级盒子 4、弹性盒子 5、盒子内部分区 方法一:使用 float 普通盒子实现横向布局 方法二:使用 display: inline-block 内联块级元素实现横向布局 方法三:使用弹性盒子 flexbox&#xff0…

node.js 文件操作

在 Node.js 中,文件操作主要通过内置的 fs(File System)模块来实现。 1. 读取文件 const fs require("fs");// 异步读取文件fs.readFile("example.txt", "utf8", (err, data) > {if (err) {console.erro…

JavaScript中的数据类型以及存储上的差别

JavaScript是一种动态类型语言,其变量可以在不同类型之间转换。理解JavaScript中的数据类型以及它们在存储上的差别对于编写高效、健壮的代码至关重要。本文将详细介绍JavaScript的基本数据类型、复杂数据类型以及它们的存储特性。 一、JavaScript中的数据类型 1.…

C语言程序设计十大排序—插入排序

文章目录 1.概念✅2.插入排序🎈3.代码实现✅3.1 直接写✨3.2 函数✨ 4.总结✅5.十大排序 1.概念✅ 排序是数据处理的基本操作之一,每次算法竞赛都很多题目用到排序。排序算法是计算机科学中基础且常用的算法,排序后的数据更易于处理和查找。在…

CentOS 安装Redis

1. 安装 Redis 安装 EPEL 仓库(对于 CentOS/RHEL 系统): 首先安装 EPEL 仓库,因为 Redis 存在于 EPEL 仓库中: yum install epel-release安装 Redis 数据库: yum install redis2. 修改 Redis 配置文件 …