主从复制

devtools/2025/1/20 22:46:53/

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

主从原理:MySQL 主从同步是一种数据库复制技术,它通过将主服务器上的数据更改复制到一个或多个从服务器,实现数据的自动同步。

主从同步的核心原理是将主服务器上的二进制日志复制到从服务器,并在从服务器上执行这些日志中的操作。

1.主:

[root@openEuler ~]# yum install -y mysql-server       安装mysql

[root@openEuler ~]# vim /etc/my.cnf.d                          编辑my.cnf.d

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
server-id =11                                    

[root@openEuler ~]# systemctl enable --now mysqld              启动服务

[root@openEuler ~]# mysql                                                  进入mysql

mysql> create user rep@'192.168.23.%' identified with mysql_native_password by '123456';

mysql> grant replication slave on *.* to rep@'192.168.23.%';                   创建用户

2.从1:

[root@openEuler-2 ~]# vim /etc/my.cnf.d/mysql-server.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
server-id =12

[root@openEuler-2 ~]# systemctl restart mysqld       重启
[root@openEuler-2 ~]# mysql                                           进入mysql

mysql> change master to                                配置
    -> master_host='192.168.23.11',
    -> master_user='rep',
    -> master_password='123456',
    -> master_log_file='binlog.000006',
    -> master_log_pos=157;

mysql> start slave;                                           启动复制

mysql> show slave status \G;                            查看状态

Slave_IO_Running: Yes                                    看这两个是否为yes
Slave_SQL_Running: Yes

3.从3

[root@openEuler-3~]# vim /etc/my.cnf.d/mysql-server.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
server-id =13

[root@openEuler-3 ~]# systemctl restart mysqld       重启
[root@openEuler-3 ~]# mysql                                           进入mysql

mysql> change master to                                配置
    -> master_host='192.168.23.11',
    -> master_user='rep',
    -> master_password='123456',
    -> master_log_file='binlog.000006',
    -> master_log_pos=157;

mysql> start slave;                                           启动复制

mysql> show slave status \G;                            查看状态

Slave_IO_Running: Yes                                    看这两个是否为yes
Slave_SQL_Running: Yes

4.验证

主:

从:


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

相关文章

ComfyUI 矩阵测试指南:用三种方法,速优项目效果

在ComfyUI中,矩阵测试也叫xyz图表测试,作用是通过控制变量的方式来对Lora模型以及各种参数开展测试,并进行有效区分。其中测试方法有很多种,可以通过借助插件也可以自行搭建工作流实现,下面介绍3种方式: 1…

简单介绍JSONStream的使用

地址 作用 这个模块是根据需要筛选出json数据中自己所需要的数据 使用 var JSONStream require("JSONStream"); var parse require("fast-json-parse"); var fs require("fs");fs.createReadStream("./time.json").pipe(JSONSt…

RabbitMQ---TTL与死信

(一)TTL 1.TTL概念 TTL又叫过期时间 RabbitMQ可以对队列和消息设置TTL,当消息到达过期时间还没有被消费时就会自动删除 注:这里我们说的对队列设置TTL,是对队列上的消息设置TTL并不是对队列本身,不是说队列过期时间…

QT的TCP通讯

目录 一、引言 二、QT 中与 TCP 通讯相关的类 1.QTcpSocket 类 1.1 常用信号 1.2常用函数 2.QTcpServer类 2.1常用函数 三、QT TCP通信的详细代码实现 1.TCP服务器端实现 2.TCP客户端实现 四、总结 一、引言 在网络编程领域,TCP(Transmission…

C++:用bfs解决洪水覆盖问题与最短路问题习题

1. flood fill(洪水覆盖)算法 岛屿数量 力扣 200(题号)200. 岛屿数量 - 力扣&#xff08;LeetCode&#xff09; 提示&#xff1a; m grid.lengthn grid[i].length1 < m, n < 300grid[i][j] 的值为 0 或 1 思路 这个题就是寻找岛屿的数量&#xff0c;我们遍历整张地…

[Linux] linux 系统中如何添加自动启动程序

背景&#xff1a;在嵌入式系统中&#xff0c;需要开机自动启动所编写的程序【可执行文件】。 解决方法&#xff1a;原理就是Linux开机会自动执行一些文件。在/etc/profile中添加执行程序的脚本。/etc/profile 是一个系统级的配置文件&#xff0c;在用户登录Linux系统时自动执行…

(RAG系列)FastGPT批量添加索引

&#xff08;RAG系列&#xff09;FastGPT批量添加索引 引言版本使用说明脚本代码 引言 索引制作&#xff1a; 通过模型对分块内容进行概况 根据文本内容划分特点&#xff0c;例如&#xff0c;文档有明显的大小标题&#xff0c;把标题作为索引 … 版本 fastgpt v4.8.10 使…

4 AXI USER IP

前言 使用AXI Interface封装IP&#xff0c;并使用AXI Interface实现对IP内部寄存器进行读写实现控制LED的demo&#xff0c;这个demo是非常必要的&#xff0c;因为在前面的笔记中基本都需哟PS端与PL端就行通信互相交互&#xff0c;在PL端可以通过中断的形式来告知PS端一些事情&…