MySQL通用查询日志

  • 错误日志(Error log):记录启动、运行或停止mysqld遇到的问题;
  • 通用查询日志(General query log):记录服务器接收到的每一个命令,包括客户端连接以及sql执行记录等;
  • 二进制日志(Binary log):记录引起或可能引起数据更改的SQL,用于数据还原以及主从复制;
  • 中继日志(Relay log):从复制源服务器收到的数据更改日志;
  • 慢查询日志(Slow query log):执行时间超过long_query_time和没有使用索引的sql,用来发现并调优一些慢sql;
  • DDL日志(DDL log (metadata log)):DDL语句执行的元数据操作。

1. 通用查询日志设置

  MySQL通用查询日志用来记录用户的所有操作,包括启动和关闭MySQL服务、insert/update/delete/select语句等。mysqld按照接收语句的顺序将执行语句写入查询日志,这可能与它们实际的执行顺序不同,该日志记录顺序不同于二进制日志,二进制日志的执行顺序是在语句执行之后但释放任何锁之前。此外,查询日志只包含select语句,而仅仅是select的语句不写入二进制日志。

  默认情况下,常规查询日志处于禁用状态,要明确指定初始常规查询日志状态,使用全局系统变量 --general_log[={0|1}],不带参数或参数为1时, --general_log启用日志,参数为0时,此选项禁用日志;使用 --general_log_file=file_name 指定日志文件名,使用系统变量log_output指定日志目标。

  • 通用查询日志输出格式:log_output=[none|file|table|file,table]
  • 是否启用通用查询日志:general_log=[on|off]或者general_log=[1|0]
  • 通用查询日志位置及名字:general_log_file[=filename]
mysql>  SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | OFF                           |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.05 sec)

  MySQL通用查询日志默认名称为host_name.log(host_name为主机名),除非给出绝对路径名以指定其他目录,否则服务器将在数据目录中创建通用日志文件。

  服务器重启和日志刷新不会生成新的常规查询日志文件(尽管刷新会关闭并重新打开它),重命名文件并创建一个新文件,使用以下命令:

shell> mv host_name.log host_name-old.log
shell> mysqladmin flush-logs
shell> mv host_name-old.log backup-directory

2. 通用查询日志使用

  开启通用查询日志:

mysql> SET GLOBAL general_log = 'ON';
Query OK, 0 rows affected (0.02 sec)

mysql>  SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | ON                            |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.00 sec)

mysql>  show variables like 'log_output';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | FILE  |
+---------------+-------+
1 row in set (0.00 sec)

  执行增删改查看一下通用查询日志记录:

mysql> use dbcy;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed

mysql> select * from t1;
+-----+--------+
| tid | tname  |
+-----+--------+
|  16 | 钟一   |
|  17 | 赵二   |
|  18 | 张三   |
|  19 | 李四   |
|  20 | 王五   |
+-----+--------+
5 rows in set (0.00 sec)

mysql> delete from t1 where tid=16;
Query OK, 1 row affected (0.07 sec)

mysql> insert into t1 values(1,'狗十三');
Query OK, 1 row affected (0.06 sec)

