云原生作业(四)

embedded/2025/1/23 10:40:39/

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

主从复制原理

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

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

工作过程

服务器

        执行数据操作并将更改记录到二进制日志(binlog)

服务器

        启动 I/O 线程,连接到主服务器并请求二进制日志

        主服务器将二进制日志发送到从服务器

        从服务器将接收到的日志写入中继日志

        SQL 线程从中继日志中读取日志并执行相应的 SQL 语句

配置

192.168.165.128为主,192.168.165.129和192.168.165.131为从

配置主库

[root@openEuler ~]# cd /MySQL/
[root@openEuler MySQL]# vim /etc/my.cnf
[mysqld]
server_id=1
[root@openEuler MySQL]# systemctl enable --now mysqld.service
mysql> create user rep@'192.168.165.%' identified with mysql_native_password by 'MySQL@123';
Query OK, 0 rows affected (0.01 sec)
mysql> grant replication slave on *.* to  rep@'192.168.165.%';
Query OK, 0 rows affected (0.01 sec)

配置从库

[root@localhost MySQL]# vim /etc/my.cnf

从库1

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
server_id=2

从库2

[root@localhost-1 ~]# vim /etc/my.cnf
[mysqld]
server_id=3

共同 

[root@localhost ~]# systemctl enable --now mysqld.service
mysql> change master to-> master_host='192.168.165.128',-> master_user='rep',-> master_password='MySQL@123',-> master_log_file='binlog.000001',-> master_log_pos=678;
Query OK, 0 rows affected, 8 warnings (0.01 sec)
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)
             Slave_IO_Running: YesSlave_SQL_Running: Yes

测试

主库中

mysql> create database test;
Query OK, 1 row affected (0.00 sec)
mysql> use test;
Database changed
mysql> create table td1(id int(10),name varchar(20));
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> insert into td1 values (1,'张三'),(2,'李四');
Query OK, 2 rows affected (0.01 sec)
Records: 2  Duplicates: 0  Warnings: 0
mysql> select * from td1;
+------+--------+
| id   | name   |
+------+--------+
|    1 | 张三   |
|    2 | 李四   |
+------+--------+
2 rows in set (0.00 sec)

从库中

mysql> select * from td1;
+------+--------+
| id   | name   |
+------+--------+
|    1 | 张三   |
|    2 | 李四   |
+------+--------+
2 rows in set (0.00 sec)


http://www.ppmy.cn/embedded/156280.html

相关文章

Linux之socket编程(上)

目录 理解IP和端口号 socket编程接口 简单UDP网络小程序实现 本期我们将开始学习Linux计算机网络的相关知识。 理解IP和端口号 IP:一个IP唯一标识一个网络中的主机。 端口号:唯一标识一个主机中的一个进程。 IP端口号我们也称作套接字。 所以我们可以得…

通过frm和ibd文件恢复mysql数据

1.提取所有的文件名并查找出以frm结尾的 dir /t /b >1.txt 2.要准备的软件 1.mysql-utilities-1.6.5-winx64.msi 2.vcredist_x64.exe(c 2013) 3.利用frm生成sql文件 mysqlfrm --serverroot:123456localhost:3306 --port3308 D:\phpstudy_pro\Extensions\MySQL5.7.26\da…

PyQt5 超详细入门级教程上篇

PyQt5 超详细入门级教程 上篇:1-3部分:PyQt5基础与常用控件 第1部分:初识 PyQt5 和安装 1.1 什么是 PyQt5? PyQt5 是 Python 的图形用户界面 (GUI) 框架,它基于强大的 Qt 库。Qt 是一个跨平台的 C 框架,用…

三层软电话技术

随着信息技术的飞速发展,企业通讯方式也在不断演进。三层软电话技术作为一种先进的通讯解决方案,正在被越来越多的企业所采纳。本文将全面解析三层软电话的定义、应用场景、工作原理、优势以及劣势,并对其进行拓展探讨。 一、三层软电话 三层…

Linux网络 序列化与反序列化

概念 序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。以下是关于序列化与反序列化的介绍: 序列化:将对象的状态信息转换为可以存储或传输的格式,通常是字节序列或文本格式。反序列化&am…

C++之初识模版

目录 1.关于模版的介绍 2.函数模版 2.1函数模板概念 2.2函数模板格式 2.3 函数模板的原理 2.4 函数模板的实例化 2.5模板参数的匹配原则 3.类模版 3.1类模板的定义格式 3.2 类模板的实例化 1.关于模版的介绍 C中的模板是一种通用编程工具,它允许程序员编…

数据结构——堆(介绍,堆的基本操作、堆排序)

我是一个计算机专业研0的学生卡蒙Camel🐫🐫🐫(刚保研) 记录每天学习过程(主要学习Java、python、人工智能),总结知识点(内容来自:自我总结网上借鉴&#xff0…

C++:将字符数组rkpryyrag,每个字母转换为其前面第13个字母后输出,如果超过a则从z再继续接着数。例如:b前面第1个字母是a。a前面第3个字母是x。

代码如下&#xff1a; #include <iostream> #include <string> using namespace std;int main(){string str "rkpryyrag";for (int i 0; i < str.length(); i){if (str[i] > a && str[i] < z){if (str[i] - a < 13){cout <<…