MySQl 全局日志

Geleral log记录了服务器接收到的每一个查询或是命令,无论这些查询或是命令是否正确甚至是否包含语法错误,
general log 都会将其记录下来,记录的格式为{Time,Id,Command,Argument }。也正因为mysql服务器需
要不断地记录日志,开启General log会产生不小的系统开销.因此Mysql默认是把General log关闭的。 我们
可以通过修改Mysql全局变量来开启General log功能或是更改日志存放路径。
注意:mysql5.0版本,如果要开启slow log、general log,需要重启,从MySQL5.1.6版开始,general query log
和slow query log开始支持写到文件或者数据库表两种方式,并且日志的开启,输出方式的修改,都可以在Global级别动态修改。

1:查看输出是到文件还是表
mysql> show variables like 'log_output';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | FILE  |
+---------------+-------+
1 row in set (0.00 sec)


2:查看genernal路径
mysql> show global variables like '%general%';
+------------------+------------------------------+
| Variable_name    | Value                        |
+------------------+------------------------------+
| general_log      | OFF                           |
| general_log_file | /tmp/general.log |
+------------------+------------------------------+
2 rows in set (0.00 sec)
general_log的值为OFF,所以当前general_log是关闭的。general_log_file变量的值是日志文件的路径。

输出到file:
mysql> set global log_output='FILE';
Query OK, 0 rows affected (0.00 sec)

mysql> set global general_log_file='/tmp/general.log';
Query OK, 0 rows affected (0.01 sec)


3:通过 set global general_log = on; 命令开启General log。

4:最后我们可以从/tmp/genernal.log文件中查看相应日志信息。

posted @ 2015-03-28 14:07  study-notes  阅读(326)  评论(0编辑  收藏  举报