2019/04/19 数据库备份

关于二进制相关的各种变量
如何操作二进制相关日志

在这里插入图片描述
可以查看二进制的相关列表
在这里插入图片描述
对比一下在硬盘上两个文件是否这么大
在这里插入图片描述
这两个命令没什么区别都一样
在这里插入图片描述
在这里插入图片描述
表示当前数据库二进制文件处于什么位置
说明二进制写到了什么位置,

在这里插入图片描述
如果对数据库进行后续操作,update
在这里插入图片描述
对数据库有变化,位置变了,大小变了
在这里插入图片描述
在这里插入图片描述
中间差的位置就是这条命令的位置,可想而知,将来恢复数据,可以恢复到刚才的位置
比如在这个位置删除表里,可以选择恢复之前的数据

在这里插入图片描述
查看二进制文件里的数据内容
在这里插入图片描述在这里插入图片描述
基于行的,记录的特别详细
也可以加上from 从哪到哪的
想看这个位置之后的

在这里插入图片描述
这就是看之后的命令
在这里插入图片描述
上面的用的不多,用的多的还是专门的二进制查看工具
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
flush logs生成了一个新日志
在这里插入图片描述
之前是重启服务生成了一个新日志
更改一条数据

在这里插入图片描述
这时候记录写到最新的文件里了
在这里插入图片描述
现在这个文件大小是462
在这里插入图片描述
现在可以把这个文件打开查看内容
默认显示二进制文件所有的数据库信息

在这里插入图片描述头部信息下面245是发生的数据信息在这里插入图片描述
看不到具体命令,另外有选项
在这里插入图片描述
查看具体命令
在这里插入图片描述
原来的是什么,后来生成的是什么
在这里插入图片描述
把这个内容导入到sql脚本里
在这里插入图片描述
刚才改的20号
在这里插入图片描述
修改20号数据
在这里插入图片描述
导入脚本
在这里插入图片描述
原来数据就又回到原来修改过的样子了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对数据库更改都有记录
在这里插入图片描述
这个编号实际上就是大小
在这里插入图片描述
数据文件的大小在变化,每次进行修改都在变大
在这里插入图片描述
这个操作是在435到462之间
在这里插入图片描述
记录的是就是从435到462间的操作
在这里插入图片描述
在这里插入图片描述
mysqkbinlog基本操作格式选项加日志文件
在这里插入图片描述
命令排序的问题,日志文件要求最后放
在这里插入图片描述
在这里插入图片描述
v跟vvv的区别
在这里插入图片描述
当对数据库更改很多的时候,这个文件将会很大
除了多少到多少,还有时间,但是时间不是很准,因为有时候计算机速度太快了,所以有可能在一瞬间发生很多事
所以用什么位置到扫描位置来显示数据比较合理

在这里插入图片描述
从几点几分开始,来显示某个文件
在这里插入图片描述
在这里插入图片描述
还能用指定的编码来显示
在这里插入图片描述
这个就是base64编码
在这里插入图片描述
base64编码本身后面还支持跟上其他选项
在这里插入图片描述
把这个行封装成sql语句,需要配合verbose
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不加选项基于base64编码
update和delete都用base编码显示了

在这里插入图片描述
+v就现实sql语句样式
在这里插入图片描述
在这里插入图片描述
query你要做什么事情
这些是发生的内容
exectime花的时间
在这里插入图片描述
在这里插入图片描述
二进制可以了解操作系统的操作过程,由此可以来恢复
在这里插入图片描述
如果确定数据库已经做好备份,剩下的占的比较大的空间的二进制文件就可以考虑删除
查看二进制文件列表

在这里插入图片描述
可以删除二进制日志
**加粗样式**
把2之前的日志删除了
在这里插入图片描述
在这里插入图片描述
resetmaster是彻底删除 需要10以上版本支持
用rm删除,就需要手动更新索引文件
在这里插入图片描述
这个命令会更新二进制日志
在这里插入图片描述
彻底删除只留下一个在这里插入图片描述
在这里插入图片描述
切换日志
在这里插入图片描述
在这里插入图片描述
数据库的备份与二进制都是密切相关的
在这里插入图片描述
备份的策略都是与你的要求密切相关的
恢复数据需要在多长时间完成
比如备份数据1年,恢复数据 特别慢,有时候是难以忍受的,因为系统往往出了问题,是特别着急恢复的,备份过大,有时候需要备份几天时间,这样我们就需要让这个备份差距不要太大
除了生产中的用户数据,系统数据需要备份吗

在这里插入图片描述
数据是备份了,但是系统一重新装,配置文件就丢了,所以系统的相关配置也需要备份
在这里插入图片描述
在这里插入图片描述
**完全备份就是把整个mysql所有内容备份,包括用户数据,系统数据全部备份
部分备份,就是备份表和数据库
增量备份 (备份上一次完全备份或者增量备份到现在的完全变化
**在这里插入图片描述
如果 星期四系统崩溃了
第一步,要还原数据库就需要先还原全部备份
还有就是必须按照顺序234增量备份

在这里插入图片描述
但是中间的数据就需要二进制文件了
在这里插入图片描述
默认mysql设置是不符合生产要求的
事务日志和数据库文件最好路径要按照默认的,最好放在独立的目录里,一般就是独立的磁盘
还有就是
innodb数据库所有数据文件挤在一个文件里了,要分开,每个表,innodb_per_table
还有就是建立账号
用户链接还存在名字解析的问题,DNS解析禁用了 ,skip——name——resolvf
用户的sql缓存默认是0 (0代表没有空间不缓存)
数据库建立起来,但是每个表还没有索引,看情况还要给某些字段加索引(要用慢查询扫描的观察观察)

增量 备份发现恢复起来太麻烦,其中有一个丢了,后面都没用
差异备份
数据的备份过程

在这里插入图片描述
好处是把前面的都备份了
假如周四系统又崩溃了

在这里插入图片描述
增量备份是还原慢,备份快,差异备份就是还原快,备份慢
有很多企业对于备份是比较严格的,备份下来要测试这个文件是否可以还原
找一个干净电脑测试一下

在这里插入图片描述
完全备份是肯定要做的,因为是后续备份的基础
在这里插入图片描述
冷备就是数据库关了再备份,关了就等于读写都操作不了了
热备就是读写都能执行,希望用户一直能够访问
(myisam不支持热备,因为是不支持事务,只能温备)温备就是加上读锁,只能读不能进行写操作

在这里插入图片描述
物理备份就是复制文件
逻辑备份就是,从数据库利用mysql协议,导出,简单地说就是执行select语句,等于进行全盘扫描放到一个磁盘文件里,
由于是执行数据库的查询导出操作,要去利用mysql协议进行访问,相对来讲,速度是比较慢的,
因为是利用查询语句来备份,所以跟存储引擎也就没有关系,占用空间小
可能丢失精度,因为数据库存,不一定存文本和数字之类的,很多情况下会存二进制数据,比如一些小的文件,图片,
放到数据库有好处就是数据库可以设置权限,但是导出来就有可能丢失这些精度
不够现在类似这样的图片一般不放在数据库里,一般放在文件里,数据库存文件路径

在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值