1. 错误日志
用–log-error[=file_name]选项来指定 mysqld 保存错误日志文件的位置。如果没有给定 file_name 值,mysqld 使用错误日志名 host_name.err 并在数据目录中写入日志文件。如果你执行 FLUSH LOGS,错误日志用-old 重新命名后缀并且 mysqld 创建一个新的空日志文件。(如果未给出–log-error 选项,则不会重新命名)。
如果不指定–log-error,或者(在Windows中)如果你使用–console 选项,错误被写入标准错误输出 stderr。通常标准输出为你的终端。
2. 通用查询日志
用–log[=file_name]或-l [file_name]选项启动它。如果没有给定 file_name 的值,默认名是 host_name.log。
3、查看日志
查看是否启用了日志
代码如下
mysql>show variables like ‘log_%’;
查看当前的日志启用状态
代码如下
mysql> show master status;
显示二进制日志?的?/p>
代码如下
mysql> show master logs;
4、查看二进制日志文件用mysqlbinlog
代码如下
shell>mysqlbinlog /var/log/mysql/mysql-bin.000001
或者shell>mysqlbinlog /var/log/mysql/mysql-bin.000001 | tail
或者shell>mysqlbinlog /var/log/mysql/mysql-bin.000001 –no-default
如果遇到错误提示如下:
代码如下
/usr/local/mysql/bin/mysqlbinlog: unknown variable ‘default-character-set=utf8′
产生这个问题的原因是因为在my.cnf中的client选项组中添加了
代码如下
default-character-set=utf8
选项。
mysqlbinlog不支持这个设置,解决办法有两个:
1、修改配置文件my.cnf(windows下是my.ini)
注释掉default-character-set=utf8
2、执行时添加参数–no-default
代码如下shell>mysqlbinlog –no-default /var/log/mysql/mysql-bin.000001 | tail
为了方便查看日志内容 可以导出到.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>
|