mysql> update t1 set tid=2 where tid=1;
Query OK, 1 row affected (0.10 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>  select * from t1;
+-----+-----------+
| tid | tname     |
+-----+-----------+
|   2 | 狗十三    |
|  17 | 赵二      |
|  18 | 张三      |
|  19 | 李四      |
|  20 | 王五      |
+-----+-----------+
5 rows in set (0.00 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T02:09:44.391267Z	    8 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T02:09:55.013330Z	    8 Query	show databases
2020-07-29T02:09:58.566908Z	    8 Query	SELECT DATABASE()
2020-07-29T02:09:58.585828Z	    8 Init DB	dbcy
2020-07-29T02:09:58.587318Z	    8 Query	show databases
2020-07-29T02:09:58.588165Z	    8 Query	show tables
2020-07-29T02:09:58.591758Z	    8 Field List	t1 
2020-07-29T02:09:58.596068Z	    8 Field List	t2 
2020-07-29T02:09:58.597682Z	    8 Field List	tb_cylog 
2020-07-29T02:09:58.599708Z	    8 Field List	tb_notice 
2020-07-29T02:09:58.601173Z	    8 Field List	v_cylog 
2020-07-29T02:10:01.523953Z	    8 Query	show tables
2020-07-29T02:10:09.588382Z	    8 Query	select * from t1
2020-07-29T02:10:27.835936Z	    8 Query	delete from t1 where tid=16
2020-07-29T02:10:56.377920Z	    8 Query	insert into t1 values(1,'狗十三')
2020-07-29T02:11:30.086557Z	    8 Query	update t1 set tid=2 where tid=1
2020-07-29T02:11:34.252839Z	    8 Query	select * from t1

  修改通用查询日志的输出方式log_output,看一下日志输出情况:

--mysql库的general_log表记录了通用查询日志的信息
mysql> desc mysql.general_log;
+--------------+-----------------+------+-----+----------------------+--------------------------------------------------+
| Field        | Type            | Null | Key | Default              | Extra                                            |
+--------------+-----------------+------+-----+----------------------+--------------------------------------------------+
| event_time   | timestamp(6)    | NO   |     | CURRENT_TIMESTAMP(6) | DEFAULT_GENERATED on update CURRENT_TIMESTAMP(6) |
| user_host    | mediumtext      | NO   |     | NULL                 |                                                  |
| thread_id    | bigint unsigned | NO   |     | NULL                 |                                                  |
| server_id    | int unsigned    | NO   |     | NULL                 |                                                  |
| command_type | varchar(64)     | NO   |     | NULL                 |                                                  |
| argument     | mediumblob      | NO   |     | NULL                 |                                                  |
+--------------+-----------------+------+-----+----------------------+--------------------------------------------------+
6 rows in set (0.00 sec)

mysql> select thread_id,command_type,argument from mysql.general_log; 
Empty set (0.00 sec)

--设置输出目标为file+table
mysql>  set global log_output='file,table';
Query OK, 0 rows affected (0.00 sec)

mysql> insert into t1 values(3,'曹成屿');
Query OK, 1 row affected (0.08 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T02:09:44.391267Z	    8 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T02:09:55.013330Z	    8 Query	show databases
2020-07-29T02:09:58.566908Z	    8 Query	SELECT DATABASE()
2020-07-29T02:09:58.585828Z	    8 Init DB	dbcy
2020-07-29T02:09:58.587318Z	    8 Query	show databases
2020-07-29T02:09:58.588165Z	    8 Query	show tables
2020-07-29T02:09:58.591758Z	    8 Field List	t1 
2020-07-29T02:09:58.596068Z	    8 Field List	t2 
2020-07-29T02:09:58.597682Z	    8 Field List	tb_cylog 
2020-07-29T02:09:58.599708Z	    8 Field List	tb_notice 
2020-07-29T02:09:58.601173Z	    8 Field List	v_cylog 
2020-07-29T02:10:01.523953Z	    8 Query	show tables
2020-07-29T02:10:09.588382Z	    8 Query	select * from t1
2020-07-29T02:10:27.835936Z	    8 Query	delete from t1 where tid=16
2020-07-29T02:10:56.377920Z	    8 Query	insert into t1 values(1,'狗十三')
2020-07-29T02:11:30.086557Z	    8 Query	update t1 set tid=2 where tid=1
2020-07-29T02:11:34.252839Z	    8 Query	select * from t1
2020-07-29T02:25:58.802863Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:12.874205Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:24.411720Z	    8 Query	select thread_id,command_type,argument from mysql.general_log
2020-07-29T02:27:51.665524Z	    8 Query	show variables like 'log_output'
2020-07-29T02:28:12.046406Z	    8 Query	set global log_output='file,table'
2020-07-29T02:28:38.739788Z	    8 Query	insert into t1 values(3,'曹成屿')

mysql>  select thread_id,command_type,argument from mysql.general_log; 
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
| thread_id | command_type | argument                                                                                                                     |
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
|         8 | Query        | 0x696E7365727420696E746F2074312076616C75657328332C27E69BB9E68890E5B1BF2729                                                   |
|         8 | Query        | 0x73656C656374207468726561645F69642C636F6D6D616E645F747970652C617267756D656E742066726F6D206D7973716C2E67656E6572616C5F6C6F67 |
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

--mysql.general_log的argument为二进制格式,要想可读,需要进行convert(argument using UTF8)转换。
mysql> select thread_id,command_type,convert(argument using UTF8) from mysql.general_log;
+-----------+--------------+-----------------------------------------------------------------------------------+
| thread_id | command_type | convert(argument using UTF8)                                                      |
+-----------+--------------+-----------------------------------------------------------------------------------+
|         8 | Query        | insert into t1 values(3,'曹成屿')                                                 |
|         8 | Query        | select thread_id,command_type,argument from mysql.general_log                     | 
+-----------+--------------+-----------------------------------------------------------------------------------+

--关闭general_log
mysql>  set global general_log=off;
Query OK, 0 rows affected (0.04 sec)

mysql>  show variables like '%gener%';
+----------------------------------------------+-------------------------------+
| Variable_name                                | Value                         |
+----------------------------------------------+-------------------------------+
| auto_generate_certs                          | ON                            |
| caching_sha2_password_auto_generate_rsa_keys | ON                            |
| general_log                                  | OFF                           |
| general_log_file                             | /home/mysql8/data/chengyu.log |
| generated_random_password_length             | 20                            |
| histogram_generation_max_mem_size            | 20000000                      |
| sha256_password_auto_generate_rsa_keys       | ON                            |
+----------------------------------------------+-------------------------------+
7 rows in set (0.00 sec)

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | OFF                           |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.00 sec)

mysql> delete from t1 where tid=3;
Query OK, 1 row affected (0.05 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T02:09:44.391267Z	    8 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T02:09:55.013330Z	    8 Query	show databases
2020-07-29T02:09:58.566908Z	    8 Query	SELECT DATABASE()
2020-07-29T02:09:58.585828Z	    8 Init DB	dbcy
2020-07-29T02:09:58.587318Z	    8 Query	show databases
2020-07-29T02:09:58.588165Z	    8 Query	show tables
2020-07-29T02:09:58.591758Z	    8 Field List	t1 
2020-07-29T02:09:58.596068Z	    8 Field List	t2 
2020-07-29T02:09:58.597682Z	    8 Field List	tb_cylog 
2020-07-29T02:09:58.599708Z	    8 Field List	tb_notice 
2020-07-29T02:09:58.601173Z	    8 Field List	v_cylog 
2020-07-29T02:10:01.523953Z	    8 Query	show tables
2020-07-29T02:10:09.588382Z	    8 Query	select * from t1
2020-07-29T02:10:27.835936Z	    8 Query	delete from t1 where tid=16
2020-07-29T02:10:56.377920Z	    8 Query	insert into t1 values(1,'狗十三')
2020-07-29T02:11:30.086557Z	    8 Query	update t1 set tid=2 where tid=1
2020-07-29T02:11:34.252839Z	    8 Query	select * from t1
2020-07-29T02:25:58.802863Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:12.874205Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:24.411720Z	    8 Query	select thread_id,command_type,argument from mysql.general_log
2020-07-29T02:27:51.665524Z	    8 Query	show variables like 'log_output'
2020-07-29T02:28:12.046406Z	    8 Query	set global log_output='file,table'
2020-07-29T02:28:38.739788Z	    8 Query	insert into t1 values(3,'曹成屿')
2020-07-29T02:28:54.922368Z	    8 Query	select thread_id,command_type,argument from mysql.general_log
2020-07-29T02:30:34.609885Z	    8 Query	set global general_log=off

mysql> select thread_id,command_type,convert(argument using UTF8) from mysql.general_log;
+-----------+--------------+-----------------------------------------------------------------------------------+
| thread_id | command_type | convert(argument using UTF8)                                                      |
+-----------+--------------+-----------------------------------------------------------------------------------+
|         8 | Query        | insert into t1 values(3,'曹成屿')                                                 |
|         8 | Query        | select thread_id,command_type,argument from mysql.general_log                     |
|         8 | Query        | set global general_log=off                                                        |
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)

  general_log_file为NONE时,则即使启用了常规日志,服务器也不会写入任何查询;如果日志目标值不包含FILE,则设置日志文件名对日志记录无效 。

--修改log_output为none时,执行操作将不写入通用日志文件
mysql> set global log_output=none;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | OFF                           |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.00 sec)

mysql> set global general_log=on;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | ON                            |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.00 sec)

