mysql 日誌—轉

來源:互聯網
上載者:User
MYSQL記錄檔

MYSQL有不同類型的記錄檔(各自儲存了不同類型的日誌),從它們當中可以查詢到MYSQL裡都做了些什麼,對於MYSQL的管理工作,這些記錄檔是不可缺少的。
1.錯誤記錄檔(The error log):記錄了資料庫啟動、運行以及停止過程中錯誤資訊;
2.ISAM動作記錄(The isam log):記錄了所有對ISAM表的修改,該日誌僅僅用於調試ISAM模式;
3.SQL執行日誌(The query log):記錄了用戶端的串連以及所執行的SQL語句;
4.更新日誌(The update log):記錄了改變資料的語句,已經不建議使用,由二進位日誌替代;
5.二進位日誌(The binary log):記錄了所有對資料庫資料的修改語句;
6.逾時日誌(The slow log):記錄所有執行時間超過最大SQL執行時間(long_query_time)或未使用索引的語句;

如果你是在用mysql的複製、備份功能,那麼從伺服器還提供了一種叫做relay log的記錄檔。

預設情況下所有記錄檔會記錄在MYSQL的資料目錄下,你可以通過強制mysql去關閉並重新開啟一個檔案進行日誌記錄,當然系統會自動加尾碼(如.00001, .00002),方式有在mysql環境下執行語句 mysql>flush logs; 或者通過mysqladmin管理程式執行 #mysqladmin flush-logs 或 #mysqladmin refresh

這些日誌的啟動方式可以在mysqld_safe方式啟動資料庫的時候,後面跟選項參數,也可以在設定檔裡配置,推薦採用第二種方式,配置方法很簡單,我只配置了三種日誌:

[mysqld]
log=/var/log/mysqld_common.log
log-error=/var/log/mysqld_err.log
log-bin=/var/log/mysqld_bin.bin

日誌的查看很簡單,大部分都是文本,直接用vim、less、more之類的工具看就可以了,值得說明的是二進位檔案的查看:

1). 首先確定是否開啟了二進位檔案記錄功能
mysql>show variables like 'log_bin';

2). 如果你想知道現在記錄位元據的檔案具體資訊,你可以通過下列語句看到現在正在記錄哪個檔案,以及記錄的當前位置:
mysql>show master status;

3). 查看位元據需要藉助程式mysqlbinlog,看看它支援哪些選項,根據自己需要來使用。
mysql>mysqlbinlog /var/log/mysql/mysql-bin.000040;
查詢某個時間範圍的可以執行下列語句,如果記錄很多可以將結果定向到一個檔案裡自己慢慢看:-) :
mysql>mysqlbinlog --start-datetime='2008-01-01 00:00:00' --stop-datetime='2008-08-08 00:00:00'  /var/log/mysql/mysql-bin.000040 > ./tmp.log

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.