mysql 如何在資料庫內記錄實時查詢sql語句

2022-06-22 02:00:13 字數 1189 閱讀 4006

--

檢查日誌開啟情況

show variables like

'%general_log%';

show variables

like

'%slow_query_log%';

--檢查慢查詢時間

show variables like

'%long_query_time%';

--設定慢查詢時間(需重新連線資料庫生效)

set global long_query_time =1;

--檢查日誌輸出形式(file、table、none)

show variables like

'log_output';

--開啟日誌

set global general_log =on;

set global slow_query_log =on;

--關閉日誌(除錯結束一定記得清空關閉,日誌容量會很大)

set global general_log =

off;

set global slow_query_log =

off;

--設定日誌輸出到表

set global log_output=

'table';

--查詢日誌表

select

*from

mysql.general_log;

select

*from

mysql.slow_log;

--查詢 select 日誌(日誌中的sql語句並不是直接的字串,有點彆扭)

select

*from (select event_time, user_host, thread_id, server_id, command_type, convert(argument using utf8) as

sqlstr

from

mysql.general_log

order

by event_time desc) as

logwhere sqlstr like

'select `%';

--清空 mysql 日誌

truncate

mysql.general_log;

truncate mysql.slow_log;

參考:

如何在資料庫中使用索引

一 給資訊表建立索引 資訊表為 建立索引 create index 索引名 on 表名 列名.mysql create index idx lname pinyin on employee lname pinyin 顯示索引資訊 show index from 表名 mysql show index...

如何在資料庫動態建表

動態建表首先需要了解statement類 statement 物件用 connection 的方法createstatement 建立,例如 建立連線物件 connection connection dbutil.getconnection 建立statement物件 statement state...

SQL如何在資料庫間複製表

方法一 db1 tb1 db2 tb2 選擇db1 到表的列表那裡 選擇tb1表 右鍵 所有任務 資料匯出 下一步 選擇你要匯出的資料庫db1 下一步 選擇你要匯入的資料庫db2 下一步 選擇你要導的表 前面畫勾 tb1,後面對應的是新資料庫的表名tb2 預設是相同表名,可修改 方法二 sql語句 ...