這幾天遇到個玄學bug,想要通過查看 mysql 日誌跟蹤問題,學了下如何查看 mysql 日誌,記錄一下。
本文不介紹日誌內容的含義,只介紹查看日誌的方法。
正文
主要用到了mysql自帶的工具:mysqlbinlog
mysql 日誌一般長這樣子:binlog.000030 ,不過它是二進制的。
mysqlbinlog 一般在 mysql/bin 目錄下,如果 mysql 是通過寶塔安裝的話,一般在 /www/server/mysql/bin 目錄下。
binlog.000030 這種日誌文件一般在 mysql/data 目錄下,如果用的是寶塔的話,一般在 /www/server/data 目錄下
使用的命令行類似這種形式:
mysqlbinlog binlog.000030 > /root/mysqlLog.txt ,其中 mysqlLog.txt 是將要由二進制日誌轉換而成的文本文件,自己隨便起個名就行。
不過要注意相對路徑的切換,也可以用絕對路徑
我在 /www/server/mysql/bin 路徑下使用的命令行是這樣的:
mysqlbinlog ../../data/mysql-bin.000030 > /root/mysqlLog.txt
使用時如果提示command not found 的話,用PATH=$PATH:.命令暫時把當前目錄加入命令搜索目錄就好了。
轉換而成的日誌文件就像這種,在其中可以看到插入語句、更新語句以及執行各命令的具體時間等等,對於跟蹤問題有一定作用。