码迷,mamicode.com
首页 > 数据库 > 详细

mysql如何配置sql记录

时间:2017-07-12 01:14:37      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:讲解   开启   换行   variable   time   不能   zed   否则   developer   

原文链接:http://www.qqdeveloper.com/detail/11/1.html

为什么要记录sql记录

主要目的是为了检测我们的网站安全问题,有效的避免一些sql注入或者是xss攻击。

如何实现

这里主要以windows系统中的my.ini文件为例,Linux系统的配置文件是my.conf,本例中以5.6为例。

    ?方式一

    ?    ?log = "D:/wamp64/logs/mysql.log" // 日子记录文件

    ?    ?log_slow_queries = “D:/wamp64/logs/mysql.log” // 记录日志查询时长的文件

    ?    ?long_query_time = 1 // 查询时长

    ?方式二、

    ?    ?general_log = ON

    ?    ?general_log_file = "D:/wamp64/logs/mysql.log"

    ?方式三、通过命令行实现

        ??首先通过我们的终端登录到mysql中去。输入如下命令即可开启。

        ??set global general_log = on;

        ??set GLOBAL log_output = ‘table‘;

配置注意事项

 

    A 日志存放目录必须提前存在,否则不能记录日志。这里也局势C:/temp目录必须已经存在

    B 日志文件是linux格式的文本,建议用ultraEdit打开,转换为dos格式查看(否则没有换行,看不懂的)

    C 服务在启动状态下不能删除日志文件,否则就无法记录sql语句了。

    D 不能用ultraEdit直接清除文件内容后保存,否则也记录不下来了。需要重启服务,如果ultraEdit保存了.bak,后记录到此文件中。

    E 可以用notepad清除文本后保存,可以继续记录日志。

可能错误讲解

    ?1.当我们采用方式一的时候,可能会提示如下类似的错误信息(改错误信息在mysql默认的日志文件中查看)

    ?    ?option ‘general_log‘: boolean value ‘ON;‘ wasn‘t recognized. Set to OFF.

        ??解决办法采用配置方式二,这样的原因是mysql不同的版本所导致的的。

    ?2.当我们在使用第二个方式配置的时候,可能会提示如下的类似错误信息。

    ?    ?option ‘general_log‘: boolean value ‘ON;‘ wasn‘t recognized. Set to OFF.

    ?    ?解决办法是讲我们的ON配置值改为1即可,这样的原因是mysql不同的版本所导致的的。

    ?3.同样的才使用方式一配置是,可能会出现如下的类似信息。

    ?    ?unknown variable ‘log=D:/wamp64/logs/mysql.log‘

    ?    ?解决办法参考参考链接,改原因都属于版本不同

    ?

    ?

    ?

 

 

mysql如何配置sql记录

标签:讲解   开启   换行   variable   time   不能   zed   否则   developer   

原文地址:http://www.cnblogs.com/qqblog/p/7153054.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!