MySQL全量、增量备份与恢复的简单方法

2023-05-16

本文主要给大家介绍MySQL全量、增量备份与恢复的简单方法,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL全量、增量备份与恢复的简单方法吧。
数据备份的重要性1、在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果
2、造成数据丢失的原因
程序错误
人为错误
计算机失败
磁盘失败
灾难(如地震等)和偷窃
数据库备份的分类一、从物理与逻辑的角度,备份可分为:
1、物理备份:对数据库操作系统的物理文件(如数据文件、日志文件等)的备份物理备份又可以分为脱机备份(冷备份)和联机备份(热备份):-冷备份:是在关闭数据库的时候进行的-热备份:数据库处于运行状态,这种备份方法依赖于数据库的日志文件2、逻辑备份:对数据库逻辑组件(如表等数据库对象)的备份二、从数据库的备份策略角度, 备份可分为:
1、完全备份:每次对数据进行完整的备份2、差异备份:备份那些自从上次完全备份之后被修改过的文件3、增量备份:只有那些在.上次完全备份或者增量备份后被修改的文件才会被备份注意点:差异备份与增量备份相辅相成一、MySQL完全备份(全量备份)1、完全备份是对整个数据库的备份、数据库结构和文件结构的备份2、完全备份保存的是备份完成时刻的数据库3、完全备份是增量备份的基础完全备份的优点
备份与恢复操作简单方便完全备份的缺点
1.数据存在大量的重复2.占用大量的备份空间3.备份与恢复时间长备份方法一、MySQL数据库的备份可以采用用多种方式
1.直接打包数据库文件夹,如/usr/local/mysql/data2.使用专用备份工具mysqldump**二、mysqldump命令
1.MySQL自带的备份工具,相当方便对MySQL进行备份2.通过该命令工具可以将指定的库、表或全部的库导出为SQL脚本,在需要恢复时可进行数据恢复三、使用mysqldump命令对单个数据库进行完全备份
mysqldump -u用户名  -p [密码] [选项]  [数据库名] > /备份路径/备份文件名四、使用mysqldump命令对多个库进行完全备份
mysqldump -u 用户名 -p [密码] [选项] --databases 库名1 [库名2]... >/备份路径/备份文件名五、使用mysqldump命令对所有库进行完全备份
mysqldump  -u用户名  -p [密码] [选项]  --all-databases > /备份路径/备份文件名mysqldump备份表在实际生产环境中,存在对某个特定表的维护操作,此时mysqldump同样发挥重大作用
1.使用mysqldump备份表的操作
mysqldump  -u 用户名  -p [密码] [选项]  数据库名 表名 > /备份路径/备份文件名2.使用mysqldump备份表结构的操作
mysqldump  -u 用户名  -p [密码] [选项] -d 数据库名 表名 > /备份路径/备份文件名恢复数据库一、使用mysqldump命令导出的SQL备份脚本,在进行数据恢复时可使用以下方法导入
source命令     #数据库模式中运行mysql命令      #Linux模式中运行1、使用source恢复数据库的步骤
●登录到MySQL数据库●执行source备份sq|脚本的路径(绝对路径)MySQL [(none)] > source /backup/all-data.sql#source命令恢复2、使用mysql命令恢复数据

