資料庫日誌用來記錄資料庫曾經發生的各種事情。mysql中有四種日誌:錯誤日誌,二進位制日誌,查詢日誌,慢查詢日誌。
一 :錯誤日誌
錯誤日誌是 mysql 中最重要的日誌之一,它記錄了當 mysqld 啟動和停止時,以及伺服器在執行過程中發生任何
嚴重錯誤時的相關資訊。當資料庫出現任何故障導致無法正常使用時,可以首先檢視此日誌。
該日誌是預設開啟的 , 預設存放目錄為 mysql 的資料目錄(var/lib/mysql), 預設的日誌檔名為
hostname.err(hostname是主機名)。
檢視日誌位置命令:
show variables like
'log_error%'
;
檢視日誌內容
tail -f /var/lib/mysql/xaxh-server.err
二 :二進位制日誌
二進位制日誌(binlog)記錄了所有的 ddl(資料定義語言)語句和 dml(資料操縱語言)語句,但是不包括資料查詢語句。此日誌對於災難時的資料恢復起著極其重要的作用,mysql的主從複製, 就是通過該binlog實現的。
二進位制日誌,預設情況下是沒有開啟的,需要到mysql的配置檔案中開啟,並配置mysql日誌的格式。
配置檔案位置 : /usr/my.cnf
日誌存放位置 : 配置時,給定了檔名但是沒有指定路徑,日誌預設寫入mysql的資料目錄。
配置開啟binlog日誌, 日誌的檔案字首為 mysqlbin -----> 生成的檔名如 :
mysqlbin.000001,mysqlbin.000002
log_bin=mysqlbin
#配置二進位制日誌的格式
binlog_format=statement
三:查詢日誌
查詢日誌中記錄了客戶端的所有操作語句,而二進位制日誌不包含查詢資料的sql語句。
預設情況下, 查詢日誌是未開啟的。如果需要開啟查詢日誌,可以設定以下配置 :
該選項用來開啟查詢日誌 , 可選值 : 0 或者 1 ; 0 代表關閉, 1 代表開啟
general_log=
1
設定日誌的檔名 , 如果沒有指定, 預設的檔名為
host_name.loggeneral_log_file=file_name
四:慢查詢日誌
慢查詢日誌記錄了所有執行時間超過引數 long_query_time 設定值並且掃瞄記錄數不小於min_examined_row_limit 的所有的sql語句的日誌。long_query_time 預設為 10 秒,最小為 0, 精度可以到微秒。
慢查詢日誌預設是關閉的 。可以通過兩個引數來控制慢查詢日誌 :
該引數用來控制慢查詢日誌是否開啟, 可取值: 1 和 0 , 1 代表開啟, 0 代表關閉
slow_query_log=
1
該引數用來指定慢查詢日誌的檔名
slow_query_log_file=slow_query.log
該選項用來配置查詢的時間限制, 超過這個時間將認為值慢查詢, 將需要進行日誌記錄, 預設10s
long_query_time=
10
Log日誌小結
注 網路摘抄,自己小結,侵刪 日誌用途 問題追蹤 通過日誌不僅僅包括我們程式的一些bug,也可以在安裝配置時,通過日誌可以發現問題。狀態監控 通過實時分析日誌,可以監控系統的執行狀態,做到早發現問題 早處理問題。安全審計 審計主要體現在安全上,通過對日誌進行分析,可以發現是否存在非授權的操作。一般l...
ORACLE重做日誌小結
select a.sequence b.sequence a.first time,b.first time,round a.first time b.first time 60 60 24,2 timeinterval from v log history a left join v log hi...
mysql 日誌 部落格 Mysql 日誌
日誌 errlog錯誤日誌 作用記錄mysql從啟動以來,所有的狀態,警告,錯誤。dba靠此定位資料庫問題。配置預設是開啟,vim etc my.cnf log error var log mysqld.log binlog二進位制日誌 作用主要記錄資料庫變化的日誌。資料恢復,主從複製中應用 檢視再...