bmwm3 发表于 2018-10-3 06:29:26

MySQL中的日志类型(二)-General query log

简介
  General query log记录客户端的连接和断开,以及从客户端发来的每一个SQL语句。
日志内容格式
  General query log可以记录在文件中,也可以记录在表中,格式如下:
  在文件中会记录时间、线程ID、命令类型以及执行的语句
  示例如下:

  当日志记录在表中时,还会记录账号信息,示例如下:

记录时间
  General Query Log在数据库接收到客户端发来的语句时进行记录。这意味着General Query Log的顺序可能和实际语句执行的顺序是不同的。
设置方法
  General Query Log可以在数据库启动时开启,也可以在数据库运行时开启。
  在数据库启动前:
  设置--general_log来开启日志
  设置--log_output=来确定日志存放的位置。
  设置--general_log_file=file_name来确定日志文件的名称和目录。
  在数据库运行时:
  修改全局变量来修改日志设置
  修改general_log、log_output、general_log_file的值来修改相关设置,例如:
  SET GLOBAL general_log=1
  SET GLOBAL log_output='FILE';
  此外,可以通过设置sql_log_off的值为ON或OFF来禁用或启用当前连接的General query log。
其他
  数据库会根据log_output的值将日志写入到文件或表中。
  但是不论log_output的值为多少,当开启日志时(或者刷新日志文件时),都会在日志文件中写入一个启动的消息。启动信息示例如下:


页: [1]
查看完整版本: MySQL中的日志类型(二)-General query log