MySQL实现全量,增量备份与恢复方法

  

下文主要给大家带MySQL来实现全量,增量备份与恢复方法,希望这些内容能够带给大家实际用处,这也是我编辑MySQL实现全量,增量备份与恢复方法这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

数据备份的重要性

 1,在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果
  
  2,造成数据丢失的原因
  程序错误
  人为错误
  计算机失败
  磁盘失败
  灾难(如地震等)和偷窃

数据库备份的分类

一、从物理与逻辑的角度,备份可分为:

 1,物理备份:对数据库操作系统的物理文件(如数据文件,日志文件等)的备份
  物理备份又可以分为脱机备份(冷备份)和联机备份(热备份):
  ——冷备份:是在关闭数据库的时候进行的
  ——热备份:数据库处于运行状态,这种备份方法依赖于数据库的日志文件
  
  2,逻辑备份:对数据库逻辑组件(如表等数据库对象)的备份

二,从数据库的备份策略角度,备份可分为:

 1,完全备份:每次对数据进行完整的备份
  
  2,差异备份:备份那些自从上次完全备份之后被修改过的文件
  
  3、增量备份:只有那些在。上次完全备份或者增量备份后被修改的文件才会被备份
  
  注意点:差异备份与增量备份相辅相成

MySQL完全备份(全量备份)

 1,完全备份是对整个数据库的备份,数据库结构和文件结构的备份
  
  2,完全备份保存的是备份完成时刻的数据库
  
  3,完全备份是增量备份的基础

完全备份的优点

<>之前备份与恢复操作简单方便

完全备份的缺点

 1。数据存在大量的重复
  2 .占用大量的备份空间
  3 .备份与恢复时间长

, mysqldump备份库

一、MySQL数据库的备份可以采用用多种方式

 1。直接打包数据库文件夹,如/usr/地方/MySQL/数据
  2 .使用专用备份工具,mysqldump 

二,,mysqldump命令

 1. MySQL自带的备份工具,相当方便对MySQL进行备份
  2.通过该命令工具可以将指定的库、表或全部的库导出SQL脚为本,在需要恢复时可进行数据恢复

三、使用,mysqldump命令对单个数据库进行完全备份

<>之前,mysqldump - u用户名- p[密码][选项][数据库名]比;/备份路径/备份文件名

四、使用,mysqldump命令对多个库进行完全备份

<>之前,mysqldump - u用户名- p[密码][选项)——数据库库1名(库名2]…祝辞/备份路径/备份文件名

五、使用,mysqldump命令对所有库进行完全备份

<>之前,mysqldump - u用户名- p[密码][选项)——所有数据库比;/备份路径/备份文件名

, mysqldump备份表

<>之前在实际生产环境中,存在对某个特定表的维护操作,此时,mysqldump同样发挥重大作用

1。使用,mysqldump备份表的操作

<>之前,mysqldump - u用户名- p[密码][选项]数据库名表名的在/备份路径/备份文件名

2。使用,mysqldump备份表结构的操作

<>之前,mysqldump - u用户名- p[密码][选项)- d数据库名表名的在/备份路径/备份文件名

恢复数据库

一、使用,mysqldump命令导出的SQL备份脚本,在进行数据恢复时可使用以下方法导入

源命令,,,,,#数据库模式中运行
  mysql命令,,,,,# Linux模式中运行

1,使用源恢复数据库的步骤

●登录到MySQL数据库
  ●执行源备份平方|脚本的路径(绝对路径)
 MySQL[(一)]比;源/备份/all-data.sql
  #源命令恢复

2。使用mysql命令恢复数据

 mysql - u用户名- p[密码]& lt;库备份脚本的路径
 mysql - u root - p & lt;/备份/all-data.sql
  # mysql命令恢复

二、使用,mysqldump进行完全备份的存在的问题

●备份数据中有重复数据
  ●备份时间与恢复时间长

恢复数据表操作

 1,恢复表时同样可以使用源或者mysql命令进行
  
  2、源恢复表的操作与恢复库的操作相同
  
  3、当备份文件中只包含表的备份,而不包括创建库的语句时,必须指定库名,且目标库必须存在。生产环境中,可以使用shell脚本自动实现定期备份
  
  mysql - u用户名- p[密码]& lt;表备份脚本的路径
 mysql - u root - p mysql & lt;/备份/mysql-user.sql
  # mysql命令恢复表

mysql备份思路

 1,定期实施备份,制定备份计划或者策略,并严格遵守
  
  2,除了进行完全备份,开启MySQL云服务器的日志功能是很重要的
  ●完全备份加上日志,可以对MySQL进行最大化还原
  MySQL-bin: MySQL数据库的二进制日志,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息。可以使用mysqlbin命令查看二进制日志的内容
  
  3、使用统一的和易理解的备份文件名称
  ●不要使用backup1, backup2等这样没有意义的名字
  ●推荐使用库名或者表名加上时间的命名规则

MySQL实现全量,增量备份与恢复方法