MySQl高级篇-主从复制
主从复制
复制的基本原理
slave会从master读取binlog来进行数据同步

MySQL复制过程分成三步:
master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log events;slave将master的binary log events拷贝到它的中继日志(relay log) ;slave重做中继日志中的事件,将改变应用到自己的数据库中。MySQL复制是异步的且串行化的
复制的基本原则:
- 每个
slave只有一个master - 每个
slave只能有一个唯一的服务器ID - 每个
master可以有多个salve
复制的最大问题是延迟。
一主一从常见配置
准备工作
一、mysql版本一致且后台以服务运行
二、主从都配置在[mysqld]结点下,都是小写
服务器配置
一、主机修改my.cnf配置文件:
1.、[必须]主服务器唯一ID:
server-id=1
2、[必须]启用二进制日志(指定日志存放位置)
log-bin=/var/lib/mysql/mysql-bin
3、 [可选]启用错误日志
log-err=自己本地的路径/mysqlerr
4、[可选]根目录
basedir="本地路径"
5、[可选]临时目录
tmpdir=“自己本地路径”
6、[可选]数据目录
datadir=“自己本地路径/Data/”
7、主机,读写都可以
read-only=O
8、[可选]设置不要复制的数据库
binlog-ignore-db=mysql
9、[可选]设置只复制某个数据库
binlog-do-db=需要复制的主数据库名字
二、从机修改my.cnf配置文件:
1、[必须]从服务器唯一ID
server-id=2
2、[可选]启用二进制日志
log-bin=/var/lib/mysql/mysql-bin
三、配置文件,请主机+从机都重启后台mysql服务
linux中:
service mysql stop
service mysql start
如果你和我一样是用的docker容器可以这样重启:
docker restart xxxxxx
四、在主机上建立帐户并授权slave
在主服务器上执行此命令,允许从服务器使用指定的用户名和密码连接到主服务器,并读取二进制日志进行数据复制。
创建用户并设置密码:
CREATE USER 'xxxx'@'从机器数据库IP' IDENTIFIED BY '123456';
授予用户复制权限:
GRANT REPLICATION SLAVE ON *.* TO 'xxxx'@'从机器数据库IP';
刷新权限
FLUSH PRIVILEGES;
GRANT是MySQL中的一个命令,用于授予用户特定的权限。REPLICATION SLAVE是授予的权限类型,允许指定用户读取主服务器的二进制日志,以便进行数据复制。ON *.*:*.*表示权限适用于所有数据库和所有表。也就是说,这个用户可以访问主服务器上的所有数据库进行复制操作。TO 'xxxx'@'从机器数据库IP':xxxx是要创建或更新的用户名,不要使用rootIDENTIFIED BY用于设置或更新指定用户的密码,123456是该用户的密码。
查询master的状态
show master status;
记录下File和Position的值

执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化
五、在Linux从机上配置需要复制的主机
在MySQL命令行中执行以下命令:
CHANGE MASTER TO MASTER_HOST='主机IP',
MASTER_USER='xxxx',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_LOG_FILE='File文件名',
MASTER_LOG_POS=Position数字;
启动从服务器复制功能:
start slave;
查看主从配置状态:
show slave status\G
下面两个参数都是Yes,则说明主从配置成功!

如果上面的position输错了,可以重置
reset slave;
然后暂停主从复制
stop slave;
重新配置
CHANGE MASTER TO MASTER_HOST='主机IP',
MASTER_USER='xxxx',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_LOG_FILE='File文件名',
MASTER_LOG_POS=Position数字;
然后开启
start slave;
六、主机新建库、新建表、insert记录,从机复制
主机输入:
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE testtable (id INT PRIMARY KEY, value VARCHAR(50));
INSERT INTO testtable VALUES (1, 'Hello World');

从机自动同步

