實際一點:
先以window為環境:
window下的日誌
日誌檔案型別概述:
1.錯誤日誌 記錄啟動、執行或停止mysqld時出現的問題。
my.ini配置資訊:
#enter a name for the error log file. otherwise a default name will be used.
#log-error=d:/mysql_log_err.txt
2.查詢日誌 記錄建立的客戶端連線和執行的語句。
my.ini配置資訊:
#enter a name for the query log file. otherwise a default name will be used.
#log=d:/mysql_log.txt
3.更新日誌 記錄更改資料的語句。不贊成使用該日誌。
my.ini配置資訊:
#enter a name for the update log file. otherwise a default name will be used.
#log-update=d:/mysql_log_update.txt
4.二進位制日誌 記錄所有更改資料的語句。還用於複製。
my.ini配置資訊:
#enter a name for the binary log. otherwise a default name will be used.
#log-bin=d:/mysql_log_bin
5.慢日誌 記錄所有執行時間超過long_query_time秒的所有查詢或不使用索引的查詢。
my.ini配置資訊:
#enter a name for the slow query log file. otherwise a default name will be used.
#long_query_time =1
#log-slow-queries= d:/mysql_log_slow.txt
linux下的配置
**在linux下:
sql**
1. # 在[mysqld] 中輸入
2. #log
3. log-error=/usr/local/mysql/log/error.log
4. log=/usr/local/mysql/log/mysql.log
5. long_query_time=2
6. log-slow-queries= /usr/local/mysql/log/slowquery.log
# 在[mysqld] 中輸入 #log log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log
windows下:
sql**
1. # 在[mysqld] 中輸入
2. #log
3. log-error="e:/progra~1/easyph~1.0b1/mysql/logs/error.log"
4. log="e:/progra~1/easyph~1.0b1/mysql/logs/mysql.log"
5. long_query_time=2
6. log-slow-queries= "e:/progra~1/easyph~1.0b1/mysql/logs/slowquery.log"
# 在[mysqld] 中輸入 #log log-error="e:/progra~1/easyph~1.0b1/mysql/logs/error.log" log="e:/progra~1/easyph~1.0b1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "e:/progra~1/easyph~1.0b1/mysql/logs/slowquery.log"
開啟慢查詢
long_query_time =2 --是指執行超過多久的sql會被log下來,這裡是2秒
log-slow-queries= /usr/local/mysql/log/slowquery.log --將查詢返回較慢的語句進行記錄
log-queries-not-using-indexes = nouseindex.log --就是字面意思,log下來沒有使用索引的query
log=mylog.log --對所有執行語句進行記錄
日誌的存放:預設情況下,當開啟時,所有的日誌都存放在datadir目錄下. 如果沒有指定名稱的話,它會以後主機名為名稱. 如主機名為songcomputer,則相關就的日誌為songcomputer.log檔案.
mysql日誌的關閉與開啟:
使用以下命令檢視是否啟用了日誌
mysql>show variables like 'log_%』;
凡value值為off的表示未開啟服務,若要開啟只需要將上的my.ini配置資訊寫入(my.ini為mysql安裝目錄下),然後去掉前面的「#」
號,再重啟mysql服務。ok,現在會看到指定的日誌檔案已建立。相反地,若要停止mysql日誌服務,只需要將my.ini中對應的配置資訊去掉即
可。>>>>相應的使用慢日誌查詢
手動的去讀取慢日誌以及修改慢日誌的時間
show variables like 'long%'
會得到慢日誌的時間
進行設定慢日誌的值
set long_query_time =2;
側重的二進位制檔案
二進位制日誌:
從概述中我可以看到my.ini配置資訊的log-bin沒有指定副檔名,這是因為即使你指定上副檔名它也不使用。當mysql建立二進位制日誌檔案
時,首先建立乙個以「mysql_log_bin」為名稱,以「.index」為字尾的檔案;再建立乙個以「mysql_log_bin」為名稱,以
「.000001」為字尾的檔案。當mysql服務重新啟動一次以「.000001」為字尾的檔案會增加乙個,並且字尾名加1遞增;如果日誌長度超過了
max_binlog_size的上限(預設是1g)也會建立乙個新的日誌檔案;使用flush
logs(mysql命令符)或者執行mysqladmin –u –p flush-logs(windows命令提示符)也會建立乙個新的日誌檔案。
既然寫入的都是二進位制資料,用記事本開啟檔案是看不到正常資料的,那怎麼檢視呢?
使用bin目錄下mysqlbinlog命令,如:
bin>mysqlbinlog d:/mysql_log/mysql_bin.000001
bin>mysqlbinlog d:/mysql_log/mysql_bin.000002
bin>mysqlbinlog d:/mysql_log/mysql_bin.000003
bin>mysqlbinlog d:/mysql_log/mysql_bin.000004
bin>mysqlbinlog d:/mysql_log/mysql_bin.000005
使用sql語句也可檢視mysql建立的二進位制的檔案目錄:
mysql> show master logs;
檢視當前二進位制檔案狀態:
mysql> show master status;
至於準確的看懂日誌檔案,還需要讀者仔細閱讀,深深體會,這裡就不再奧述了!
mysql下的日誌
實際一點 先以window為環境 window下的日誌 日誌檔案型別概述 1 錯誤日誌 記錄啟動 執行或停止mysqld時出現的問題。my.ini配置資訊 enter a name for the error log file.otherwise a default name will be use...
mysql 表 日誌 檢視mysql的日誌
mysql日誌的種類,一般來說,日誌有五種,分別為 錯誤日誌 log err 記錄啟動,執行,停止mysql時出現的資訊 二進位制日誌 log bin 記錄所有更改資料的語句,還用於複製,恢復資料庫用 查詢日誌 log 記錄建立的客戶端連線和執行的語句 慢查詢日誌 log slow queries ...
linux下檢視mysql日誌檔案的方法
檢視mysql日誌方法 mysql預設不允許我們檢視日誌。需要更改一些設定 1 vi 更改配置檔案 允許使用者檢視日誌檔案 sudo vi etc mysql mysql.conf.d mysqld.cnf 把68 69行前面的 刪除 顯示行號方法 shift nu 跳轉行方法 68 shfit g...