MySQL日誌功能詳解(1)

來源:互聯網
上載者:User

標籤:mysql日誌   錯誤記錄檔   慢查詢日誌   查詢日誌   



MySQL日誌:(以下都位全域伺服器變數)

MySQL > show global variables like ‘%log%‘;


MySQL 6類日誌簡單介紹

查詢日誌:預設為關閉(產生大量寫操作) 所有跟查詢相關的語句慢查詢日誌:查詢執行時間長度超過指定時間長度的查詢,即為慢查詢        (包括查詢本身,以及查詢所依賴的資源不被允許[表被鎖定])錯誤記錄檔:跟錯誤資訊相關,以及mysql啟動,關閉,主從複製等資訊二進位日誌:記錄跟修改相關的操作,用來實現複製的憑據(可是實現資料恢複)中繼日誌:從伺服器上的二進位日誌(從主伺服器上複製過來的)交易記錄:將隨機I/O轉換為順序I/O (事務支援復原)   (查詢操作首先在innodb_buffer --> 交易記錄 --> 資料檔案)       記錄檔組:至少要存在兩個,實現輪詢(交易記錄所在的硬碟要足夠可靠)              事務如果在資料庫記憶體中,復原操作開銷很小       如果資料庫記憶體空間不夠,事務會存到交易記錄中,復原開銷適中       如果交易記錄也寫滿,則需要同步到資料檔案中,此時復原操作開銷非常大(要刪除資料檔案中的內容)       所以:儘可能使用小事務來替代大事務來提升事務引擎的效能       當一個事務提交後,資料會立即同步到交易記錄中去(順序I/O速度較快)       此時如果系統崩潰,下次重新啟動後,交易記錄會將已經提交的資料同步到資料檔案中去       而將未提交的事務進行復原,使資料恢複到一致性狀態 此過程叫做崩潰性恢複       innodb等支援事務的儲存引擎,支援崩潰性恢複       MyISAM不支援崩潰性恢複       MySQL > show global variables like ‘innodb%‘;       ...       | innodb_log_group_home_dir    ./ |    -->  交易記錄儲存位置                ...       相對路徑都是相對於資料目錄


查詢日誌:

    log:{ON|oFF}:是否記錄所有語句的日誌資訊於一般查詢記錄檔(general_log)

    log_output={TABLE|FILE|NONE}

        table和file 可以同時出現,用逗號分隔即可

        如果設定log_output為table,表的位置為mysql庫下的generan_log表

       

MySQL > show tables in mysql like ‘general_log‘;        +-------------------------------+        | Tables_in_mysql (general_log) |        +-------------------------------+        | general_log             |        +-------------------------------+    general_log:是否啟用查詢日誌    general_log_file:定義了一般查詢日誌儲存的檔案



MySQL > show global variables like ‘log‘;+---------------+-------+| Variable_name | Value |+---------------+-------+| log           | OFF   |+---------------+-------+MySQL > show global variables like ‘log_output‘;+---------------+-------+| Variable_name | Value |+---------------+-------+| log_output    | FILE  |+---------------+-------+MySQL > show global variables like ‘general_log‘;+---------------+-------+| Variable_name | Value |+---------------+-------+| general_log   | OFF   |+---------------+-------+MySQL > show global variables like ‘general_log_file‘;+------------------+----------------------------+| Variable_name    | Value                      |+------------------+----------------------------+| general_log_file | /var/run/mysqld/mysqld.log |+------------------+----------------------------+




慢查詢日誌

    slow_query_log={ON|OFF} (0禁用,1啟用) (全域)

           是否啟用慢查詢日誌,它的輸出位置也取決

           log_output={table|file|none}

           表名及位置:mysql庫下的slow_log表

    slow_query_log_file:www-slow.log

           定義慢查詢日誌的檔案路名稱徑及

    long_query_time : 10.00000 慢查詢的時間

           (將某張表鎖定,可進行實驗,不一定成功)

    long_slow_filter:不記錄慢查記錄(過濾器)

    log_slow_queries:會話變數,每個使用者可以自己管理

    log_slow_verbosity:是否記錄詳細的資訊

    log_slow_rate_limit:速率



錯誤記錄檔:

    伺服器啟動和關閉過程中的資訊;

    伺服器運行過程中的錯誤資訊

    事件調度器運行一個事件時產生的資訊

    在複製架構中的從伺服器上啟動從伺服器線程時產生的資訊


    log_error = /path/to/error_log_file

    log_warnings = {1|0}

        是否記錄警告資訊儲存至錯誤記錄檔中


本文出自 “似水流年” 部落格,請務必保留此出處http://sixijie123.blog.51cto.com/11880770/1884154

MySQL日誌功能詳解(1)

聯繫我們

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