磨刀不误砍柴工-Windows下MySQL日志查看

缘起

近日在研究MyBatis的缓存机制,作为前置条件,自然要了解一些JDBC的缓存机制,比如PreparedStatement就是JDBC缓存的一个体现,将预编译的SQL语句缓存在服务端数据库中,当然这是后话。
想要直观的看到PreparedStatement预编译的动作自然想到日志,毕竟日志分级就是为了记录所有服务端的操作信息。习惯了在Linux服务器下查看各种日志信息,现在想在家里的windows电脑上模拟一个这样的环境,希望能对回家后还会写点东西且没有远程linux服务器可以给你调用的同学有点帮助。

开启MySQL日志功能
MySQL服务端安装后,打开其命令行客户端工具,也就是command line client。
这里写图片描述

输入安装时设置的密码后,进入mysql命令行,这个大家应该都知道。
输入
show variables like “log%”;
可以看到,MySQL安装后,日志功能是默认关闭的

这里写图片描述


接下来就是如何打开MySQL的日志功能,找到MySQL安装目录下的my.ini文件,经常修改MySQL服务端配置的同学对这个文件肯定不陌生,就好比于我们集成MyEclipse/Eclipse的插件经常会去修改myeclipse.ini文件一样。

打开my.ini,找到[msqld]部分,加入以下命令
[mysql]
log=”F:\Studio\MySQL\logs”,这个地址就是我们设置存放logs文件的路径。

# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this 
# file.
#
[mysqld]
log="F:\Studio\MySQL\logs\mysql.log"

这里写图片描述

修改保存后,重启mysql服务,再次输入查看日志相关配置的命令
mysql> show variables like “log%”;

应该就可以看到
这里写图片描述


一切顺利的话,此时打开配置的日志路径,就能看到目录下的mysql.log文件了
这里写图片描述


看到这里,不管是做开发还是做运维的同学是不是不由想到了什么,好熟悉的.log文件,看到这个后缀的文件就会忍不住想tail -f xxx.log,是不是!

当然,如果此时你兴冲冲地打开cmd,进入mysql.log,只会是下面这个结果。
这里写图片描述

这个肯定是能预料到的,因为你的windows啊,大哥!所以你需要让windows系统识别tail命令。

tail.exe下载地址

下载tail.exe,把tail.exe放到c:\windows\system32\目录下,就可以在命令行中使用tail命令了。
这里写图片描述
在这里就我们就可以看到MySQL的查询日志了,当然还有很多其他级别的日志。


错误日志: -log-err
查询日志: -log
慢查询日志: -log-slow-queries
更新日志: -log-update
二进制日志: -log-bin


打开这些日志的方式和上面所展示的-log一样,在此就不赘述,有了日志平台,我们就可以更加直观地捕捉MySQL做了哪些事,为我们理解相关的ORM持久化框架的底层机制提供了很多信息上的帮助。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章