MySQL 是一款常用的關系型數據庫,但是在使用的過程中可能會出現慢查詢的問題,導致系統性能急劇下降。針對這種情況,我們可以使用 MySQL 的 bin log 來排查慢查詢的問題。
bin-log 是 MySQL 數據庫的二進制日志,主要用于數據備份和恢復,同時也可以記錄所有對數據庫的修改操作,包括寫入、修改、刪除等。因此,通過查看 bin log,我們可以輕松地定位并排查 SQL 語句執行緩慢的原因。
# 首先,我們需要開啟 MySQL 的 bin-log 功能 # 修改 MySQL 配置文件,添加如下一行 log_bin = mysql-bin # 然后重新啟動 MySQL 服務,使配置文件生效 # 接著,我們需要通過 MySQL 命令行工具來查看 bin-log # 首先,進入 MySQL 命令行環境 mysql -u 用戶名 -p # 然后,執行如下命令,查看 bin-log show binary logs; # 最后,我們可以通過類似如下命令來篩選出滿足條件的 SQL 語句 mysqlbinlog --start-datetime='2021-10-01 00:00:00' --stop-datetime='2021-10-01 12:00:00' /var/lib/mysql/mysql-bin.000001 | grep 'slow_query' # 上述命令的含義是,從 mysql-bin.000001 文件中讀取在 2021 年 10 月 1 日 00:00:00 - 12:00:00 時間段內執行時間超過設定值的 SQL 語句。
通過上述操作,我們就可以通過 bin-log 來快速定位 SQL 語句執行緩慢的原因。