所以今天來(lái)研究一下mysql的日志蚕苇。
一. MySQL日志分類
- 錯(cuò)誤日志 (The Error Log)
Problems encountered starting, running, or stopping mysqld
記錄啟動(dòng)、運(yùn)行或停止mysqlld時(shí)出現(xiàn)的問(wèn)題 - 常規(guī)查詢?nèi)罩?(The General Query Log)
Established client connections and statements received from clients
記錄建立的客戶端連接和執(zhí)行的語(yǔ)句拂蝎。 - 慢速查詢?nèi)罩?(The slow query log)
All queries that took more than long_query_time seconds to execute or didn't use indexes
記錄所有執(zhí)行時(shí)間超過(guò)long_query_time秒的所有查詢或不使用索引的查詢。 - 二進(jìn)制日志 (The binary log)
All statements that change data (also used for replication)
記錄所有更改數(shù)據(jù)的語(yǔ)句边锁。
打開(kāi)my.ini可以看到文件中已經(jīng)寫好了一部分日志配置辕坝。下面是我加了注釋的誊册,方便理解各項(xiàng)的含義领突。沒(méi)有配置log-bin日志,如果需要案怯,可以類似地進(jìn)行配置君旦。
# General and Slow logging.
log-output=FILE
#為1開(kāi)啟general日志,為0關(guān)閉
general-log=1
#general日志存放位置嘲碱,日志開(kāi)啟時(shí)有效金砍。默認(rèn)位置為Data目錄(見(jiàn)其他),也可以指定一個(gè)絕對(duì)位置
general_log_file="X6X8-20170117BN.log"
#slow日志開(kāi)閉
slow-query-log=1
#slow日志存放文件
slow_query_log_file="X6X8-20170117BN-slow.log"
#超過(guò)多長(zhǎng)時(shí)間算slow麦锯,單位是秒
long_query_time=10
# Binary Logging.
# log-bin
# Error Logging.
log-error="X6X8-20170117BN.err"
二. MySQL日志開(kāi)啟與關(guān)閉
開(kāi)啟與關(guān)閉日志只需配置上述my.ini文件
- 將相應(yīng)日志的開(kāi)關(guān)設(shè)置為1恕稠。如slow-query-log=1開(kāi)啟slow日志
- 配置日志文件存放文職。如slow_query_log_file="c:\log\mysql_slow_log.log" 或者寫相對(duì)路徑slow_query_log_file="slow_log.log"會(huì)存儲(chǔ)到data(見(jiàn)3.2)目錄下扶欣。
- 重啟mysql(見(jiàn)3.1)
三. 其他
3.1 Windows系統(tǒng)下MySQL的關(guān)閉與啟動(dòng)
在windows系統(tǒng)下MySQL一般會(huì)被安裝為系統(tǒng)服務(wù)鹅巍。所以我們可以以啟動(dòng)、關(guān)閉一般服務(wù)的通用方式來(lái)操作MySQL宵蛀。
在命令提示符下通過(guò)以下命令開(kāi)、閉系統(tǒng)服務(wù)
啟動(dòng):net start 服務(wù)名
關(guān)閉:net stop 服務(wù)名
如果不知道本機(jī)上MySQL服務(wù)的服務(wù)名县貌,可以通過(guò)win+R打開(kāi)運(yùn)行窗口术陶,輸入service.msc,打開(kāi)系統(tǒng)服務(wù)煤痕,查看mysql的服務(wù)名梧宫。當(dāng)然也可以在這個(gè)窗口進(jìn)行mysql的啟動(dòng)與關(guān)閉接谨。
3.2 mysql配置文件my.ini、日志和數(shù)據(jù)文件的位置
我遇到了兩種情況:
- mysql安裝在c盤program file文件夾下塘匣,my.ini位于c:\ProgramData\MySQL\MySQL Server 5.7下脓豪。該目錄下有個(gè)Data目錄是日志的默認(rèn)存放位置,并且數(shù)據(jù)庫(kù)文件也存在這個(gè)Data目錄下忌卤。
- 安裝在了D盤扫夜,以上文件位于mysql安裝目錄下。