在mysql 安装后可以启动 bin-log 功能,以记录数据库的数据操作的记录,必要时候恢复数据,

转载 2013年12月06日 09:01:27


MySQL 日志的启用与关闭

[日期:2011-05-18] 来源:Linux社区  作者:yy6060 [字体:大 中 小] 

 


 


 

在mysql 安装后可以启动 bin-log 功能,以记录数据库的数据操作的记录,必要时候恢复数据,mysql的日志分为以下几种:

错误日志: -log-err

查询日志: -log

慢查询日志: -log-slow-queries

更新日志: -log-update

二进制日志: -log-bin

查看是否启用了日志:

mysql>show variables like 'log_%';

要启动mysql 的二进制日志,很简单,步骤如下:

一 配置mysql 的my.ini,在[mysqld] 下添加

log-bin = C:/Program Files/MySQL/MySQL Server 5.0/log-bin/logbin.log

上面是配置mysql二进制日志存放的目录,目录可以随便指定,我是在mysql安装的根目录下新建了log-bin文件夹作为存放二进制日志文件的目录,在指定路径时要注意以下两点:

1 在目录的文件夹命名中不能有空格,比如“aa bb”文件夹 是不允许的,这样,在访问日志时候会报错;

2 指定目录时候一定要以*.log结尾,即不能仅仅指定到文件夹的级别,如上面我写的logbin.log,这时候,日志文件的名称是logbin.000001 logbin.000002。。。不然不会有日志文件产生。

二 mysql.ini 修改后,保存,然后重启mysql服务,重启后在C:/Program Files/MySQL/MySQL Server 5.0/log-bin 目录下会产生logbin.000001 和 logbin.index 两个文件。

三 查看二进制文件

在dos命令行中,进入到mysql的安装目录下,即C:/Program Files/MySQL/MySQL Server 5.0,再进到bin/目录下,执行mysqlbinlog命令查看日志:

mysqlbinlog ..\log-bin\logbin.000001

值得注意的是后面的路径问题,路径可以使用绝对路径也可以使用相对路径,分隔符可以是“/"也可以是“\”,两种分割符都能正常识别,路径中的文件夹名称中不能有空格 ,这个测试过(如果是绝对路径C:/Program Files/MySQL/MySQL Server 5.0/log-bin/logbin.000001就会报错找不到文件 因为“C:/Program Files”带空格)

为了方便查看日志内容 可以导出到.sql文件

mysqlbinlog ..\log-bin\logbin.000001 ->a.sql

C:\Program Files\MySQL\MySQL Server 5.0\bin>
C:\Program Files\MySQL\MySQL Server 5.0\bin>mysqlbinlog ..\log_bin_ljs\logbin.000001
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#100830 16:30:55 server id 1 end_log_pos 98 Start: binlog v 4, server v 5.0.
67-community-nt-log created 100830 16:30:55 at startup
# Warning: this binlog was not closed properly. Most probably mysqld crashed wri
ting it.
ROLLBACK/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/ ;

C:\Program Files\MySQL\MySQL Server 5.0\bin>

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2011-05/36177.htm

mysql 通过bin-log恢复数据方法详解

转自:http://www.111cn.net/database/mysql/51632.htm mysql 通过bin-log恢复数据方法详解 mysql中bin-log在mysql默认状...
  • laokaizzz
  • laokaizzz
  • 2016年07月30日 10:49
  • 3302

mysql通过bin-log日志恢复

我们同事在操作数据库的时候不小心删除了一个表里面的内容,这些个内容全是储存的一些用户信息,而且我所在公司也一直没有对数据库进行备份,所以但是就闷逼了,还好开启了bin-log。 恢复是我也遇到了不少...
  • early__xz
  • early__xz
  • 2016年04月01日 14:47
  • 886

mysql通过bin_log恢复数据

一、开启binlog日志:     编辑打开mysql配置文件my.cnf,在[mysqld]区块设置/添加 log-bin=mysql-bin  确认是打开状态(值 mysql-bin 是...
  • nanyanglu
  • nanyanglu
  • 2016年09月26日 15:55
  • 3450

mysql 误操作通过日志数据恢复

今天一不小心把公司的服务器上的数据库给删了,至于怎么会把服务器上的数据库给删了就不说了,说多了都是泪啊。删了以后我赶紧找备份(PS:还好之前有备份这下不怕啦,哈哈!)。赶紧用备份的sql恢复下,回复后...
  • yhjsspz
  • yhjsspz
  • 2013年12月16日 22:44
  • 8026

mysql数据记录基本操作(对数据的增删查改)

mysql中对表中数据的增、删、查、改
  • wbjylk
  • wbjylk
  • 2016年04月12日 09:47
  • 2064

Mysql的Bin log数据恢复:不小心删除数据库

前言:因为不小心删除了测试机器上Mysql的一整个数据库Schema,因为是测试机所以没有做备份,现在通过MySQL的Bin log方式恢复到删除以前的数据库。 当然做Bin log的数据恢复前提是已...
  • spokenInChina
  • spokenInChina
  • 2015年10月22日 20:05
  • 3780

mysql日志记录操作人员的信息以便于追踪

本文观点: 使用init-connect + binlog的方法进行mysql的操作审计。 由于mysql binlog记录了所有对数据库长生实际修改的sql语句,及其执行时间,和connecti...
  • ljasdf123
  • ljasdf123
  • 2013年11月05日 16:13
  • 2642

恢复sqlite数据库中使用delete命令删除的记录

恢复数据库记录源代码: import os.path dbfilename="test.db" f=file(dbfilename, "rb") fout=file("out.db", "wb") ...
  • lzf_china
  • lzf_china
  • 2013年07月16日 20:18
  • 3310

mysql 找回误删表的数据办法

有备份的话很简单,只需要生成一个最近备份的数据 然后用mysqlbinlog找回备份时间点之后的数据 再恢复到现网即可。 要是没有备份 可能就会比较麻烦,找回数据的成本也是非常之高的. 下面介绍下...
  • lxpbs8851
  • lxpbs8851
  • 2013年02月04日 12:14
  • 56352

追踪mysql操作记录时间1.

测试环境莫名其妙有几条重要数据被删除了,由于在binlog里面只看到是公用账号删除的,无法查询是那个谁在那个时间段登录的,就考虑怎么记录每一个MYSQL账号的登录信息,在MYSQL中,每个连接都会先执...
  • bestone0213
  • bestone0213
  • 2015年03月16日 15:43
  • 1679
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在mysql 安装后可以启动 bin-log 功能,以记录数据库的数据操作的记录,必要时候恢复数据,
举报原因:
原因补充:

(最多只允许输入30个字)