七、如何停止从服务复制功能
stop slave;
如果有一段数据暂时不要,从机可以停止主从复制后,从主机那里查询新的position刻度,重新开始复制。
相关文章:
MySQl高级篇-主从复制
主从复制 复制的基本原理 slave会从master读取binlog来进行数据同步 MySQL复制过程分成三步: master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log events;slave将master的binary log events拷贝到它的中继日志(r…...
JMeter案例分享:通过数据验证的错误,说说CSV数据文件设置中的线程共享模式
前言 用过JMeter参数化的小伙伴,想必对CSV Data Set Config非常熟悉。大家平时更关注变量名称,是否忽略首行等参数,其余的一般都使用默认值。然而我最近遇到一个未按照我的预想读取数据的案例,原因就出在最后一个参数“线程共享模…...
数学建模·Topsis优劣解距离法
Topsis优劣解 一种新的评价方法,特点就是利用原有数据,客观性强。 相较于模糊评价和层次评价 更加客观,充分利用原有数据,精确反映方案差距 基本原理 离最优解最近,离最劣解越远 具体步骤 正向化 代码与原理与熵权…...
数学建模中常用的数据处理方法
常用的数据处理方法 本文参考 B站西电数模协会的讲解视频 ,只作笔记提纲,想要详细学习具体内容请观看 up 的学习视频。国赛的 C 题一般数据量比较大。 这里介绍以下两种方法: 数据预处理方法 数据分析方法 数据预处理方法 1. 数据清洗 为…...
C嘎嘎:函数模版和类模版
目录 泛型编程 函数模版 函数模版概念 函数模版的格式 函数模版的原理 函数模版的实例化 函数参数的匹配原则 类模版 类模版的定义格式 类模版的实例化 泛型编程 如何实现一个通用的交换函数呢 void Swap(int& left, int& right) {int temp left;left rig…...
使用 Apache Pulsar 构建弹性可扩展的事件驱动应用
本视频来自 2024 Apache Pulsar 欧洲峰会,由 David Kjerrumgaard, 《Pulsar in Action》书作者给大家带来的《使用 Apache Pulsar 构建弹性可扩展的事件驱动应用》分享。 嘉宾|David Kjerrumgaard,Apache Pulsar Committer,《Pul…...
【国产开源可视化引擎Meta2d.js】视频
视频 meta2d 支持Html音视频。 // 音频 const pen {name: video,x: 100,y: 100,width: 100,height: 10,audio: https://down.ear0.com:3321/preview?soundid37418&typemp3,autoPlay: true, }; meta2d.addPen(pen); meta2d.inactive();// 视频 const pen {name: video,x…...
零信任网络安全
随着数字化转型的发生,网络边界也在不断被重新定义,因此,组织必须使用新的安全方法重新定义其防御策略。 零信任是一种基于“永不信任,永远验证”原则的安全方法,它强调无论在公司内部或外部,任何用户、设…...
Python酷库之旅-第三方库Pandas(022)
目录 一、用法精讲 55、pandas.lreshape函数 55-1、语法 55-2、参数 55-3、功能 55-4、返回值 55-5、说明 55-6、用法 55-6-1、数据准备 55-6-2、代码示例 55-6-3、结果输出 56、pandas.wide_to_long函数 56-1、语法 56-2、参数 56-3、功能 56-4、返回值 56-5…...
数据建设实践之大数据平台(一)准备环境
大数据组件版本信息 zookeeper-3.5.7hadoop-3.3.5mysql-5.7.28apache-hive-3.1.3spark-3.3.1dataxapache-dolphinscheduler-3.1.9大数据技术架构 大数据组件部署规划 node101node102node103node104node105datax datax datax ZK ZK ZK RM RM NM...
VUE2用elementUI实现父组件中校验子组件中的表单
需求是VUE2框架用elementUI写复杂表单组件,比如,3个相同功能的表单共用一个提交按钮,把相同功能的表单写成一个子组件,另一个父组件包含子组件的重复调用和一个提交按钮,并且要求提交时校验必填项。 注意: …...
人工智能算法工程师(中级)课程9-PyTorch神经网络之全连接神经网络实战与代码详解
大家好,我是微学AI,今天给大家介绍一下人工智能算法工程师(中级)课程9-PyTorch神经网络之全连接神经网络实战与代码详解。本文将给大家展示全连接神经网络与代码详解,包括全连接模型的设计、数学原理介绍,并从手写数字识别到猫狗识…...
UDP网络通信(发送端+接收端)实例 —— Python
简介 在网络通信编程中,用的最多的就是UDP和TCP通信了,原理这里就不分析了,网上介绍也很多,这里简单列举一下各自的优缺点和使用场景 通信方式优点缺点适用场景UDP及时性好,快速视网络情况,存在丢包 与嵌入…...
从零开始实现大语言模型(五):缩放点积注意力机制
1. 前言 缩放点积注意力机制(scaled dot-product attention)是OpenAI的GPT系列大语言模型所使用的多头注意力机制(multi-head attention)的核心,其目标与前文所述简单自注意力机制完全相同,即输入向量序列 x 1 , x 2 , ⋯ , x n x_1, x_2, \cdots, x_n x...
PTA 7-15 希尔排序
本题目要求读入N个整数,采用希尔排序法进行排序,采用增量序列{5,3,1},输出完成增量5和增量3后的5子排序和3子排序结果。 输入格式: 输入不超过100的正整数N和N个整数(空格分隔)。 输出格式: …...
【密码学】分组密码的设计原则
分组密码设计的目标是在密钥控制下,从一个巨大的置换集合中高效地选取一个置换,用于加密给定的明文块。 一、混淆原则 混淆原则是密码学中一个至关重要的概念,由克劳德香农提出。混淆原则就是将密文、明文、密钥三者之间的统计关系和代数关系…...
深入解析【C++ list 容器】:高效数据管理的秘密武器
目录 1. list 的介绍及使用 1.1 list 的介绍 知识点: 小李的理解: 1.2 list 的使用 1.2.1 list 的构造 知识点: 小李的理解: 代码示例: 1.2.2 list 迭代器的使用 知识点: 小李的理解࿱…...
NFS服务器、autofs自动挂载综合实验
综合实验 现有主机 node01 和 node02,完成如下需求: 1、在 node01 主机上提供 DNS 和 WEB 服务 2、dns 服务提供本实验所有主机名解析 3、web服务提供 www.rhce.com 虚拟主机 4、该虚拟主机的documentroot目录在 /nfs/rhce 目录 5、该目录由 node02 主机…...
自动驾驶事故频发,安全痛点在哪里?
大数据产业创新服务媒体 ——聚焦数据 改变商业 近日,武汉城市留言板上出现了多条关于萝卜快跑的投诉,多名市民反映萝卜快跑出现无故停在马路中间、高架上占最左道低速行驶、转弯卡着不动等情况,导致早晚高峰时段出现拥堵。萝卜快跑是百度 A…...
SpringSecurity框架【认证】
目录 一. 快速入门 二. 认证 2.1 登陆校验流程 2.2 原理初探 2.3 解决问题 2.3.1 思路分析 2.3.2 准备工作 2.3.3 实现 2.3.3.1 数据库校验用户 2.3.3.2 密码加密存储 2.3.3.3 登录接口 2.3.3.4 认证过滤器 2.3.3.5 退出登录 Spring Security是Spring家族中的一个…...
深度解析AutoJs6在安卓11上的外部存储写入问题:完整技术方案与最佳实践
深度解析AutoJs6在安卓11上的外部存储写入问题:完整技术方案与最佳实践 【免费下载链接】AutoJs6 安卓平台 JavaScript 自动化工具 (Auto.js 二次开发项目) 项目地址: https://gitcode.com/gh_mirrors/au/AutoJs6 AutoJs6作为一款安卓平台JavaScript自动化工…...
HS2-HF Patch:从新手到高手,一站式解决HoneySelect2的三大核心困扰
HS2-HF Patch:从新手到高手,一站式解决HoneySelect2的三大核心困扰 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch 如果你正在玩HoneySe…...
构建高性能医疗对话数据引擎:792,099条中文医疗问答数据集的技术架构与应用
构建高性能医疗对话数据引擎:792,099条中文医疗问答数据集的技术架构与应用 【免费下载链接】Chinese-medical-dialogue-data Chinese medical dialogue data 中文医疗对话数据集 项目地址: https://gitcode.com/gh_mirrors/ch/Chinese-medical-dialogue-data …...
DLSS Swapper终极指南:如何一键管理游戏DLSS版本提升50%性能
DLSS Swapper终极指南:如何一键管理游戏DLSS版本提升50%性能 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 你是否曾经因为游戏自带的DLSS版本过时而感到困扰?当最新的DLSS 3.5版本发布&#x…...
色度下采样:揭秘那个让 4K 视频“飞“起来的隐形魔法
一、一个让我"开窍"的报纸印刷故事 我大学时学过一段时间平面设计,去一家报社实习,亲眼见识过报纸印刷的全过程。报社的印刷流程让我印象特别深刻——他们印彩色版面时,黑色文字部分的网点密度极高(每英寸 150 线以上&a…...
Thorium浏览器:基于Chromium的终极性能优化与隐私保护深度解析
Thorium浏览器:基于Chromium的终极性能优化与隐私保护深度解析 【免费下载链接】thorium Chromium fork named after radioactive element No. 90. Source code and Linux releases. Windows/MacOS/ARM builds served in different repos, links are towards the to…...
突破小红书反爬:5个User-Agent伪装策略与实战指南
突破小红书反爬:5个User-Agent伪装策略与实战指南 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接…...
别再只盯着深度学习!用OpenCV+Python实战传统分水岭算法,5分钟搞定细胞图像分割
用OpenCVPython玩转分水岭算法:5分钟实现细胞图像精准分割在医学图像分析领域,细胞计数和分割一直是基础且关键的环节。传统深度学习方法虽然效果惊艳,但往往需要大量标注数据和计算资源。而分水岭算法这个诞生于1992年的经典方法,…...
Android HTTPS抓包失败根源:系统证书信任链详解
1. 为什么HTTPS抓包总在“证书验证失败”这一步卡死? 你肯定试过:Wireshark抓不到App的加密流量,Fiddler在Windows上跑得好好的,一换到Android手机就提示“您的连接不是私密连接”,Charles反复弹出证书安装提醒却始终无…...
量子态编码:从指数级瓶颈到线性复杂度的高效实现
1. 量子态编码:从理论瓶颈到工程实践在量子计算领域,尤其是量子机器学习和量子优化算法中,我们常常面临一个看似基础却至关重要的挑战:如何将经典数据高效地“加载”到量子态中?这个过程被称为量子态编码或数据加载。对…...