通过在总部与分支之间部署云专线,利用Vecloud的协议,还可以实现双边加速,利用普通的互联网链路,实现专线的使用效果。独有的链路复制功能,实现重要业务的双重备份。
mysql  -u用户名  -p [密码]  < 库备份脚本的路径mysql -u root  -p < /backup/all-data.sql#mysql命令恢复二、使用mysqldump进行完全备份的存在的问题
●备份数据中有重复数据●备份时间与恢复时间长恢复数据表操作1、恢复表时同样可以使用source或者mysql命令进行2、source恢复表的操作与恢复库的操作相同3、当备份文件中只包含表的备份,而不包括创建库的语句时,必须指定库名,且目标库必须存在.生产环境中,可以使用shell脚本自动实现定期备份mysql -u用户名-p [密码] < 表备份脚本的路径mysql -u root -p mysql < /backup/mysql-user.sql#mysql命令恢复表MySQL备份思路1、定期实施备份,制定备份计划或者策略,并严格遵守2、除了进行完全备份,开启MySQL云服务器的日志功能是很重要的●完全备份加上日志,可以对MySQL进行最大化还原MySQL-bin:MySQL数据库的二进制日志,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息。可以使用mysqlbin命令查看二进制日志的内容3、使用统一的和易理解的备份文件名称●不要使用backup1、backup2等这样没有意义的名字●推荐使用库名或者表名加上时间的命名规则二、MySQL增量备份增量备份就是备份自上一次备份之后增加或变化的文件或者内容
增量备份的特点
●没有重复数据,备份量不大,时间短●恢复麻烦:需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对所有增量备份进行逐个反推恢复MySQL没有提供直接的增量备份方法
可以通过MySQL提供的二进制日志(binary logs)间接实现增量备份MySQL二进制日志对备份的意义
●二进制日志保存了所有更新或者可能更新数据库的操作●二进制日志在启动MySQL云服务器后开始记录,并在文件达到max_ binlog_size所设置的大小或者接收到flush logs命令后重新创建新的日志文件●只需定时执行flush logs方法重新创建新的日志,生成二进制文件序列,并及时把这些旧的日志保存到安全的地方就完成了一个时间段的增量备份查看二进制日志文件(解码)mysqlbinlog --no-defaults --base64-output=decode-rows -V mysql-bin.000002 > /opt/ bak. txtMySQL数据库增量恢复概述一般恢复
基于位置回复就是将某个起始时间的二进制日志导入数据库中,从而跳过某个发生错误的时间点实现数据的恢复
基于时间点恢复使用基于时间点的恢复,可能会出现在一个时间点里既同时存在正确的操作又存在错误的操作,所以我们需要一种更为精确的恢复方式
增量恢复的方法1.一般恢复
mysqlbinlog  [--no-defaults]  增量备份文件 | mysql -u用户名 -p2.基于位置的恢复
恢复数据到指定位置
mysqlbinlog --stop-position=操作'id'  进制日志 | mysql -u用户名 -p 密码从指定的位置开始恢复数据
mysqlbinlog --start-position=操作'id' 二进制日志 | mysql -u用户名 -p 密码3.基于时间点的恢复
从日志开头截止到某个时间点的恢复
mysqlbinlog [--no-defaults] --stop-datetime='年-月-日 小时:分钟:秒' 二进制日志 | mysql -u用户名 -p 密码从某个时间点到日志结尾的恢复
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小时:分钟:秒' 二进制日志 | mysql -u用户名 -p 密码从某个时间点到某个时间点的恢复
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小时:分钟:秒' --stop-datetime='年-月-日 小时:分钟:秒' 二进制日志 | mysql -u用户名 -p 密码
看完以上关于MySQL全量、增量备份与恢复的简单方法,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL全量、增量备份与恢复的简单方法 的相关文章