mysql> insert into t1 values(5,'呢呢');
Query OK, 1 row affected (0.09 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T02:09:44.391267Z	    8 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T02:09:55.013330Z	    8 Query	show databases
2020-07-29T02:09:58.566908Z	    8 Query	SELECT DATABASE()
2020-07-29T02:09:58.585828Z	    8 Init DB	dbcy
2020-07-29T02:09:58.587318Z	    8 Query	show databases
2020-07-29T02:09:58.588165Z	    8 Query	show tables
2020-07-29T02:09:58.591758Z	    8 Field List	t1 
2020-07-29T02:09:58.596068Z	    8 Field List	t2 
2020-07-29T02:09:58.597682Z	    8 Field List	tb_cylog 
2020-07-29T02:09:58.599708Z	    8 Field List	tb_notice 
2020-07-29T02:09:58.601173Z	    8 Field List	v_cylog 
2020-07-29T02:10:01.523953Z	    8 Query	show tables
2020-07-29T02:10:09.588382Z	    8 Query	select * from t1
2020-07-29T02:10:27.835936Z	    8 Query	delete from t1 where tid=16
2020-07-29T02:10:56.377920Z	    8 Query	insert into t1 values(1,'狗十三')
2020-07-29T02:11:30.086557Z	    8 Query	update t1 set tid=2 where tid=1
2020-07-29T02:11:34.252839Z	    8 Query	select * from t1
2020-07-29T02:25:58.802863Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:12.874205Z	    8 Query	desc mysql.general_log
2020-07-29T02:27:24.411720Z	    8 Query	select thread_id,command_type,argument from mysql.general_log
2020-07-29T02:27:51.665524Z	    8 Query	show variables like 'log_output'
2020-07-29T02:28:12.046406Z	    8 Query	set global log_output='file,table'
2020-07-29T02:28:38.739788Z	    8 Query	insert into t1 values(3,'曹成屿')
2020-07-29T02:28:54.922368Z	    8 Query	select thread_id,command_type,argument from mysql.general_log
2020-07-29T02:30:34.609885Z	    8 Query	set global general_log=off
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument

mysql> select thread_id,command_type,convert(argument using UTF8) from mysql.general_log; 
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
| thread_id | command_type | argument                                                                                                                     |
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
|         8 | Query        | insert into t1 values(3,'曹成屿')|
|         8 | Query        | select thread_id,command_type,argument from mysql.general_log|
|         8 | Query        | set global general_log=off|
+-----------+--------------+------------------------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)

