1、binlog 基本认识
MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是失误安全型的.
一般来说开启二进制日志大概会有1%的性能损耗(参见MySQL官方中文手册 5.1.24版).二进制有两个最重要的使用场景:
其一是:MySQL Replication在Master端开启binlog,Mster把它的二进制日志传递给slaves来达到master-slave数据一致的目的.
其二:自然就是数据恢复了,通过使用mysqlbinlog工具来即使恢复数据.
二进制日志包括两类文件:二进制日志索引文件(文件名后缀为.index)用于记录所有的二进制文件,二进制日志文件(文件名后缀为.00000*)记录数据库所有的DDL和DML(除了数据查询语句)语句事件。
2、Mysql 二进制文件开启
Mysql 默认关闭了二进制日志,因此在mysql安装完成过后需要手动设置 配置文件:my.ini/my.cnf ,保持设置重启mysql 即可。
在配置文件 中:
[mysqld]
Log-bin=”二进制日志文件存储路径/文件名” (默认路径为数据目录,二进制文件)
例:log-bin=”d:/mysql/mylog” 建议将日志文件与数据文件存储在不同盘上。
默认设置将对所以数据库相关操作进行记录。通过如下参数设置可以指定只对某些数据库开启二进制日志文件。
Bin-do-log=db_name(需要开启二进制日志文件的数据库 ,多个数据库则要重复设置)
Binlog-do-log=db_name ….
Binlog-ignore-db=db_name(无需开启二进制日志文件的数据库,多个数据库则要重复设置)
Binlog-ignore-db=db_name…
注:bin-do-db,bin-ignore-db 为互斥关系,只需设置其中一项即可。
3、二进制日志查看及维护
3.1查看
1、 在mysql 客户端输入 show master status; 查看二进制是否开启,并针对那些数据库开启二进制日志文件 如图(1)。若返回值为 empty,则表示未开启二进制日志文件
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(1)
File:当前记录数据库操作的二进制文件,.000001为二进制日志文件扩展名。
Position:当前二进制文件中,记录的起始位置。
2、 在客户端输入:show master logs/show binary bogs,查看所有二进制日志文件及其大小如图(2)。注:重启mysql 或者二进制文件达到默认最大值(1G),系统会开启新的二进制文件。
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(2)
3、 在客户端输入:show binlog events [ in ‘log_name’][from pos][limit [offset] row_count],用于在二进制日志中显示事件 如图(3)。如果您不指定'log_name',则显示第一个二进制日志。
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(3)
3.2 维护—客户端命令
1、flush logs,告诉服务器关闭当前的二进制日志文件并创建一个新文件。
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(4)
2、客户端中通过:purge master logs命令可以根据实际情况删除过期的二进制文件。
PURGE {MASTER | BINARY} LOGS TO 'log_name'
PURGE {MASTER | BINARY} LOGS BEFORE 'date'
用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除,这样被给定的日志成为第一个。
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(5)
3、客户端中输入:reset master ,可以删除列于索引文件(logname.index )中的所有二进制日志,把二进制日志索引文件重新设置为空,并创建一个新的二进制日志文件
关于MySQL二进制日志Binlog的认识1—设置、客户端命令
图(6)
分享到:
相关推荐
mysqlbinlog
mysqlbinlog.exe处理二进制日志文件!想看增量备份的dml日志文件,却看不懂,这个文件可以帮你查看,不弄多说,你懂的。 提示: 有的人说用了这个文件也看不了!那是你无能,见下面方法: 1、把mysqlbinlog.exe放到...
phpStudy的mysql没有这个 mysqlbinlog文件,不能查看二进制文件,下载这个附件后解压后的EXE文件放到phpStudy\MySQL\bin下即可使用
mysqlbinlog.exe mysqlbinlog.exemysqlbinlog.exemysqlbinlog.exemysqlbinlog.exe
详细讲解了mysqlbinlog数据库库回复的详细过程,减少了参数的冗余性造成的命令看不懂得现象
mysqlbinlog用于处理二进制日志文件的实用工具详解mysqlbinlog 从二进制日志读取语句的工具。在二进制日志文件中包含的执行过的语句的日志可用来帮助从崩溃中恢复。
mysqlbinlog二进制日志资料.pdf
网上非常少的两个执行程序mysqldump.exe程序,mysqlbinlog.exe程序网上好多这方面的资料,但是下载程序却好少
使用mysqlbinlog工具恢复删除的数据库记录.docx
解决phpstudy没有mysqlbonlog.exe问题。包含三个文件:mysqlbinlog.exe(主);msvcp120.dll(依赖);msvcr120.dll(依赖)把三个文件放置在MySQL\bin目录下即可。我测试5.3和5.7下都可以用,不同版本应该可以通用
windows mysqlbinlog Ver 3.4 for Win64 at x86_6,windows系统下的mysqlbinlog程序,使用方法与linux下一致,添加到环境变量即可直接调用
mysqlbinlog_flashback, 产生在线mysqlbinlog的回滚的sql
先私信后购买,解析binlog利器,回滚恢复误删除数据
文章链接 http://blog.csdn.net/sinat_29461437/article/details/70809605
mysqlbinlog和binlog2sql的使用及mysql通过binlog日志恢复数据库数据
binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点。
mysqlbinlog二进制日志.pdf