为什么要进行MySQL增量备份?

news2024/11/17 9:31:56

进行MySQL增量备份的原因主要包括以下几点:

  1. 节省存储空间:增量备份只备份自上次全量或增量备份以来更改过的数据,而不备份所有数据。相比全量备份,增量备份生成的文件通常较小,可以显著减少存储空间的使用。
  2. 减少备份时间:由于只需要备份变更的数据,增量备份所需的时间通常比全量备份要短,尤其是数据量很大的情况下,增量备份能有效加快备份过程。
  3. 降低服务器负载:增量备份的数据量较小,备份期间对服务器资源的占用也较少,能减轻服务器的负担,从而降低对业务的影响。
  4. 高效的恢复方案:通过结合全量备份和增量备份,可以在数据恢复时提供灵活性。管理员可以先恢复最近的全量备份,然后应用增量备份来恢复到最新状态。
  5. 更高的备份频率:由于增量备份效率较高,可以更频繁地进行备份,确保数据的丢失风险降到最低。

增量备份通常与全量备份和差异备份结合使用,能提供更高效的备份与恢复方案,尤其适用于数据变化频繁的大型数据库。

如何使用二进制日志运行 MySQL 增量备份?

使用 MySQL 的二进制日志 (binary log) 进行增量备份是一种高效的方法,因为二进制日志记录了所有对数据库的更改操作(如 INSERT、UPDATE、DELETE 等)。以下是通过二进制日志运行 MySQL 增量备份的步骤:

1.1. 运行show variables like '%log_bin%'; MySQL 命令行客户端中的命令。

1.2. 如果 log_bin 的值为“ON”,则直接进入第 2 步;如果值为OFF,则编辑 MySQL 服务器配置文件以启用二进制日志。

★如何启用二进制日志?

首先,必须确保 MySQL 服务器启用了二进制日志功能。可以通过编辑 MySQL 配置文件 my.cnf(或 my.ini)来启用二进制日志。

首先,必须确保 MySQL 服务器启用了二进制日志功能。可以通过编辑 MySQL 配置文件 my.cnf(或 my.ini)来启用二进制日志。

配置步骤:

在 [mysqld] 配置部分添加以下内容:

[mysqld]

log-bin=mysql-bin

server-id=1

  1. log-bin 用于启用二进制日志并指定日志文件的前缀(如 mysql-bin)。
  2. server-id 是用于标识服务器的唯一 ID,必要时可用于主从复制。

之后,重新启动 MySQL 服务以应用配置:

sudo systemctl restart mysql

自上次完整备份以来修改了 MySQL 数据库中的数据后,您可以按照以下步骤运行增量备份:

2.1. 在 MySQL 命令行客户端中执行以下命令。不要关闭 MySQL Command LineClient,以便您可以在步骤 3.3 中继续使用它。

[pasword]

flush binary logs;

show binary logs;

2.2. 复制所有二进制日志,范围从最后一次完整或增量备份的那一刻到最后一次备份到备份位置。您可以在提升的命令提示符中运行以下命令。

cd C:\ProgramData\MySQL\MySQL Server 8.0\Data(指定二进制日志的目录位置)

copy DESKTOP-J6AHKLA-bin.000019 D:\MySQLBackup(指定要复制的文件和目标路径)

copy DESKTOP-J6AHKLA-bin.000020 D:\MySQLBackup

exit

“注意:” 不能在一个复制命令中指定多个文件名。

2.3. 复制二进制日志文件后,必须删除它们,以便在下一次复制时它们不会复制已经备份的数据。执行以下命令删除旧的二进制日志并退出 MySQL 命令行客户端。

将二进制日志清除到“DESKTOP-J6AHKLA-bin.000021”;(DESKTOP-J6AHKLA-bin.000021之前的二进制日志全部删除)

exit

至此你已经完成了MySQL的增量备份。

如何从 MySQL 增量备份中恢复?

当您的 MySQL 数据库遇到数据丢失或损坏时,可以按照以下步骤进行恢复。以下内容经过浓缩和修改,以简洁且有效的方式呈现:

步骤 1:关闭二进制日志

为了防止恢复过程中产生的日志记录影响数据库,需要暂时关闭二进制日志。

1.1. 打开 MySQL 配置文件 my.ini,在 [mysqld] 部分添加以下行:

skip-log-bin

1.2. 保存配置文件后,重新启动 MySQL 服务:

  • 在“服务”窗口中找到 MySQL 服务,右键点击选择“重新启动”。

1.3. 检查二进制日志是否已关闭,使用 MySQL Command Line Client 输入以下命令:

SHOW VARIABLES LIKE '%log_bin%';

确保 log_bin 的值为 OFF。

步骤 2:从完整备份和增量备份中恢复数据库

2.1. 删除原始数据库并创建一个新的空数据库:

DROP DATABASE test;  -- 替换 'test' 为你的数据库名CREATE DATABASE test;

EXIT;

2.2. 使用管理员身份运行命令提示符并依次恢复完整备份和二进制日志。

恢复数据库:

mysql -u root -p test < D:\MySQLBackup\full_backup.sql  # 完整备份文件路径

恢复增量备份(导入二进制日志):

mysqlbinlog D:\MySQLBackup\DESKTOP-J6AHKLA-bin.000020 | mysql -u root -p

如果有多个二进制日志文件,按升序依次执行:

mysqlbinlog D:\MySQLBackup\DESKTOP-J6AHKLA-bin.000021 | mysql -u root -p

mysqlbinlog D:\MySQLBackup\DESKTOP-J6AHKLA-bin.000022 | mysql -u root -p

步骤 3:重新启用二进制日志

3.1. 编辑 my.ini 文件,将 [mysqld] 部分中的 skip-log-bin 行删除。

3.2. 重新启动 MySQL 数据库服务以启用二进制日志。

小结:

  1. 关闭二进制日志,避免影响恢复过程。
  2. 恢复完整备份和增量备份。
  3. 重新启用二进制日志并重启服务。

通过这些步骤,您可以安全、有效地恢复丢失或损坏的 MySQL 数据库。

创建 MySQL 增量/差异备份的更简单方法

如您所见,使用二进制日志执行MySQL增量备份和恢复的整个过程复杂且耗时。由于它们是命令行操作,如果您在备份和还原过程中出错,您将没有机会返回。

幸运的是,强大的MySQL备份软件傲梅企业备份标准版提供了一个用户友好的界面,使事情变得更容易。更重要的是,您可以在确认后修改设置并执行操作。以下是其主要特点:

✦ 您可以根据需要进行系统备份、磁盘/分区备份或文件备份。
✦ 您可以创建MySQL文件全量备份任务,备份所有数据或运行增量/差异备份以仅备份更改的数据。
✦ 您可以安排MySQL文件备份自动运行,并启用智能删除机制来删除过时的备份。
✦ 它支持所有 Windows Server 和 PC 操作系统,包括 Windows Server 2019/2016/2012/2008 和 Windows 10/8/7。

使用傲梅企业备份标准版备份MySQL数据库文件,只需要备份数据目录即可。如果它是隐藏的,首先显示隐藏的项目。下面一步一步学习如何做MySQL文件增量备份。请注意,第一次备份必须是完整备份。

步骤 1.下载傲梅企业备份标准版试用。安装并启动它。

步骤 2.单击左侧面板中的"备份并选择""文件备份"

步骤 3.为任务命名并选择"添加文件夹"以添加 MySQL 数据库文件夹。您可以一次添加多个数据库文件夹。

提示:要备份所有的MySQL数据库文件,可以添加整个数据目录进行备份。

步骤 4.指定保存备份映像的目标路径。它支持各种备份存储设备.

步骤 5.如果需要,单击"计划任务""备份策略"进行更多配置。单击"“开始备份”"以运行MySQL 全量备份。

步骤 6.数据修改后做MySQL文件增量备份,进入"首页"找到MySQL全量备份任务。展开下拉菜单并选择"备份">"增量备份"

"提示:"如果您在 MySQL 全量备份期间启用了"计划任务",程序将默认运行增量备份。

总结

如果你想在 Windows 上执行 MySQL 增量备份,可以参考以下两种方法:

二进制日志:通过 MySQL 的二进制日志功能,手动进行增量备份。这种方法需要启用二进制日志,并依靠命令行工具进行备份和恢复,操作较为复杂。

