今天看了下《MySQL性能调优与架构设计》的前面部分,看到了日志文件,就实际的做了个测试,这里总结一下。
我使用的是windows下面的mysql,网上linux下的mysql的内容较多,这里权当是一点点的补充了。
MySQL拥有的日志文件类型如下:
- 错误日志:记录了数据库启动、运行以及停止过程中错误信息;
- 二进制日志:记录了所有对数据库数据的修改语句;
- 更新日志:记录了改变数据的语句,已经不建议使用,由二进制日志替代;
- 查询日志:记录了客户端的连接以及所执行的SQL语句;
- 慢查询日志:记录所有执行时间超过最大SQL执行时间(long_query_time)或未使用索引的语句;
- Innodb 的在线redo 日志:Innodb 是一个事务安全的存储引擎,其事务安全性主要就是通过在线redo 日志和记录在表空间中的undo 信息来保证的。
上面的日志文件对应的配置项如下表所示:
错误日志 | --log-error= [filename] |
二进制日志 | --log-bin[=file_name] |
更新日志 | 5.0版本以上不再支持该日志 |
查询日志 | --log[=fina_name] |
慢查询日志 | --log-slow-queries[=file_name] |
Innodb 的在线redo 日志 | 只能改变它的存储位置 |
1.在my.ini文件中配置,即在my.ini文件的末尾加上下面内容:
log-error=c:\err.log
log=c:\log.log
然后重新启动mysql服务即可看到c盘里面的日志文件了,其他的日志文件照此进行即可。2.在启动mysql服务的时候指定:
首先停用mysql,然后跳到mysql的安装目录,如下图:

这样在c盘下面就可以看到全名为mew.log的查询日志的文件了,如果还需要开启其他的日志,mysqld之后加上就可以了,比如:
mysqld --log="c:\new.log" --log-error="c:\error.log"
好,这种启用日志的方式完成。