這個可以借助工具了,如mysql抓包工具 MySQL Sniffer
天全網站建設公司成都創(chuàng)新互聯公司,天全網站設計制作,有大型網站制作公司豐富經驗。已為天全上千家提供企業(yè)網站建設服務。企業(yè)網站搭建\外貿營銷網站建設要多少錢,請找那個售后服務好的天全做網站的公司定做!
效果就是,訪問數據庫的來源ip,訪問的庫,表,sql這樣的,如下:
不知你是不是指這個:
用慣了微軟的ms sql的事件探查器,一直也想在mysql中找到相應的這么一種工具:
修改my.cnf,在mysqld下添加log一行,
[mysqld]
log = /tmp/mysqld.sql
然后,重新啟動mysql,tail -f /tmp/mysqld.sql,就可以實時看到myql服務器當前正在執(zhí)行的語句了。
文章出處:
首先介紹下 pt-stalk,它是 Percona-Toolkit 工具包中的一個工具,說起 PT 工具包大家都不陌生,平時常用的 pt-query-digest、 pt-online-schema-change 等工具都是出自于這個工具包,這里就不多介紹了。
pt-stalk 的主要功能是在出現問題時收集 OS 及 MySQL 的診斷信息,這其中包括:
1. OS 層面的 CPU、IO、內存、磁盤、網絡等信息;
2. MySQL 層面的行鎖等待、會話連接、主從復制,狀態(tài)參數等信息。
而且 pt-stalk 是一個 Shell腳本,對于我這種看不懂 perl 的人來說比較友好,腳本里面的監(jiān)控邏輯與監(jiān)控命令也可以拿來參考,用于構建自己的監(jiān)控體系。
三、使用
接著我們來看下如何使用這個工具。
pt-stalk 通常以后臺服務形式監(jiān)控 MySQL 并等待觸發(fā)條件,當觸發(fā)條件時收集相關診斷數據。
觸發(fā)條件相關的參數有以下幾個:
function:
°?默認為 status,代表監(jiān)控 SHOW GLOBAL STATUS 的輸出;
°?也可以設置為 processlist,代表監(jiān)控 show processlist 的輸出;
variable:
°?默認為 Threads_running,代表 監(jiān)控參數,根據上述監(jiān)控輸出指定具體的監(jiān)控項;
threshold:
°?默認為 25,代表 監(jiān)控閾值,監(jiān)控參數超過閾值,則滿足觸發(fā)條件;
°?監(jiān)控參數的值非數字時,需要配合 match 參數一起使用,如 processlist 的 state 列;
cycles:
°?默認為 5,表示連續(xù)觀察到五次滿足觸發(fā)條件時,才觸發(fā)收集;
連接參數:host、password、port、socket。
其他一些重要參數:
iterations:該參數指定 pt-stalk 在觸發(fā)收集幾次后退出,默認會一直運行。
run-time:觸發(fā)收集后,該參數指定收集多長時間的數據,默認 30 秒。
sleep:該參數指定在觸發(fā)收集后,sleep 多久后繼續(xù)監(jiān)控,默認 300 秒。
interval:指定狀態(tài)參數的檢查頻率,判斷是否需要觸發(fā)收集,默認 1 秒。
dest:監(jiān)控數據存放路徑,默認為 /var/lib/pt-stalk。
retention-time :監(jiān)控數據保留時長,默認 30 天。
daemonize:以后臺服務運行,默認不開啟。
log:后臺運行日志,默認為 /var/log/pt-stalk.log。
collect:觸發(fā)發(fā)生時收集診斷數據,默認開啟。
°?collect-gdb:收集 GDB 堆棧跟蹤,需要 gdb 工具。
°?collect-strace:收集跟蹤數據,需要 strace 工具。
°?collect-tcpdump:收集 tcpdump 數據,需要 tcpdump 工具。
對數據庫表單按日期切表,作主從分布,讀操作從從庫中讀取,還有要對表中字段建立索引,如日期!