Mysql备份恢复

Mysql备份恢复
按照备份时对数据库的影响范围分为:
1、Hot backup(热备):(份的同时,业务不受影响)
2、Cold Backup(冷备):(需要关mysql服务,读写请求均不允许状态下进行)
3、Warm Backup(温备):(服务在线,但仅支持读请求,不允许写请求)
按照备份后文件内容:
1、逻辑备份:备份表中的数据导入sql的文件当中 mysqldump(数据导出工具)
2、物理文件备份:在硬盘下的目录进行备份 xtrabackup(热备)
按照备份数据库的内容来分,又可以分为:
1、完全备份:每次对数据进行完整的备份。可以备份整个数据库
2、差异备份:在上一次完全备份基础上,对更新的数据进行备份。
3、增量备份:在上次备份的基础上,对更新的数据进行备份。
4、日志备份:二进制日志备份。慢日志 事务日志 二进制日志(binlog)
逻辑备份工具mysqldump
mysqldump是MySQL数据库自带的一款命令行工具
优点:
备份粒度相当灵活,既可以针对整个MySQL服务,也可以只备份某个或者某几个DB,或者还可以指定只备份某个或者某几个表对象,甚至可以实现只备份表中某些符合条件的记录
缺点:
1、当数据是浮点数时,会出现精度丢失。
2、Mysqldump的备份过程属于逻辑备份,备份速度、恢复速度与物理备份工具相比较慢,而且mysqldump备份的过程是串行化的,不会并行的进行备份

Mysqldump对innodb存储引擎支持热备,innodb支持事务
Mysqldump对myisam存储引擎只支持温备

二进制日志:Binary Log & Binary Log Index
mysql的二进制日志记录着数据库的所有增、删、改等操作日志(前提是要在自己的服务器上开启binlog),还包括了这些操作的执行时间。为了显示这些二进制内容,我们可以使用mysqlbinlog命令来查看。

执行mysql> show variables like ‘log_bin%’;查看binlog是否开启
通过编辑my.cnf中的log-bin选项可以开启二进制日志,形式如下:
log-bin [=DIR/[filename]] 存放位置和名,其形式为filename.number(后面会加入数字编号)
增删改操作会记录到最新的binlog当中
记录binlog的信息 索引清单文件filename.index
开启binary log功能:
修改/etc/my.cnf配置文件,添加如下内容:
log-bin=/data/mysql/log/mysql_bin
server-id=1
重启Mysql服务,使配置文件修改生效
[root@localhost log]# systemctl restart mysqld
查看binlog文件
cd /data/mysql/log/

show variables like ‘log_bin%’;查看bin-log是否开启
show variables like ‘binlog_cache_size’; 显示binlog的缓存大小
show status like ‘binlog_cache%’;查看binlog_cache大小是否够用
show variables like ‘binlog_format’;查看使用的模式是什么模式
show binary logs;查看binlog日志文件列表
show master status; 查看当前使用的二进制文件及日志文件中事件当前位置
restet master;清空index文件中列出的所有二进制日志,并创建一个新的二进制日志文件,
flush logs; 使用flush logs生成新的二进制日志文件,用以保存之后的数据库操作语句的记录。重启mysqld也可以生成新的binlog文件
mysqlbinlog -vv log_file 查看binlog日志文件的内容
set sql_log_bin=0;在还原时可临时关闭二进制日志后再还原 1还原

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值