数据备份与还原

数据备份与还原

备份:将当前已有的数据或者记录保留
还原:将已经保留的数据恢复到对应的表中

为什么要做备份还原?
1.防止数据丢失:被盗,误操作
2.保护数据记录

数据备份还原的方式有很多种:数据表备份,单表数据备份,SQL备份,增量备份。

数据表备份

不需要通过SQL备份:直接进入到数据库文件夹复制对应的表结构以及数据文件,以后还原的时候,直接将备份的内容放进去即可。

数据表备份有前提条件:根据不同的存储引擎有不同的区别

存储引擎:MYSQL进行数据存储方式innoDB和myisam


对比innoDB和myisam:数据存储方式

InnoDB: 只有表结构,数据全部存储到ibdata1文件中
myisam: 表数据和索引全部单独分开存储

frm是结构
MYD是数据
MYI是索引
这种文件备份通常适用于myisam存储引擎:直接复制三个文件即可,然后直接放到对应的数据库下就可使用


单表数据备份

每次只能备份一张表:只能备份数据(表结构不能备份)

通常的使用:将表中的数据进行导出到文件

备份:从表中选出一部分数据保存到外部的文件中(outfile)

select */字段列表 into outfile 文件所在路径 from 数据源; -- 前提是外部文件不存在

高级备份:自己定制字段和行的处理方式

select */字段列表 into outfile 文件所在路径 fields 字段处理 lines 行处理 from 数据源;

fields:字段处理
enclosed by: 字段使用什么内容包裹,默认是“,空字符串
terminated by:字段以什么结束,默认是“\f”,tab键
escaped by:特殊符号用什么方式处理默认是'\\',使用反斜杠转义

lines处理:
starting by:每行以什么开始,默认是' ',空字符串
terminated by:每行以什么结束,默认是''\r\n",换行符

 

 

 

数据还原

将一个在外部保存的数据重新恢复到表中(如果表结构不存下那么sorry)

load data infile 文件所在路径 into table 表名 【字段列表】fields 字段处理 lines 行处理;
怎么备份的就怎么还原

 

SQL备份

备份的是SQL语句:系统会对表结构以及数据进行处理,变成对应的SQL语句,然后进行备份;还原的时候只要执行SQL指令即可(主要就是针对表结构)

备份:mysql没有提供备份指令:需要利用mysql提供的软件:mysqldump

mysqldump/mysqldump.exe -hpup 数据库名字 [数据表名字1] [数据表名字2...] > 外部文件.sql (建议使用.sql)


单表备份


整库备份

 

SQL还原

SQL还原数据:两种还原方式
方案一:使用mysql 客户端还原
mysql -hPup 数据库名字 < 备份文件目录

 

方案二:使用SQL指令还原
source 备份文件所在路径


SQL备份优缺点
1.优点:可以备份结构
2.缺点:会浪费空间(额外的增加SQL指令)


增量备份

不是针对数据或者SQL指令进行备份:是针对mysql服务器的日志文件进行备份

增量备份:指定时间段开始进行备份,备份数据不会重复,而是所有的操作都会备份(大项目都用增量备份)

 

转载于:https://www.cnblogs.com/sunhao96/p/7992105.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值