程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql日志學習總結,mysql日志總結

mysql日志學習總結,mysql日志總結

編輯:MySQL綜合教程

mysql日志學習總結,mysql日志總結


一,日志簡介 mysql日志主要分為四類,使用這些日志文件,可以查看mysql內部發生的事情。這四類日志分別為:
  • 錯誤日志
     記錄mysql服務的啟動、運行或停止mysql的服務時出現的問題。
  • 查詢日志
     記錄建立的客戶端連接和執行語句。
  • 二進制日志
     記錄所有更改數據的語句,可以用於數據復制。
  • 慢查詢日志
      記錄所有執行時間超過long_query_time的所有查詢或不適用索引的查詢。   二,二進制文件
  • 啟動和設置二進制文件
在my.cnf中[mysqld]有幾個二進制的設置:   log-bin  [=path/ [filename] ]   expire_logs_days = 10   max_binlog_size = 100M log-bin定義二進制日志,path表明二進制文件所在路徑;filename指定文件名稱;其中.index為其他二進制日志清單。 expire_binlog_size定義清除過期日志的時間。默認值是零,表示沒有自動清除。 max_binlog_size定義單個文件的大小 ,當超出文件大小限制,日志就會發生滾動,關閉當前的文件,重新打開一個新的日志文件,不能將該變量設置為大於1G或小於4kb。 可以使用show variables like ‘log_%’;日志的設置。 建議:數據庫文件最好不要和日志文件放在同一個磁盤上。
  • 查看二進制文件
語句:show binary bogs; 查看二進制日志文件個數及文件名。 使用命令mysqlbinlog查看日志格式, 刪除二進制日志 語句:reset master ;刪除二進制文件。 刪除指定二進制文件: purge (master | binary ) logs to ‘log_name’ purge (master | binary ) logs before 'date'
  • 使用二進制文件恢復數據庫
mysqlbinlog恢復數據的語法如下:  mysqlbinlog [option] filename mysql -u user p password     option是一些可選項,filename是日志文件名。比較常用的兩對option參數是--start-date、--stop-date和--start-position、--stop-position。 --start-date、--stop-date可以設置恢復數據庫的起始時間點和結束時間點。--start-position、--stop-position可以指定恢復數據庫的開始位置和結束位置。
  • 暫時停止二進制日志功能
可以在配置文件裡修改,但是在配置文件裡修改需要重啟數據庫。所以使用命令修改, set sql_log_bin =  [ 0 | 1 ]         零為暫停;1位恢復。   三,錯誤日志 記錄mysql服務的啟動、運行或停止mysql的服務時出現嚴重錯誤的相關信息。
  • 啟動和設置錯誤日志
在配置文件中,配置如下: log-error   [=path/ [filename] ]    path為日志文件所在的目錄路徑,file_name為日志名。修改配置項後,需要重啟mysql服務以生效。
  • 查看錯誤日志
查看錯誤日志可以監控系統的運行狀態,便於及時發現故障、修復故障。 查看錯誤日志路徑: show  variables like 'log_err';  找到日志文件所在,可以用常用的linux命令查看。
  • 刪除錯誤日志
mysql的錯誤日志是以文本文件的形式在文件系統中存儲的,可以直接刪除。 flush logs只會重新打開日志文件,不會備份和創建的操作。如果日志文件不存在使用flush logs 可以自動創建。 刪除錯誤日志之後,需要在服務器端執行以下命令: mysqladmin -u root -p  flush-logs   四,通用查詢日志 通用查詢日志記錄包括mysql的所有用戶操作,啟動和關閉服務、執行查詢和更新語句等。
  • 啟動和設置通用查詢日志
log    [=path/ [filename] ]   path為日志文件所在的目錄路徑,file_name為日志名。修改配置項後,需要重啟mysql服務以生效  
  • 查看通用查詢日志
windows下,使用記事本就可以打開;linux下使用more,less,cat等命令查看。
  • 刪除通用查詢日志
通用查詢日志為文本文件格式,所以可以直接刪除。重新建立新的日志文件,可以使用mysqladmin flush-log   五,慢查詢日志 記錄所有執行時間超過long_query_time的所有查詢或不適用索引的查詢;通過慢查詢日志,可以找出執行時間較長、執行效率較低的語句, 然後進行優化。 啟動和設置慢查詢日志 在my.cnf的配置文件如下: [mysqld]   log-slow-queries   [=path/ [filename] ]   long_query_time=n path為日志文件所在的目錄路徑,filename為日志名,n為時間,單位為秒。修改配置項後,需要重啟mysql服務以生效
  • 查看慢查詢日志
可以使用慢查詢日志分析工具查看;比較著名的有:mysql dump slow、mysql sla  、mysql log filter
  • 刪除慢查詢日志
可以直接刪除。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved