程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 記錄MySQL執行的SQL

記錄MySQL執行的SQL

編輯:MySQL綜合教程

記錄MySQL執行的SQL


對比Oracle功能去學習Mysql總會發現亮點

Oracle中通過日志挖掘這一技能,可以找到曾經執行過的所有記錄;

Mysql中也提供了3種方法{驗證過的,我會記錄具體做法}

方法1:{已驗證}

記錄MySQL的所有記錄
打開/etc/my.cnf
在[mysqld]下面加入
log = /mnt/mydata/sql.log

重啟mysql即可

查看/mnt/mydata/sql.log文件

注意:

1.因為sql.log會因為有大量的寫入,注意監控IO和sql.log的大小;

2.調試或者查詢完成後,建議關閉改功能


方法2:{暫時未驗證}

查Slow query的SQL語法:
log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 2 (超過2秒的SQL語法記錄起來,設短一點來記錄除錯也是一種方法.)

方法3:{暫時未驗證}

設MySQL Replication用binlog:

log_bin = /var/log/mysql/mysql-bin.log (此檔要用mysqlbinlog解來看,
mysqlbinlog mysql-bin.000042| grep "T_ABC" | grep "column value"
mysql會將所有INSERT/UPDATE/DELETE語法記於此(但是語法可能跟你想的不同),這是要寫給SLAVE用的log 文件

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved