這些日誌的配置可在mysqld.conf中獲取,以下:mysql
c80k2@c80k2-Vostro-3667❯/etc/mysql/mysql.conf.d$ vim mysqld.cnf
1.error錯誤日誌: 記錄啓動、運行或中止mysqld時出現的問題sql
# Error log - should be very few entries. # # log_error = /var/log/mysql/error.log
2.查詢日誌: 記錄創建的客戶端鏈接和執行的全部語句(包括錯誤的)。
log=d:/mysql_log.txt
3. binlog二進制日誌: 記錄全部更改數據的語句、還用於主從複製shell
# The following can be used as easy to replay backup logs or for replication. # note: if you are setting up a replication slave, see README.Debian about # other settings you may need to change. server-id = 1 log_bin = /var/log/mysql/mysql-bin.log expire_logs_days = 10 max_binlog_size = 100M #binlog_do_db = include_database_name #binlog_ignore_db = include_database_name
此項設置能夠用來很容易地回滾備份日誌以及用來數據庫備份。注意: 若是你正在設置一個備份從庫,參看README.Debian來查看其餘你可能改變的設置。數據庫
注:log-update 更新日誌已經被 log-bin 取代了,若是定義了會致使服務不可啓動vim
4.慢日誌: 記錄全部執行時間超過long_query_time秒的全部查詢bash
# Here you can see queries with especially long duration #log_slow_queries = /var/log/mysql/mysql-slow.log #long_query_time = 2 #log-queries-not-using-indexes
這裏你能夠看到耗時特別長的語句,單位爲秒。性能
5. 通用日誌: 會將全部到達MySQL Server的SQL語句記錄下來。通常不會開啓開功能,由於log的量會很是龐大。但個別狀況下可能會臨時的開一下子general log以供排障使用。開啓方法:this
a, 在mysqld.conf配置文件中進行配置,以下:spa
# Be aware that this log type is a performance killer. # As of 5.1 you can enable the log at runtime! #general_log_file = /var/log/mysql/mysql.log #general_log = 1
注意這裏的註釋部分: 請注意這個日誌類型是性能殺手,從5.1版本開始你能夠在mysql正在執行的過程當中開啓這個日誌,也就是說能夠直接啓動就應用,而不須要從新啓動mysql,實現了熱啓動。日誌
b, 經過mysql語句開啓,以下:
mysql>set global general_log_file='/tmp/general.lg'; #設置路徑 mysql>set global general_log=on; # 開啓general log模式 mysql>set global general_log=off; # 關閉general log模式
# 設置general log保存路徑
# 注意在Linux中,此日誌路徑只能設置到 /tmp 或 /var 文件夾下,設置其餘路徑出錯
# 須要root用戶纔有訪問此文件的權限
c, 將日誌記錄在表中
shell代碼
mysql>set global log_output='table'
運行後, 能夠在mysql數據庫下查找 general_log表