MySQL日志設(shè)置及查看方法
MySQL有以下幾種日志:
錯(cuò)誤日志: -log-err
查詢?nèi)罩荆?-log
慢查詢?nèi)罩? -log-slow-queries
更新日志: -log-update
二進(jìn)制日志: -log-bin
默認(rèn)情況下,所有日志創(chuàng)建于mysqld數(shù)據(jù)目錄中。通過刷新日志,你可以強(qiáng)制 mysqld來關(guān)閉和重新打開日志文件(或者在某些情況下切換到一個(gè)新的日志)。當(dāng)你執(zhí)行一個(gè)FLUSH LOGS語句或執(zhí)行mysqladmin flush-logs或mysqladmin refresh時(shí),出現(xiàn)日志刷新
1. 錯(cuò)誤日志
用--log- error[=file_name]選項(xiàng)來指定mysqld保存錯(cuò)誤日志文件的位置。如果沒有給定file_name值,mysqld使用錯(cuò)誤日志名 host_name.err 并在數(shù)據(jù)目錄中寫入日志文件。如果你執(zhí)行FLUSH LOGS,錯(cuò)誤日志用-old重新命名后綴并且mysqld創(chuàng)建一個(gè)新的空日志文件。(如果未給出--log-error選項(xiàng),則不會(huì)重新命名)。
如果不指定--log-error,或者(在Windows中)如果你使用--console選項(xiàng),錯(cuò)誤被寫入標(biāo)準(zhǔn)錯(cuò)誤輸出stderr。通常標(biāo)準(zhǔn)輸出為你的終端。
2. 通用查詢?nèi)罩?nbsp;
用--log[=file_name]或-l [file_name]選項(xiàng)啟動(dòng)它。如果沒有給定file_name的值,默認(rèn)名是host_name.log。
3. 慢速查詢?nèi)罩?nbsp;
用--log-slow-queries[=file_name]選項(xiàng)啟動(dòng)時(shí),mysqld 寫一個(gè)包含所有執(zhí)行時(shí)間超過long_query_time秒的SQL語句的日志文件.如果沒有給出file_name值,默認(rèn)未主機(jī)名,后綴為 -slow.log。如果給出了文件名,但不是絕對(duì)路徑名,文件則寫入數(shù)據(jù)目錄。
3. 更新日志
用--log-update[=file_name]選項(xiàng)啟動(dòng),不推薦使用.
是否啟用了日志
mysql>show variables like 'log_%';
怎樣知道當(dāng)前的日志
mysql> show master status;
顯示二進(jìn)制日志數(shù)目
mysql> show master logs;
看二進(jìn)制日志文件用mysqlbinlog
shell>mysqlbinlog mail-bin.000001
或者shell>mysqlbinlog mail-bin.000001 | tail
在配置文件中指定log的輸出位置.
Windows:Windows 的配置文件為 my.ini,一般在 MySQL 的安裝目錄下或者 c:\Windows 下。
Linux:Linux 的配置文件為 my.cnf ,一般在 /etc 下。
在linux下:
Sql代碼
# 在[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
# 在[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代碼
# 在[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"
# 在[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 --是指執(zhí)行超過多久的sql會(huì)被log下來,這里是2秒
log-slow-queries= /usr/local/mysql/log/slowquery.log --將查詢返回較慢的語句進(jìn)行記錄
log-queries-not-using-indexes = nouseindex.log --就是字面意思,log下來沒有使用索引的query
log=mylog.log --對(duì)所有執(zhí)行語句進(jìn)行記錄
windows下開啟mysql日志:
在[mysql]下加入這些(基本上等于加在最后面):
log-error=
#Enter a name for the query log file. Otherwise a default name will be used.
#注:(寫成txt文件editplus可以及時(shí)重載,不過有時(shí)要放在C盤下editplus才可以及時(shí)重載)
log= c:/mysql_query.log.txt
#Enter a name for the slow query log file. Otherwise a default name will be used.
log-slow-queries=
#Enter a name for the update log file. Otherwise a default name will be used.
log-update=
#Enter a name for the binary log. Otherwise a default name will be used.
log-bin=
相關(guān)文章
Mysql循環(huán)插入數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了Mysql循環(huán)插入數(shù)據(jù)的實(shí)現(xiàn)過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08Windows10下mysql 8.0.22 安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了Windows10下mysql 8.0.22 安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11windows下mysql數(shù)據(jù)庫主從配置教程
這篇文章主要為大家詳細(xì)介紹了windows下mysql數(shù)據(jù)庫主從配置教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05MySQL的InnoDB存儲(chǔ)引擎的數(shù)據(jù)頁結(jié)構(gòu)詳解
這篇文章主要為大家詳細(xì)介紹了MySQL的InnoDB存儲(chǔ)引擎的數(shù)據(jù)頁結(jié)構(gòu),,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03重置MySQL數(shù)據(jù)庫root密碼(linux/windows)
linux與windows下重置mysql用戶名與密碼的方法,需要的朋友可以參考下。2010-12-12