MySQL默認不能實時查看執行的SQL語句,因為這會消耗一定的資源。
要開啟這個功能,稍微配置一下,打開這個LOG記錄就可以了。
1 查看LOG功能
首先,查看是否已經開啟實時SQL語句記錄。
mysql> SHOW VARIABLES LIKE "general_log%";
如下general_log
值為OFF
說明沒有開啟:
+------------------+----------------------------------+
| Variable_name | Value |
+------------------+----------------------------------+
| general_log | OFF |
| general_log_file | /var/lib/mysql/galley-pc.log |
+------------------+----------------------------------+
2 rows in set (0.00 sec)
2 打開LOG功能
2.1 臨時開啟
如下,打開實時記錄SQL語句功能,並指定自定義的log路徑:
mysql> SET GLOBAL general_log = 'ON';
mysql> SET GLOBAL general_log_file = '/var/log/mysql/general_log.log'; 這個命令可能執行不成功,可以不執行,直接使用上面默認的文件路徑即可
這兩個命令在MySQL重啟后失效,為臨時方法。
說明:這個文件會隨着訪問的增加而不斷變大,所以生產環境建議臨時開啟,用完及時關閉。
2.2 永久開啟
永久有效需要配置my.cnf文件,加入下面兩行:
general_log = 1 general_log_file = /var/log/mysql/general_sql.log
重啟MySQL生效。
3 實時查看
過一小段時間后,就可以導出查看/var/lib/mysql/sql_statement.log文件了,里面記錄了所有執行的SQL語句。
如果要實時查看該文件的改動,在Linux系統用tail
命令:
$ tail -f /var/lib/mysql/general_sql.log
另外,也可以用BareTail軟件實時查看。
原文鏈接 https://blog.csdn.net/qidaif/article/details/80931703
ef 並發檢測 看這篇博文 https://cloud.tencent.com/developer/article/1013669