Mysql 主从复制+数据恢复

【MYSQL】在线恢复主从复制方案 因复杂情况,从库无法从binlog中恢复主从复制关系,需要从备份文件中恢复。恢复过程的几个关键点为: 1、从库现有数据的清理。本方案采用覆盖的方式,导出时添加add-drop参数即可。还有一个方案是手动删除数据文件,再初始化数据库。 2、主库导出之前一定要reset master清除日志文件,否则备库连上后会执行binlog的语句出现各种各样的问题。 阅读详情

1、主服务器Master配置:

#设置数据库标识

server_id=1

#任何一个事务提交之后就立即写入到磁盘中的二进制文件

sync_binlog=1

#保持数据一致性,建议配置

innodb_flush_log_at_trx_commit=1

#开启服务器二进制日志

log-bin=mysql-bin

#设置log格式

binlog_format=MIXED

#不记录二进制数据库的数据

binlog-ignore-db=test  


2、从服务器Slave配置

#设置数据库标识

server_id = 2

#设置不同步的数据库

replicate-ignore-db=testDB

#设置不同步的数据表

replicate-ignore-table=testDB.testTable


给服务器设置授权账户

设置user账户能从10.10.0.1服务器登陆本机,且拥有所有权限

Mysql>grant all on *.* to user@10.10.0.1 indentified by ‘password’

(密码必须有引号)


user账户只有备份权限

Mysql>grant replication slave on *.* to user@10.10.0.1 indentified by ‘password’


设置其他主机能使用root登陆数据库

Mysql>GRANT ALL PRIVILEGES ON * . * TO 'root'@'%'IDENTIFIED BY ‘password’

 

使添加的账号生效:FLUSH PRIVILEGES;

master服务器查看是否开启二进制日志:show variables like '%bin';

master服务器查看二进制日志状态:show mater status;

Flush logs; 增加一个最新的bin-log日志

Truncate  tables;   清空当前表中的所有数据

Reset master;清空所有的bin-log日志


slave服务器停止同步,输入:stop slave;

slave服务器显示同步状态及设置:show slave status\G


数据库同步

注意数据库同步前,需要在Master数据库锁定当前数据库,可保持数据一致性

锁定:mysql>flushtables with read lock;

解锁:mysql>unlocktables;


开启同步:

CHANGE MASTER TO MASTER_HOST='ServerIP/FQDN',MASTER_USER='ReplClient', MASTER_PASSWORD='ClientPassword',MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=120;

输入show slave status\G

再输入:start slave;重新输入show slave status\G   ,显示如下参数

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

即同步设置成功

 注意:部分服务器可能需要开启3306端口,或关闭防火墙设置才可生效。


进入二进制日志目录,输入下面语句可查看二进制日志:

mysqlbinlog --no-defaults  mysql-bin.000001 | more

若编译安装的Mysql,选择mysql安装目录下执行Mysql/bin/mysqlbinlog 

 

数据恢复

Mysql/bin/mysqlbinlog --no-defaults  mysql-bin.000001 |mysql –u –root –p(password) (可选database)

 

Linux mysql 数据库备份

Mysqldump –uroot –p database –l –F ‘/home/backup.sql’

-l 指锁定数据库表。只能读,不能写。

-F 指flushlogs , 可以重新生产新的日志文件。包括log-bin日志

 

数据导入:mysql –uroot –p (可选database) -v –f  < /home/backup.sql

-v查看导入的详细信息

-f 当中间遇到错误,可以skip,继续执行下面语句

 

查看bin-log日志,可以根据Position或者根据时间段恢复


例如通过Bin-log日志恢复position段100到500 的数据:

1、先查看position段中日志,确实是否需要恢复

mysqlbinlog –no-defaults mysql-bin.000002 --start-position=”100”--stop-position=”500” |more

注意position100可能不会恢复。因为执行语句在Position日志之上。

--start-position和--stop-position可选择一个执行。无需同时存在。

Btw:时间段恢复参数为:--stop-date= “2014-01-01 12:00:00” 、

--start-date = “2014-01-01 12:00:00”

 


 

 

 

 

 

MYSQL主从灾难恢复 MySQL一主一从,当主库操作系统宕机无法启动,vip已漂移到从库,原从库成为主库单实例支撑业务。在新建主机上新建MySQL实例,配置为当前vip所在实例的从库,恢复MySQL一主一从。 阅读详情

