查看mysql运行日志:mysql_general_log

查看mysql运行日志:mysql_general_log(查看mysql执行历史)

 

1、应用场景

在Linux命令行模式事实监控mysql的执行历史,就像redis->monitor一样~

2、说明

默认mysql是关闭general_log的,因为实时监控时间长了这个文件会很大!所以只有需要临时调试程序的时候手动开启即可,调试完成记得手动删除general_log文件,并关闭设置。

3、设置

// 查看mysql当前设置
mysql> show VARIABLES like '%general_log%';
+------------------+--------------------------+
| Variable_name    | Value                    |
+------------------+--------------------------+
| general_log      | OFF                      |
| general_log_file | /var/lib/mysql/xxx.log |
+------------------+--------------------------+
2 rows in set (0.00 sec)

// 关闭和开启
mysql> set global general_log="off";
Query OK, 0 rows affected (0.00 sec)

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

参考如下实践:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| bg-biz             |
| bg-bnzc            |
| bg-mc              |
| bg-scheduler       |
| bg-uc              |
| bg-hao-db      |
| haotest                |
| mysql              |
| performance_schema |
| xxl-job            |
+--------------------+
11 rows in set (0.00 sec)

mysql> use bg-vehicle-db;

mysql> show VARIABLES like '%general_log%';
+------------------+------------------------------+
| Variable_name    | Value                        |
+------------------+------------------------------+
| general_log      | OFF                          |
| general_log_file | /var/lib/mysql/localhost.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_log%';
+------------------+------------------------------+
| Variable_name    | Value                        |
+------------------+------------------------------+
| general_log      | ON                           |
| general_log_file | /var/lib/mysql/localhost.log |
+------------------+------------------------------+
2 rows in set (0.00 sec)

mysql> 

 

4、实时监控执行sql

执行上一步的查看设置命令,会显示general_log_file文件的路径。 
使用tail 命令实时监控:

 

[root@localhost ~]# tail -f /var/lib/mysql/localhost.log

 

 

5. 记得关闭掉

使用完成之后,记得关闭掉:

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

 

posted @ 2018-08-02 17:30  念槐聚  阅读(1116)  评论(0)    收藏  举报