MYSQL怎麼查看操作日誌

WBOY
發布: 2023-05-31 22:43:05
轉載
16240 人瀏覽過

一、檔案記錄資料庫操作日誌

進入mysql查詢介面,輸入指令:

SHOW VARIABLES LIKE 'gen%';
登入後複製

可以看到general_log的狀態是開啟還是關閉,以及所屬帳號的general_log檔案存放的目錄。

MYSQL怎麼查看操作日誌

如果general_log未開啟,則先開啟,執行指令:

SET GLOBAL general_log=ON;
登入後複製

然後可以到對應的general_log目錄下去看執行日誌。

二、資料庫表記錄操作日誌

首先執行指令:

SHOW VARIABLES LIKE 'log_output';
登入後複製

MYSQL怎麼查看操作日誌

#預設是FILE的方式,執行指令,修改成TABLE方式:

SET GLOBAL log_output='TABLE';
登入後複製

然後可以透過命令查詢操作日誌:

SELECT * FROM mysql.general_log;
登入後複製

MYSQL怎麼查看操作日誌

#使用資料庫表記錄操作日誌會增加資料的壓力,因此建議使用文件記錄操作日誌:

SET GLOBAL log_output='FILE';
TRUNCATE TABLE mysql.log_output;
登入後複製

附:按時間段查看mysql的操作日誌

#1、登入mysql安裝的那台機器,找到my.cnf.我的my.cnf檔案在etc地下,所有執行cat /etc/my.cnf ,看到如圖所示的binlogs存放位置

MYSQL怎麼查看操作日誌

#2、進入日誌所在目錄cd /home/mysql/logs /binlogs, 輸入ls -al 查看需要查看的binlogs產生的時間。

MYSQL怎麼查看操作日誌

3、如果需要查詢2017-09-17 07:21:09到2017-09-19 07:59:50 資料庫為geeRunner 的操作日誌,輸入如下指令將資料寫入到一個備用的txt即可。

mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 > sanjiaomao.txt
登入後複製

4、如果本地查詢,輸入命令

 mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 | more
登入後複製

MYSQL怎麼查看操作日誌

#5、如果取下來查詢,使用winscp工具,登入db所在機器,將數據取出來。

6、如果需要過濾,只查詢insert,update,delete的語句,可以這樣寫:

mysqlbinlog --no-defaults --database=raceEnroll  binlogs.000078 |grep update |more
登入後複製

以上是MYSQL怎麼查看操作日誌的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板