相关推荐

MySQL binlog 核心解析:数据恢复、主从复制与实战配置指南

在数据库系统中,日志机制是保障数据一致性与可靠性的基石,它记录了所有数据变更操作,为系统提供了可追溯性和故障恢复能力。其核心原理在于通过顺序记录数据修改事件,确保在发生意外时能够基于日志进行状态重建。这一技术对于构建高可用的数据架构具有重要价值,尤其在数据安全、系统容灾和业务连续性等场景中不可或缺。具体到MySQL数据库,binlog(二进制日志)正是实现这一机制的关键组件,它支持数据恢复、主从复制和数据审计等核心功能。本文将以数据恢复和主从复制这两个高频需求为切入点,深入剖析binlog的三种记录格式(S

weixin_30924087的博客 482

MySQL主从复制的恢复

本文主要分析了MySQL主从复制中从库无法初始化中继日志信息结构的问题,并提供了解决方案。问题可能由relaylog元信息表损坏、数据目录权限问题或relaylog文件缺失引起。解决步骤包括:1) 在从库清理复制配置;2) 从主库获取当前binlog位点;3) 在从库重新设置复制信息;4) 启动复制;5) 检查复制状态。关键字段如Slave_IO_Running和Slave_SQL_Running用于确认复制是否正常运行。通过这些步骤,可以有效解决从库复制中断的问题。

童龙辉的博客 1402

MySQL通过Binlog恢复数据

Binlog简介 开启Binlog 使用Binlog恢复数据

撸码社区的博客 1万+

MySQL Binlog(主从同步/数据恢复) 及 mysqldump:

MySQL主从同步、数据恢复 mysqldump数据备份

梦~' 7952

第四阶段【MySQL数据库:主从复制】18:基于复制的数据恢复方法

基于复制的数据恢复方法

weixin_40612128的博客 731

应急响应之windows日志分析工具logparser使用

windows日志分析工具logparser使用介绍

u013930899的博客 8123

MySQL主从恢复数据

由于一些原因导致从库与主库的数据不同步,可以重新全量同步主从的数据 1.锁表并吧内存中的数据保存到binlog中 FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS; 2.导出数据 bin/mysqldump --single-transaction --master-data=2 -uroot -p123456 --all-databases > dbdump_20190128.sql 3.从库恢复数据 停止slave stop s..

qq_18629653的博客 612

麒麟V10(arm)配置本地离线yum源

麒麟V10(arm)配置本地离线yum源

myfm2java的博客 7885

Java-90 深入浅出 MySQL Binlog 全解析:记录模式、主从复制与数据恢复详解

MySQL Binlog(二进制日志)用于记录所有数据库结构变更(DDL)及数据修改(DML),不包含只读操作。它以事件形式保存,支持三种记录模式:ROW(记录行变化,数据一致性高)、STATEMENT(记录SQL语句,节省空间)、MIXED(混合模式,兼顾两者)。Binlog 是主从复制的核心基础,主库将事件传输给从库重放,实现读写分离、负载均衡及灾备;同时支持数据恢复,可配合 mysqlbinlog 工具按时间或位置点精确回放,实现增量恢复。其文件由多种 Log Event 组成

谢谢你的喜欢 我们一起无限进步 1325

STM407ZET6+OV5640调试心得

最近一个项目用了STMF407ZET6 +OV5640,调试了好几天做些总结; STMF407ZET6 开发板用的是正点原子的开发板,OV5640摄像头用的是秉火摄像头; 这其中有一个大坑,开发板的DCMI接口跟摄像头的接口不一样,要重新用杜邦线进行连接; 本人是在正点原子的“”15,ATK-OV5640摄像头模块“”源码上进行修改的。

kingseacjh的专栏 8325

RK3588与银河麒麟V10 SP1 2403深度适配:国产化硬件与操作系统的完美融合

本文深入探讨了RK3588处理器与银河麒麟V10 SP1 2403操作系统的深度适配,展示了国产化硬件与操作系统的完美融合。通过性能验证和实际应用测试,证明了这套组合在多媒体处理、AI推理和日常办公中的卓越表现,实现了完全自主可控的计算平台。

weixin_29194255的博客 249

