mysql中的日誌包括:錯誤日誌、通用查詢日誌、二進位制日誌、慢查詢日誌等等。這裡主要介紹下比較常用的兩個功能:通用查詢日誌和慢查詢日誌。
錯誤日誌:記錄啟動、執行或停止mysqld時出現的問題。
通用日誌:記錄建立的客戶端連線和執行的語句。
二進位制日誌:記錄所有更改資料的語句。還用於複製。
慢查詢日誌:記錄所有執行時間超過long_query_time秒的所有查詢或不使用索引的查詢。
innodb日誌:innodb redo log
# 查詢所有日誌情況mysql
> show variables like "%
log%
";# 查詢錯誤日誌檔案路徑
mysql
> show variables like
'log_error';
# 查詢二進位制日誌檔案路徑
mysql
> show variables like "%log_bin%
";# 查詢慢查詢日誌檔案路徑
mysql
> show variables like
'slow_query_log_file
';
錯誤日誌
通用查詢日誌
通用查詢日誌:記錄建立的客戶端連線和執行的語句。開啟 general_log 將所有到達mysql server的sql語句記錄下來。其中general_log_file中記錄了sql歷史。不用的時候盡量關閉,因為log佔據磁碟空間較大。
general_log:日誌功能是否開啟,預設關閉off。開啟之後,執行的sql語句全部記錄到日誌檔案裡。
general_log_file:日誌檔案儲存位置。
log_output:日誌的輸出型別,是檔案還是**。
# 檢視通用日誌檔案引數mysql> show variables like 'general%';
# 檢視通用日誌是否開啟
mysql> show variables like 'general_log';
# 查詢通用日誌檔案的路徑
mysql> show variables like 'general_log_file';
# 檢視通用日誌的輸出型別:table或file
mysql> show variables like '%log_output%';
臨時設定
# 臨時開啟通用日誌查詢:mysql> set global general_log = on;
# 臨時關閉通用日誌查詢:
mysql> set global general_log = off;
# 設定通用日誌檔案儲存位置
mysql> set global general_log_file = 'tmp/general.log';
# 設定通用日誌輸出為表方式:
mysql> set global log_output = 'table';
# 設定通用日誌輸出為檔案方式
mysql> set global log_output = 'file';
# 設定通用日誌輸出為表和檔案方式:
mysql> set global log_output = 'file,table';
1.如果慢檔案格式為file格式,儲存在資料庫的資料檔案中的hostname.log。log_output='file' 表示將日誌存入檔案,預設值是file。
2.如果慢檔案格式是table格式,儲存在資料庫的資料檔案中的mysql.general_log。log_output='table'表示將日誌存入資料庫,這樣日誌資訊就會被寫入到mysql.slow_log表中。
3.注意:上述命令只對當前生效,當mysql重啟失效,如果要永久生效,需要配置my.cnf檔案。
永久配置:修改my.cnf配置檔案
# 值為1表示開啟通用日誌查詢,值為0表示關閉通用日誌查詢general_log = 1
# 設定通用日誌檔案的路徑
# 設定通用日誌的輸出格式為檔案和表
log_output=file,table
二進位制日誌
慢查詢日誌
慢查詢日誌:記錄所有執行時間超過long_query_time秒的所有查詢或者不使用索引的查詢
Linux 日誌檔案系統
檔案系統要解決的乙個關鍵問題是怎樣防止掉電或系統崩潰造成資料損壞 在此類意外事件中,導致檔案系統損壞的根本原因在於寫檔案不是原子操作 因為寫檔案涉及的不僅僅是使用者資料,還涉及元資料 metadata 包括 superblock inode bitmap inode data block bitma...
MYSQL優化之關閉檔案系統日誌
通常資料庫系統在資料大量操作時,會產生很大的磁碟io,關閉linux各檔案系統的日誌功能可以提高資料庫吞吐量。以ext4為例 1 檢視檔案系統是否開啟日誌功能了。tune2fs l dev sda2 grep has journal 如果返回結果中出現has journal,則說明該檔案系統開啟了日...
mysql系統日誌檔案 Mysql 日誌檔案系統
mysql中的日誌包括 錯誤日誌 通用查詢日誌 二進位制日誌 慢查詢日誌等等。這裡主要介紹下比較常用的兩個功能 通用查詢日誌和慢查詢日誌。錯誤日誌 記錄啟動 執行或停止mysqld時出現的問題。通用日誌 記錄建立的客戶端連線和執行的語句。二進位制日誌 記錄所有更改資料的語句。還用於複製。慢查詢日誌 ...