3. 会话级别的通用查询日志

  sql_log_off:用于禁用或启用当前会话的通用查询日志记录,默认值为OFF(即启用日志记录)。

  log-raw:抑制通用查询日志的密码重写,服务器会重写某些写入普通查询日志,慢速查询日志和二进制日志的语句中的密码,启动该参数以使它们不会以纯文本形式出现。通过使用该参数对于诊断目的可能有用,以查看服务器接收到的语句的确切文本,但是出于安全原因,不建议将其用于生产。

  来看下开启关闭sql_log_off对写入用查询日志的影响:

mysql> system more /home/mysql8/data/chengyu.log;
mysql> SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | OFF                           |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.00 sec)

mysql> set global general_log=on;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW VARIABLES LIKE '%general%';
+------------------+-------------------------------+
| Variable_name    | Value                         |
+------------------+-------------------------------+
| general_log      | ON                            |
| general_log_file | /home/mysql8/data/chengyu.log |
+------------------+-------------------------------+
2 rows in set (0.01 sec)

--关闭sql_log_off
mysql> set sql_log_off=off;
Query OK, 0 rows affected (0.00 sec)

mysql> use dbcy;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> insert into t1 values(6,'大惊小怪');
Query OK, 1 row affected (0.06 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
mysql> select * from t1;
+-----+--------------+
| tid | tname        |
+-----+--------------+
|   2 | 狗十三       |
|   4 | 大猪蹄子     |
|   5 | 呢呢         |
|   6 | 大惊小怪     |
|  17 | 赵二         |
|  18 | 张三         |
|  19 | 李四         |
|  20 | 王五         |
+-----+--------------+
8 rows in set (0.00 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1

--开启sql_log_off
mysql> set sql_log_off=on;
Query OK, 0 rows affected (0.00 sec)

mysql> insert into t1 values(7,'杯子');
Query OK, 1 row affected (0.07 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1
2020-07-29T08:15:43.911204Z	   12 Query	set sql_log_off=on

4. 通用查询日志删除

  FLUSH GENERAL LOGS:关闭并重新打开服务器正在写入的任何常规查询日志文件。

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1
2020-07-29T08:15:43.911204Z	   12 Query	set sql_log_off=on

mysql> FLUSH GENERAL LOGS;
Query OK, 0 rows affected (0.04 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1
2020-07-29T08:15:43.911204Z	   12 Query	set sql_log_off=on
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument

  或者通过mysqladmin删除通用查询日志:

  [root@chengyu ~]# mysqladmin -uroot -p flush-logs

mysql> insert into t1 values(8,'出门三');
Query OK, 1 row affected (0.07 sec)

mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1
2020-07-29T08:15:43.911204Z	   12 Query	set sql_log_off=on
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:22:26.527288Z	   12 Query	set global general_log=off
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:24:27.587199Z	   13 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:24:49.234511Z	   13 Query	SELECT DATABASE()
2020-07-29T08:24:49.234871Z	   13 Init DB	dbcy
2020-07-29T08:24:49.236429Z	   13 Query	show databases
2020-07-29T08:24:49.237818Z	   13 Query	show tables
2020-07-29T08:24:49.239570Z	   13 Field List	t1 
2020-07-29T08:24:49.239946Z	   13 Field List	t2 
2020-07-29T08:24:49.240280Z	   13 Field List	tb_cylog 
2020-07-29T08:24:49.240779Z	   13 Field List	tb_notice 
2020-07-29T08:24:49.241153Z	   13 Field List	v_cylog 
2020-07-29T08:24:50.861526Z	   13 Query	insert into t1 values(8,'出门三')
mysql> exit
[root@chengyu ~]# mysqladmin -uroot -p flush-logs
Enter password: 
mysql> system more /home/mysql8/data/chengyu.log;
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:13:20.369741Z	   12 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:13:53.012741Z	   12 Query	set sql_log_off=off
2020-07-29T08:14:34.588074Z	   12 Query	SELECT DATABASE()
2020-07-29T08:14:34.588428Z	   12 Init DB	dbcy
2020-07-29T08:14:34.590030Z	   12 Query	show databases
2020-07-29T08:14:34.591415Z	   12 Query	show tables
2020-07-29T08:14:34.593232Z	   12 Field List	t1 
2020-07-29T08:14:34.593605Z	   12 Field List	t2 
2020-07-29T08:14:34.593938Z	   12 Field List	tb_cylog 
2020-07-29T08:14:34.594398Z	   12 Field List	tb_notice 
2020-07-29T08:14:34.594716Z	   12 Field List	v_cylog 
2020-07-29T08:14:36.102065Z	   12 Query	insert into t1 values(6,'大惊小怪')
2020-07-29T08:15:29.346946Z	   12 Query	select * from t1
2020-07-29T08:15:43.911204Z	   12 Query	set sql_log_off=on
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:22:26.527288Z	   12 Query	set global general_log=off
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:24:27.587199Z	   13 Query	SHOW VARIABLES LIKE '%general%'
2020-07-29T08:24:49.234511Z	   13 Query	SELECT DATABASE()
2020-07-29T08:24:49.234871Z	   13 Init DB	dbcy
2020-07-29T08:24:49.236429Z	   13 Query	show databases
2020-07-29T08:24:49.237818Z	   13 Query	show tables
2020-07-29T08:24:49.239570Z	   13 Field List	t1 
2020-07-29T08:24:49.239946Z	   13 Field List	t2 
2020-07-29T08:24:49.240280Z	   13 Field List	tb_cylog 
2020-07-29T08:24:49.240779Z	   13 Field List	tb_notice 
2020-07-29T08:24:49.241153Z	   13 Field List	v_cylog 
2020-07-29T08:24:50.861526Z	   13 Query	insert into t1 values(8,'出门三')
2020-07-29T08:25:05.155210Z	   13 Quit	
2020-07-29T08:25:16.047718Z	   14 Connect	root@localhost on  using Socket
2020-07-29T08:25:16.048069Z	   14 Query	FLUSH LOGS
/usr/local/mysql8/bin/mysqld, Version: 8.0.20 (Source distribution). started with:
Tcp port: 3307  Unix socket: /usr/local/mysql8/mysql.sock
Time                 Id Command    Argument
2020-07-29T08:25:16.232538Z	   14 Quit	
2020-07-29T08:25:23.446874Z	   15 Connect	root@localhost on  using Socket
2020-07-29T08:25:23.447317Z	   15 Query	select @@version_comment limit 1

2020年07月29日

  还能流眼泪说明还年轻…

猜你喜欢

转载自blog.csdn.net/u010257584/article/details/107613071