為了偵錯 web 應用程式和 mysql 查詢,我啟用了 mysql 查詢日誌。然而,這並不是一個很好的尾隨和 grep 格式。理想情況下,我希望能夠僅顯示來自特定使用者的查詢或對特定資料庫的查詢。如果 mysql 查詢日誌在每一行列印資料庫或用戶,那麼我可以 grep 它。有時我想查看某個日期發生了什麼,但由於 mysql 查詢日誌不會在每一行上列印日期時間,所以這比較困難。
有沒有什麼方法可以讓 mysql 查詢日誌更好地透過 tail/grep/etc 進行?
答案1
您可能應該使用 mk-query-digest - 它非常強大。
答案2
您想要做的事情,即記錄單一使用者的查詢,可能會更容易透過mysql代理。基本上它是一個位於 mysql 伺服器和客戶端之間的服務。有許多關於如何根據您設定的條件記錄或操作資料的程式碼範例。
無論如何,我不知道有任何工具可以做到這一點。您可能需要做的是找到一個 mysql 日誌解析器庫並編寫一個使用該庫並提取所需資料的腳本。