MySQL binlog 三种格式(STATEMENT / ROW / MIXED)深度解析:主从复制与数据恢复必须弄懂的核心机制

STATEMENT 更轻但不安全,ROW 最安全但最大,MIXED 是折中策略。强一致用 ROW,一般业务用 MIXED,读多写少可考虑 STATEMENT。主从复制是否可靠数据恢复是否完整业务安全性是否有保障的关键设计点。

dividividiv的博客 1863

华为Atlas 300I推理卡驱动安装避坑指南:不同安装方式的选择与优化

本文详细解析华为Atlas 300I推理卡驱动安装的三种主流方式(.run、.rpm和源码编译),提供关键环境检查步骤、安装流程优化建议及常见问题解决方案,帮助开发者高效完成芯片推理卡部署并规避典型安装陷阱。

q9w8e7r6t5的博客 431

mysql主节点数据恢复_Mysql 主从复制+数据恢复

1、主服务器Master配置:#设置数据库标识server_id=1#任何一个事务提交之后就立即写入到磁盘中的二进制文件sync_binlog=1#保持数据一致性,建议配置innodb_flush_log_at_trx_commit=1#开启服务器二进制日志log-bin=mysql-bin#设置log格式binlog_format=MIXED#不记录二进制数据库的数据binlog-ignore-...

weixin_35572715的博客 462

Openclaw错误排查及解决方案之:Previous run is still shutting down. Please try again in a moment.

Openclaw错误排查及解决方案之:Previous run is still shutting down. Please try again in a moment.

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程 232

html2canvas - 解决截图后引入的字体样式丢失问题,第三方字体截图导出图片后字体失效,html2canvas截屏生成图片后艺术字体就丢失并且自动转成常规字体了,特殊字体显示不了无法截图怎么办

vue2,vue3,uniapp,html2canvas截图后引入的字体样式丢失,html2canvas艺术字截图不显示,使用外部字体无效,html2canvas无法识别网络字体文件怎么办,ttf文件,网页使用在线字体链接利用html2canvas无法截取,字体样式没有了,font-family第三方字体,@font-face引入本地字体文件后无法被html2canvas识别怎么办,html2canvas文字消失,vue页面正常显示艺术字体但截屏后没有,html2canvas截图存在特殊字体时截图不全,默认

✅ 精选推荐文章 1万+

大数据-265 实时数仓-Canal MySQL Binlog配置详解:从原理到实践|数据恢复与主从复制实战

MySQL Binlog(二进制日志)是数据库变更追踪的核心机制,本文详解 2026 年最新 MySQL 8.0 环境下 binlog 的配置方法与工作原理。涵盖 binlog 三大日志格式(STATEMENT/ROW/MIXED)对比、常用查看命令、配置授权流程,以及与 Canal 配合实现主从复制的实战步骤。适用于 DBA、后台开发工程师及数据工程师进行数据库运维与架构设计。

谢谢你的喜欢 我们一起无限进步 6719

基于 Qt C++ 的战术通信终端

logMessage(QString("新客户端连接来自: %1:%2").arg(incomingTcpSocket->peerAddress().toString()).arg(incomingTcpSocket->peerPort()));logMessage(QString("服务器已启动,在 [%1]:%2 监听IPv6连接...").arg(ui->lineEditAddress->text()).arg(port));

寒寒豆豆软件公司的博客 77

Mysql主从删字段_搭建mysql主从复制和删库数据恢复策略

搭建主从复制主机:[mysqld] 下增加vim /etc/my.cnf## 设置 server_id,一般设置为 IPserver_id=8# # 复制过滤:需要备份的数据库,输出 binlogbinlog-do-db=testdb#复制过滤:不需要备份的数据库,不输出(mysql 库一般不同步)binlog-ignore-db=mysql# 开启二进制日志,以备 Slave 作为其它 Slav...

weixin_42450002的博客 311

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

大数据-264 实时数仓-MySQL Binlog配置详解:从原理到实践|数据恢复与主从复制实战

MySQL Binlog(二进制日志)是数据库变更追踪的核心机制,本文详解 2026 年最新 MySQL 8.0 环境下 binlog 的配置方法与工作原理。涵盖 binlog 三大日志格式(STATEMENT/ROW/MIXED)对比、常用查看命令、配置授权流程,以及与 Canal 配合实现主从复制的实战步骤。适用于 DBA、后台开发工程师及数据工程师进行数据库运维与架构设计。

