mysql實時記錄客戶端提交的sql語句

2021-08-18 01:39:28 字數 1315 閱讀 2111

mysql 開啟 general log 後,所有的查詢語句都會記錄在 general log 檔案,檔案為唯讀方式,但這樣general log檔案會非常大,所以預設是關閉的。

但有時需要查錯等原因,暫時需要開啟general log。

開啟方法:

[plain]view plain

copy

show global variables like '%general%';  

set global general_log = on; // 開啟  

set global general_log = off; // 關閉  

general log 預設是記錄到文字檔案,不過可以通過修改log_output='table' 更改記錄到資料庫,在mysql db 會增加乙個表general_log。

通過檢視表結構,是乙個外部的csv檔案。

因為general_log 表是乙個外部的csv檔案,因此對這個表進行查詢時效能較低,應修改表的引擎為myisam,提高效能。

[plain]view plain

copy

set global general_log = off;  

alter table general_log engine = myisam;  

set global general_log = on;  

通過以上方法將mysql各個客戶端的**儲存至mysql.general_log日誌中。

然後通過查詢:select * , convert(argument using utf8) as sqlstr  from mysql.general_log  a 來看各個mysql客戶端執行的sql。

尤其注意:select * from information_schema.innodb_trx ; 來看提交的事物資料。通過thread_id來關聯查詢。

mysql客戶端配置 MySQL客戶端配置和使用

安裝mysql sudo apt get install mysql server 這個應該很簡單了,而且我覺得大家在安裝方面也沒什麼太大問題,所以也就不多說了,下面我們來講講配置。配置mysql 注意,在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那麼需要改變 ...

JStorm之Topology提交客戶端

乙個topology包含一或多個spout bolt,spout負責在資料來源獲得資料並傳送給bolt,每個bolt負責做完處理後發給下乙個bolt。通常topology的建立是由topologybuilder來建立的,該元件會記錄包含哪些spout bolt,並做相應驗證 各元件是否有id衝突,校...

在mysql客戶端新增新的 客戶端命令

在mysql中命令分為兩大類,一類是在客戶端解析執行的,如help,quit等,另一類是在服務端解析 執行 的,如select,insert等。注 在客戶端執行的,有的也要呼叫服務端。本文主要介紹如何給mysql客戶端新增新的客戶端命令。用例 新增乙個命令 exec plan e 功能是類似於命令g...