傲梅企业备份标准版:相比之下,使用傲梅企业备份标准版更为简单。这款工具具有强大的功能,能够自动化增量备份和恢复过程,适合企业环境中频繁备份的需求。

选择傲梅企业备份标准版不仅能够简化操作,还能提供更多的备份管理功能,提高备份的效率和安全性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2133474.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习平台|基于java的移动学习平台系统小程序(源码+数据库+文档)

学习平台|学习平台系统|在线学习平台系统小程序 目录 基于java的移动学习平台系统小程序 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码…

合宙Air201资产定位模组LuatOS入门课程:FOTA远程升级,点点鼠标就搞定

你是否也经常吐槽&#xff1a;开发是个苦差事&#xff01;做项目一时爽&#xff0c;遇到升级火葬场。 如果你也有这种困惑&#xff0c;可以多了解了解合宙的开发工具&#xff0c;简单实用又高效&#xff0c;甚至只需点点鼠标&#xff01; 本期&#xff0c;我们来学习合宙Air2…

Ubuntu 20.04 Linux无法访问GitHub问题

Ubuntu 20.04 Linux无法访问GitHub问题 使用ip查找在线工具&#xff1a;工具查询 http://github.com和http://github.global.ssl.fastly.net的ip地址 终端输入&#xff1a; sudo gedit /etc/hosts 打开hosts文件&#xff1b;将刚刚两个ip地址输入到hosts文件中。 wq关掉并保存…

【D3.js in Action 3 精译_022】3.2 使用 D3 完成数据准备工作

当前内容所在位置 第一部分 D3.js 基础知识 第一章 D3.js 简介&#xff08;已完结&#xff09; 1.1 何为 D3.js&#xff1f;1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践&#xff08;上&#xff09;1.3 数据可视化最佳实践&#xff08;下&#xff09;1.4 本章小结 第二章…

【油猴脚本】00004案例 Tampermonkey油猴脚本引入js库,使表格可以拖拽移动

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 【油…

react 组件化开发_生命周期_表单处理

组件基本介绍 我们从上面可以清楚地看到&#xff0c;组件本质上就是类和函数&#xff0c;但是与常规的类和函数不同的是&#xff0c;组件承载了渲染视图的 UI 和更新视图的 setState 、 useState 等方法。React 在底层逻辑上会像正常实例化类和正常执行函数那样处理的组件。 因…

携手鲲鹏,长亮科技加速银行核心系统升级

新经济周期下&#xff0c;银行净息差持续收窄、盈利压力加大、市场竞争日趋加剧。同时&#xff0c;国家相关政策不断出台&#xff0c;对金融科技的自主创新与安全可控提出了更高要求。 在这样的大背景下&#xff0c;银行业的数字化转型已经步入深水区。其中&#xff0c;核心系统…

vmware esxi 6.5 开启 snmp 服务

学习目标&#xff1a; 如何开启 vmware esxi 6.xx 开启 snmp 服务 查看SNMP 是否开启状态&#xff1a; 如何开启SNMP&#xff1a; 1.用 MAC、Linux SSH 工具 (如 SecureCRT) 连接 esxi 2、修改 SNMP 配置文件 vi /etc/vmware/snmp.xml3 、将标签 false 改为 true 在 后加上…

yolov8-obb中存在的一个bug

yolov8支持OBB目标检测,且能提供较好的性能。 但是最近在使用yolov8-obb的过程中,发现yolov8-obb存在一个bug。即训练数据如果包含不带旋转角度的水平目标时,训练出的模型,经常会输出垂直的检测框,需要旋转90度以后才能得到最终结果。把yolov8-obb相关的源码阅读一遍才发…

2024 年浙江省网络安全行业网络安全运维工程师项目 职业技能竞赛网络安全运维工程师(决赛样题)

2024年浙江省网络安全行业网络安全运维工程师项目 职业技能竞赛网络安全运维工程师&#xff08;决赛样题&#xff09; 应急响应&#xff1a;1 通过流量分析&#xff0c;找到攻击者的 IP 地址2 找到攻击者下载的恶意文件的 32 位小写 md5 值3 找到攻击者登录后台的 URI4 找到攻击…