谢谢你的喜欢 我们一起无限进步 6344

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

MySQL Binlog深度解析:从数据恢复到主从复制与实时数据流处理

在数据库管理与数据架构领域,日志系统是保障数据一致性与可靠性的核心技术基础。其核心原理在于记录数据库的所有变更操作,形成可追溯的事件序列,为数据恢复和同步提供底层支持。这一机制的技术价值不仅体现在灾难恢复时的数据回滚能力,更是构建高可用架构、实现实时数据分发的基石。在应用场景上,它支撑着数据库主从复制、跨系统数据同步、实时分析管道等关键业务。本文聚焦MySQL的二进制日志(Binlog),深入探讨其作为**数据恢复**与**主从复制**核心引擎的实现细节,涵盖ROW/STATEMENT/MIXED三种格式的

weixin_30387799的博客 359

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

MySQL主从复制----Binlog日志(常用操作、数据恢复)

MySQL常见日志 Error log 错误日志 General query log 普通查询日志 Slow query log 慢查询日志 Binary log 二进制日志 下面重点描述二进制日志 Binary log ,Binary log 简写为 binlog 其作用: 1、增量备份(只备份新增的) 2、主从复制 在MySQL5.7中binlog默认不开启,现在我们去看下 ...

攻城狮 2720

MySQL binlog日志详解 查询和数据恢复 细节 ops范围数据恢复 时间节点范围 MySQL数据恢复 数据库备份 主从复制 增量恢复

MySQL binlog日志详解 查询和数据恢复 细节 按时间点 按操作id顺序范围 数据恢复 数据库备份 主从复制 增量恢复 MySQL Binlog是二进制格式的日志文件,二进制日志记录对数据发生或潜在发生更改的SQL语句,并以二进制的形式保存在磁盘中。用来记录Mysql内部对数据库的改动(只记录对数据的修改操作)。可以用来查看数据库的变更历史(具体的时间点所有的SQL操作)、数据库增量备份和恢复(增量备份和基于时间点的恢复)、Mysql的复制(主主数据库的复制、主从数据库的复制)。

Benjamin 优快云博客 3244

MySql主从复制原理

1、什么是主从复制?概念 主从复制是用来建立一个和 主数据库完全一样的数据库环境称为从数据库;主数据库一般是准实时的业务数据库。2、主从复制作用我们来思考如果在企业网站中,后端MYSQL数据库只有一台时候,会有以下问题:1、单点故障服务不可用2、无法处理大量的并发数据请求3、数据丢失所以通过主从复制后,它的优点就很明显1、如果主节点出现故障,那么我们就直接将服务切到从节点,来保证服务立马可用。2、如果并发请求特别大的时候,我们可用进行读写分离操作,让主库负责写,从库负责读。

qq_37436172的博客 3638

Mysql BinLog存储机制详解与数据恢复

一,BinLog Redo Log 是属于InnoDB引擎所特有的日志,而MySQL Server也有自己的日志,即 Binary log(二进制日志),简称Binlog。Binlog是记录所有数据库表结构变更以及表数据修改的二进制日志,不会记录SELECT和SHOW这类操作。Binlog日志是以事件形式记录,还包含语句所执行的消耗时间。 一般情况下,开启Binlog日志有以下两个最重要的使用场景: 主从复制:在主库中开启Binlog功能,这样主库就可以把Binlog传递给从库,从库拿到 Bin..

FYHannnnnn的博客 2227

MySql数据恢复Binlog实操详解

Binlog 介绍 ​ 如其名:二进制日志类型:记录所有的除查询语句(Select、show等)外的DDL、DML语句等数据库操作语句。 ​ 二进制日志由包含“事件”的文件组成,这些文件描述了对数据库内容的修改。服务器以二进制格式写入这些文件。要以文本格式显示其内容使用 mysqlbinlog。 用途 主从复制:一主二从来举例:master节点开启binlog,master将binlog日志传递给二从(slaves)来实现主从数据同步。 数据恢复:通过mysqlbinlog可实现数据恢复,这里我们侧重

长臂人猿的博客 1493
下一篇: linux 下 grep 分析 Apache 服务器日志
Hey_Linux
博客等级 码龄12年 0粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值