您的位置:首页 > 数据库 > MySQL

MySQL二进制日志的备份和恢复

2016-06-03 16:14 579 查看
二进制日志:记录数据库修改的相关操作,作用是即时点回复,主从复制

可以按时间滚动,也可以按大小滚动

server-id:服务器身份标识

一、二进制文件的删除方法,千万不要手动删除

PURGE BINARY LOGS TO 'mysql-bin.010';

PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';

二、常用的操作:

SHOW MASTER STATUS;

FLUSH LOGS;

SHOW BINARY LOGS;

SHOW BINLOG EVENTS IN ‘log_file’\G;

查看从某个点开始的操作:

mysqlbinlog --start-position=123 mysql-bin.000001 > fansik.sql

mysqlbinlog

--start-time

--stop-time

--start-position

--stop-position

三、MySQL记录二进制日志的格式:

基于语句:statement

基于行:row

混合模式:mixed

四、MySQL二进制日志内容格式:

事件发生的日期和时间

服务器ID

事件的结束位置

事件的类型

原服务器生成此事件的线程ID

语句的时间戳和写入二进制日志文件的时间差

错误代码

事件内容

事件位置,相当于下一个事件的开始位置

五、服务器参数

log_bin = {ON|OFF}还可以是个文件路径

log_bin_trust_function_creators

sql_log_bin = {ON|OFF}

sync_binlog

binlog_format = {statement|row|mixed}

max_binlog_cache_size =

二进制日志缓冲空间大小,从MySQL5.5.9以后,仅用于缓冲事务类的语句

max_binlog_stmt_cache_size

事务类和非事务类语句共用的缓冲区大小

max_binlog_size = 二进制日志文件的上限

建议:切勿将二进制日志与数据文件放在同一设备

六、中继日志

relay_log_purge={ON|OFF}

是否自动清理不再需要的中继日志

七、备份和恢复

1、灾难恢复;

2、审计

3、测试

备份:目的用于恢复,对备份数据做恢复测试

备份类型:

根据备份时,数据库是否在线:

冷备:cold backup

   温备:warm backup

   热备:hot backup

根据备份的数据集:

   完全备份:full backup

   部分备份:partial backup

根据备份时的接口(直接备份数据文件还是通过MySQL服务器导出数据):

   物理备份(physical backup):直接复制(归档)数据文件的备份方式

   逻辑备份(logical backup):把数据从库中提出来保存为文本文件

根据备份时是备份整个数据还是仅备份变化的数据

   完全备份:full backup

   增量备份:incremental backup

   差异备份:differential backup

八、备份策略

选择备份方式

选择备份时间

考虑到恢复成本

恢复时长

备份成本:锁时间、备份时长、备份负载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: