当前位置:首页 > 开发 > 数据库 > 正文

Mysqlbinlog使用

发表于: 2014-07-04   作者:duyangsss   来源:转载   浏览次数:
摘要: 1、binlog 基本认识 MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是失误安全型的. 一般来说开启二进制日志大概会有1%的性能损耗(参见MySQL官方中文手册 5.1.24版).二进制有两个最重要的使用场景: 其一是:MySQL Replication在M
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使用

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
【目标】使用mysqldump做全备,结合mysql自带的binlog功能实现增量备份 为了操作方便,建议开启两个
timepicker是datepicker的一个插件,需要单独下载,可datepicker配合使用的话,可以实现用户精确到
使用AHKActionSheet https://github.com/fastred/AHKActionSheet 基本配置代码: AHKActionSheet *ac
使用DIDatepicker https://github.com/noxt/DIDatepicker 效果: #import "DIViewController.h" #imp
1.简单示例: 1.1新建一个待测的类: Code namespace bank { public class Account { private float
 1. 到官网下载Windows环境下的MongoDB。 http://www.mongodb.org/ 这个就不赘述了。 2. 如下图所
1,先安装nodejs(npm),Git 2,安装bower cmd执行到在项目文件夹下路径,执行npm install bower 3,
JFreeChart一个免费的Java图表库.JFreeChart支持饼图(2D和3D),条形图(水平和垂直,整齐堆叠),线图,散
项目来源: https://github.com/xuwj/ToolbarDemo#userconsent# 一、V7包升级问题 折腾好久,终于解
转自于:http://www.cnblogs.com/TangPro/p/3250320.html 打开ERstudio,点击新建出现如图对话框:
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号