TC3xx系列芯片--PortDio模块介绍

1、模块介绍 Port(端口)是芯片与板上其他外设或逻辑电路交互的重要引脚&#xff0c;用于芯片发出控制信号或接收外部信号。通过GPIO模式或各类通讯模式&#xff0c;对板载设备进行控制。 Aurix TC3xx系列芯片具有丰富的Port连接&#xff0c;而且每个Pin脚具有多种功能复用&am…

828华为云征文 | 使用Flexus云服务器X实例部署GLPI资产管理系统

828华为云征文 | 使用Flexus云服务器X实例部署GLPI资产管理系统 1. 部署环境说明2. 部署基础环境2.1. 操作系统基本配置2.2. 部署Nginx2.3. 部署MySQL2.4. 部署PHP 3. 部署GLPI资产管理系统 1. 部署环境说明 本次环境选择使用华为云Flexus云服务器X实例&#xff0c;因为其具有高…

【应用笔记】Cot Menu 轻量级多级菜单控制框架程序(C语言)

【应用笔记】Cot Menu 轻量级多级菜单控制框架程序&#xff08;C语言&#xff09; 前言: 工作需要, 实现一个串口打印的类shell菜单. 如果按照以往的习惯我会自己重新"构思"(狗屎)一个菜单框架.之前用oled和lcd时,我都从零重复造轮子. 作为一个成熟的程序员, 应该要学…

野火霸天虎V2学习记录1

文章目录 嵌入式开发常识汇总1、嵌入式Linux和stm32之间的区别和联系2、stm32程序下载方式3、Keil5安装芯片包4、芯片封装种类5、STM32命名6、数据手册和参考手册7、什么是寄存器、寄存器映射和内存映射8、芯片引脚顺序9、stm32芯片里有什么10、存储器空间的划分11、如何理解寄…

HFish开源蜜罐系统常见问题排查

HFish开源蜜罐系统常见问题排查 HFish是一款社区型免费蜜罐&#xff0c;侧重企业安全场景&#xff0c;从内网失陷检测、外网威胁感知、威胁情报生产三个场景出发&#xff0c;为用户提供可独立操作且实用的功能&#xff0c;通过安全、敏捷、可靠的中低交互蜜罐增加用户在失陷感知…

Pr:Adobe SRT

Adobe SRT&#xff08;Secure Reliable Transport&#xff09;主要用于远程传输高质量视频&#xff0c;特别是在不稳定或高延迟的网络环境中。 1、实时流媒体传输 Adobe SRT 支持实时视频传输&#xff0c;确保即使在低带宽或高延迟的网络条件下&#xff0c;仍能够可靠地发送高质…

第J1周:ResNet-50算法实战与解析

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 文章目录 一、前期工作1、ResNet-50总体结构2、设置GPU3、导入数据 二、数据预处理1、加载数据2、可视化数据3、再次检查数据4、配置数据集 三、构建ResNet-50…

建筑节能监测系统解决方案

jianzhunenghao 建筑节能监测系统公共建筑能耗监测系统建筑能耗监测系统节能监测系统能耗监测建筑能耗监测能耗分析能耗管理能耗预测能耗监控能耗监测平台建筑能耗 介绍 能耗监控系统是为耗电量、耗水量、耗气量&#xff08;天然气量或者煤气量&#xff09;、集中供热耗热量…

无人机建模详解!!!

一、无人机拍摄 1. 准备工作 了解场地信息&#xff1a;在规划航线之前&#xff0c;需要了解场地的范围、地貌、树木遮挡情况、建筑和树木高度等&#xff0c;以便为后续的规划航线提供帮助。 选择拍摄时间&#xff1a;最佳拍摄条件为光线充足且风速较小的天气的10点-16点&…

校园管理系统创新:Spring Boot框架应用案例

第4章 系统设计 4.1 系统体系结构 校园管理系统的结构图4-1所示&#xff1a; 图4-1 系统结构 登录系统结构图&#xff0c;如图4-2所示&#xff1a; 图4-2 登录结构图 校园管理系统结构图&#xff0c;如图4-3所示。 图4-3 校园管理系统结构图 4.2开发流程设计 系统流程的分…