随机推荐

  • Nginx(二)初识配置文件【简单认识】

    版本 xff1a nginx x86 64 1 1 14 0 1 el7 4 ngx cat nginx conf 定义Nginx运行的用户和用户组 user nginx nginx进程数 xff0c 建议设置为等于CPU总核心数 work
  • MacBookM1远程连接云服务器安装boche+pintos

    1 前言 因为M1芯片的缘故 xff0c 没法直接在虚拟机 xff08 PD VMware xff09 上操作实验 xff0c 故出此下策 如果有条件还是希望uu们在装配有windows系统的笔记本上操作 此方法基于远程连接 xff0c 因
  • Vmware 实现自动\开机启动\关机挂起

    1 编写脚本 start bat ping 127 0 0 1 n 5 设置登录后 过几秒钟再启动虚拟机 34 C Program Files x86 VMware VMware Workstation vmrun exe 34 start
  • Python爬虫——BeautifulSoup的基本使用

    Python爬虫 BeautifulSoup的基本使用 安装beautifulsoup4模块 pip span class token function install span beautifulsoup4 1 创建BeautifulSo
  • python环境:本地有网服务器的python环境,迁移到离线服务器

    A服务器的虚拟环境 xff0c 迁移到离线服务器B xff08 已安装好anaconda xff09 设 xff1a A服务器的虚拟环境名称为 xff1a flask env 创建虚拟环境 在A服务器data01目录下 使用mkdir创建目
  • ROI管理与客户需求管理

    转自 xff1a http semwatch org 2010 02 roi management and client demand 作者 xff1a Gaoge 日期 xff1a 二月 26 2010 分类 xff1a 付费搜索SEM
  • 人脸识别过程

    做人脸识别的朋友很多不知道人脸识别过程 xff0c 人脸识别厂家人脸识别过程 人脸识别第一步先进行图像采集 xff0c 人脸定位 xff0c 特征提取 xff0c 特征对比 xff0c 人脸资料存储 xff0c 识别成功就可以开门 xff0
  • 个人博客的三种方式

    创建个人博客的三种方式 1 博客平台 简书 CSDN 知乎专栏等 特点 xff1a 简单 xff0c 可控性低 申请个账号就可以写 xff0c 其他的都不用管 限制多 xff0c 界面 排版 有没有广告自己说了不算 xff0c 什么能发什么
  • GitHub 简介

    用详细的图文对GitHub进行简单的介绍 git是一个版本控制工具 xff0c github是一个用git做版本控制的项目托管平台 主页介绍 xff1a overview xff1a 总览 相当于个人主页 repositories xff1
  • Markdown 编辑器推荐和常用语法介绍

    Markdown 是非常好用的文档编写方式 下面是我的 Markdown 学习总结 不求详尽 xff0c 只求简明 编辑器 xff1a 我目前使用的 Markdown 编辑器是 Joplin xff0c 感觉挺好用 我对编辑器的需求是 xf
  • 使用 Hexo 在 Github 上建博客

    先确认 git 与 npm 已经安装 xff0c 在终端输入以下命令 git version npm version 安装 hexo xff0c 在终端输入 npm install hexo cli g 安装过程中如果报错 解决方法 xff
  • ping命令的过程

    ping命令的过程 1 ping是什么 xff1f PING Packet Internet Groper xff0c 因特网包探索器 xff0c 用于测试网络连通性的程序 Ping发送一个ICMP Internet Control Mes
  • Hexo 更换主题

    更换 Hexo 主题非常容易 xff0c 只要在 themes 文件夹内 xff0c 新增一个任意名称的文件夹 xff0c 并修改 config yml 内的 theme 设定 xff0c 即可切换主题 具体步骤 xff1a 1 安装主题
  • Python 爬虫零基础教程(0):简介及准备

    其他的教程往往从语法开始 xff0c 而我们直接开始爬虫 xff0c 语法等知识边做边学 这第0篇我们简单介绍下爬虫和编程工具 爬虫是什么 爬虫是自动浏览 保存网页内容的程序或脚本 爬虫不同于黑客 xff0c 爬虫爬取的是允许访问的内容 工
  • 如何解决Unable to parse template "Interface"Error Message;

    Unable to parse template Interface Error Message This Template did not Produce a Java Class or an interface关于这个错误 xff0c
  • inflate函数使用总结

    inflate 两个参数和三个参数的区别 以前使用没有关注过 xff0c 因为觉得没报bug就行了 xff0c 两个三个参数无所谓 xff0c 经过导师提醒 xff0c 决定好好看看源码和相关知识 xff0c 总觉一下区别 xff0c 以免
  • 除了csdn网站打不开,一直刷新等待没反应,其他网站都能正常访问

    DNS错误 自动获取DNS服务器地址 清除DNS缓存信息 ipconfig span class token operator span flushdns 重置winsock 目录设置 netsh winsock reset
  • org.slf4j用法

    org slf4j用法 Scala 1 创建Logger对象 private val logger Logger 61 LoggerFactory getLogger classOf HttpBmlClient 2 打印错误信息 同时抛出异
  • 安装图形界面、VNCserver

    centos7 安装图形界面 xff1a 第一步 xff1a 安装Gnome包 在命令行下 输入下面的命令来安装Gnome包 yumgroupinstall 34 GNOMEDesktop 34 34 GraphicalAdministra
  • MySQL全量、增量备份与恢复的简单方法

    本文主要给大家介绍MySQL全量 增量备份与恢复的简单方法 xff0c 文章内容都是笔者用心摘选和编辑的 xff0c 具有一定的针对性 xff0c 对大家的参考意义还是比较大的 xff0c 下面跟笔者一起了解下MySQL全量 增量备份与恢复