全面瞭解Mysql(四)日誌

  1. 錯誤日誌
    使用命令SHOW VARIABLES LIKE ‘LOG_ERROR’ \G 可以查看錯誤日誌的位置,當數據庫宕機,不能正常使用時,首先應該查看該日誌,其中也會存在一些警告,用戶也可以通過該文件進行優化
  2. 二進制日誌
    記錄了mysql數據庫所有更改操作,不包括查詢,通過配置參數log-bin來開啓二進制日誌,注意配合的server-id=1(該值是服務id),不然啓動不了,使用命令SHOW MASTER STATUS \G 來查看bin文件位置
    在這裏插入圖片描述
    然後使用 SHOW BINLOG EVENTS IN ‘localhost-bin.000001’ \G查看事件
    在這裏插入圖片描述
    通過該日誌,我們可以查看修改操,和修改操作用時,這些文件主要作用是恢復,當數據庫恢復後,可能有些操作未能恢復,可以使用該文件恢復。進行多臺數據庫實時同步,可以通過該日誌分析數據庫是否進行了注入攻擊。
    相關的參數有:
    max_binlog_size單個二進制日誌文件最大值
    binlog_cache_size二進制日誌緩衝大小
    sync_binlog寫幾次緩衝同步到磁盤
    binlog-do-db寫入哪些庫的日誌
    binlog-ignore-db忽略哪些庫的日誌
    log-slave-update當時slave時配置它可以將日誌寫入自己的日誌文件中
    binlog_format記錄二進制日誌格式
    如果要查看二進制日誌內容,必須記住mysql提供的工具mysqlbinlog。
  3. 慢查詢日誌
    使用下面的參數配置開啓慢查詢 slow_query_log = 1
    slow-query-log-file = log.log
    long_query_time = 10
    注意大多數人開啓慢查詢日誌時都是失敗的Errcode: 13 - Permission denied,通過show variables like ‘%slow_query_log%’;可以查看log是否開啓,如果沒有,set global slow_query_log=1;報錯的話多半是selinux問題,需要設置vi /etc/selinux/config,將SELINUX項改成:SELINUX=disabled,需要重啓電腦,臨時的辦法是 setenforce 0,在執行剛剛的set global slow_query_log=1就可以開啓慢查詢。
    命令show global status like ‘%slow_queries%’;可以查看慢查詢條數
    在這裏插入圖片描述
    命令set global log_output=‘table’;可以修改輸出到文件爲輸出到表
    select * from mysql.slow_log \G查詢該表記錄
    在這裏插入圖片描述
  4. 查詢日誌
    使用general_log配置日誌開關
    使用命令show variables like ‘%general_log_file%’;查看日誌位置
    在這裏插入圖片描述
    mysql所有查詢日誌都會在這,不管成功不成功。
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章