MySQL日誌比較

來源:互聯網
上載者:User

1、MySQL日誌比較

記錄檔

檔案中的資訊

作用

錯誤記錄檔

記錄啟動、運行或停止mysqld時出現的問題。

系統故障時定位故障原因

查詢日誌

記錄建立的用戶端串連和執行的語句。

記錄資料庫發生的所有操作

二進位日誌

記錄所有更改資料的語句。

資料庫資料備份和複製

慢日誌

記錄所有執行時間超過long_query_time秒的所有查詢或不使用索引的查詢。

定位系統效能問題,尋找有效能問題的SQL語句

2、錯誤記錄檔

作用:錯誤記錄檔檔案包含了當mysqld啟動和停止時,以及伺服器在運行過程中發生任何嚴重錯誤時的相關資訊。

使用:可以用--log-error[=file_name]選項來指定mysqld儲存錯誤記錄檔檔案的位置。如果沒有給定file_name值,mysqld使用錯誤記錄檔名host_name.err(host_name為主機名稱)並在資料目錄(DATADIR)中寫入記錄檔。

清理:如果你執行FLUSHLOGS,錯誤記錄檔用-old重新命名尾碼並建立一個新的空記錄檔:

shell>mv hostname.err  hostname-old.err

shell>mysqladmin flush-logs

shell>cp hostname-old.errto-backup-directory

shell>rm hostname-old.err

3、查詢日誌

作用:查詢日誌記錄了用戶端的所有串連和語句(二進位日誌不包括查詢語句。)當你想確切地知道該用戶端發送給mysqld的語句時,該日誌可能非常有用

使用:可以用--log[=file_name]或-l [file_name]選項啟動mysqld的查詢Log Service。如果沒有給定file_name的值,預設名是host_name.log

建議:不要開啟此日誌,以免影響系統整體效能

清理:同錯誤記錄檔。

4、慢速查詢日誌

        作用:慢查詢日誌記錄所有執行時間超過long_query_time秒的SQL語句的記錄檔。獲得初使表鎖定的時間不算作執行時間。

        使用:可以用--log-slow-queries[=file_name]選項啟動,如果沒有給出file_name值,預設為host_name-slow.log。如果給出了檔案名稱,但不是絕對路徑名,檔案則寫入資料目錄。

        查看:使用mysqldumpslow命令獲得日誌中顯示的查詢摘要來處理慢查詢日誌。

        清理:同錯誤記錄檔。

5、二進位日誌

作用:二進位日誌記錄所有更新了資料或者已經潛在更新了資料(例如,沒有匹配任何行的一個DELETE)的所有語句。二進位日誌的主要目的是在恢複使能夠最大可能地更新資料庫,因為二進位日誌包含備份後進行的所有更新,還用於在主複製伺服器上記錄所有將發送給從伺服器的語句。

使用:可以用--log-bin[=file_name]選項啟動。如果未給出file_name值,預設名為-bin後面所跟的主機名稱。如果給出了檔案名稱,但沒有包含路徑,則檔案被寫入資料目錄(DATADIR)。如果你在日誌名中提供了副檔名(例如,--log-bin=file_name.extension),則副檔名被悄悄除掉並忽略。

清理:執行mysqladminflush-logs然後刪除三天前的所有日誌。手動刪除可以使用PURGE MASTER LOGS,該語句還會安全地更新二進位日誌索引檔案(可以採用日期參數)。自動刪除可以選擇設定--expire_logs_days=day,day天以前的資料會自動刪除。

其他:mysqld在每個二進位日誌名後面添加一個數字副檔名。每次你啟動伺服器或重新整理日誌時該數字則增加。如果當前的日誌大小達到max_binlog_size,還會自動建立新的二進位日誌。如果你正使用大的事務,二進位日誌還會超過max_binlog_size:事務全寫入一個二進位日誌中,絕對不要寫入不同的二進位日誌中。為了能夠知道還使用了哪個不同的二進位記錄檔,mysqld還建立一個二進位日誌索引檔案,包含所有使用的二進位記錄檔的檔案名稱。預設情況下與二進位記錄檔的檔案名稱相同,副檔名為'.index'(可以用--log-bin-index[=file_name]選項更改二進位日誌索引檔案的檔案名稱)。

對於事務表,由於在執行完COMMIT之前,mysqld將整個事務寫入二進位日誌。當處理事務的線程啟動時,它為緩衝查詢分配binlog_cache_size大小的記憶體。如果語句大於該值,線程則開啟臨時檔案來儲存事務。線程結束後臨時檔案被刪除。將binlog_cache_size調節到足夠大的值,可以避免使用臨時檔案。(註:Binlog_cache_use狀態變數顯示了緩衝區儲存語句的事務的數量。Binlog_cache_disk_use狀態變數顯示了事務中實際上有多少必須使用臨時檔案。)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.