1、找到my.ini (对于windows来说,在C:\ProgramData\MySQL\MySQL Server 5.6\里面)
2、配置为:
# General and Slow logging.
log-output=FILE
general-log=1
general_log_file="D:/MySQL56/sql.log"
即可看到每次操作的sql语句。
我用在spring里对MySQL通过中文关键字进行模糊查询时,查询不到结果,最终发现MySQL执行的SQL语句里中文变成了乱码。
又经过一番折腾,发现原来是用base64还原成中文字符的时候还原错了,指定为utf8就可以了。
str = new String(Base64.decodeBase64(keywords), "UTF-8");
明明是ANSI的中文字符打印成log却是UTF8的,可能是log4j自动将其转换了。让我误以为传到HQL语句里的字符格式没问题。
但是不知道为什么在我本地PC上正常,在服务器上是乱码。