日志文件是MySQL數(shù)據(jù)庫(kù)的重要組成部分,包括有6種不同的日志文件:
- 錯(cuò)誤日志: -log-err
- 查詢?nèi)罩荆?-log
- 慢查詢?nèi)罩? -log-slow-queries
- 更新日志: -log-update
- 二進(jìn)制日志: -log-bin
這些日志可以幫助我們定位 mysqld 內(nèi)部發(fā)生的事件,數(shù)據(jù)庫(kù)性能故障,記錄數(shù)據(jù)的變更歷史,用戶恢復(fù)數(shù)據(jù)庫(kù)等。本文主要講解錯(cuò)誤日志文件(Error Log)相關(guān)內(nèi)容。
什么是錯(cuò)誤日志
錯(cuò)誤日志記錄了 MySQL Server 每次啟動(dòng)和關(guān)閉的詳細(xì)信息以及運(yùn)行過(guò)程中所有較為嚴(yán)重的警告和錯(cuò)誤信息。錯(cuò)誤日志的命名通常為「hostname.err」。
PS:「hostname」表示服務(wù)器主機(jī)名。

在實(shí)際工作中,我們不僅通過(guò)分析MySQL錯(cuò)誤日志來(lái)確定MySQL中的慢SQL,還可以通過(guò)它分析得到導(dǎo)致業(yè)務(wù)崩潰和其他故障的根本原因。
查看錯(cuò)誤日志的位置
我們可以用–log-error[=file_name]選項(xiàng)來(lái)開(kāi)啟 mysql 錯(cuò)誤日志,該選項(xiàng)指定 mysqld保存錯(cuò)誤日志文件的位置。

對(duì)于指定–log-error[=file_name]選項(xiàng)而未給定 file_name 值,mysql 使用錯(cuò)誤日志名host_name.err 并在數(shù)據(jù)目錄中寫(xiě)入日志文件。
修改錯(cuò)誤日志的位置
錯(cuò)誤日志所記錄的信息也可以通過(guò)log-error和log-warnings來(lái)定義,其中
- log_error可定義是否啟用錯(cuò)誤日志的功能和錯(cuò)誤日志的存儲(chǔ)位置
- log-warnings可定義是否將警告信息也定義至錯(cuò)誤日志中
可以在啟動(dòng)MySQL時(shí),指定log_error的值。如下所示:

了解了MySQL錯(cuò)誤日志位置以及如何修改其位置,下面簡(jiǎn)單舉例一個(gè)實(shí)踐操作的過(guò)程:
Linux 系統(tǒng)下打開(kāi) MySQL 錯(cuò)誤日志
1、進(jìn)「mysql」安裝目錄
進(jìn)入「data」目錄(該目錄存儲(chǔ)的是數(shù)據(jù)庫(kù)的數(shù)據(jù))。

2、進(jìn)入「data」目錄后可發(fā)現(xiàn)有「mysql」、「test」兩個(gè)子目錄(由此可看出 MySQL 數(shù)據(jù)存儲(chǔ)是按用戶定義的不同數(shù)據(jù)庫(kù)分開(kāi)存儲(chǔ)的)。

3、進(jìn)入「mysql」目錄,文件后綴為.err 的文件是運(yùn)行的錯(cuò)誤日志,可以使用 vi 命令打開(kāi)進(jìn)行分析。
然而,在云計(jì)算普遍使用的今天,企業(yè)在關(guān)注低成本的同時(shí)也注重高效率,在云數(shù)據(jù)庫(kù)上除了傳統(tǒng)的查看方式,是否有更便捷的工具可以幫助我們定位錯(cuò)誤日志呢?
答案:必須有!
給大家推薦實(shí)用的運(yùn)維工具——王教授,對(duì)于使用云(阿里云、騰訊云、AWS)的用戶,只需要綁定監(jiān)控的AcessKey,即可對(duì)資產(chǎn)進(jìn)行監(jiān)控、檢查。對(duì)于上述場(chǎng)景,他將在發(fā)現(xiàn)云數(shù)據(jù)庫(kù)存在日志錯(cuò)誤時(shí),立即給出告警通知,提醒我們排查錯(cuò)誤日志產(chǎn)生的原因及時(shí)處理,從而保證業(yè)務(wù)的正常運(yùn)行。

不僅如此,王教授還可以幫助我們展示云資源實(shí)時(shí)的使用情況,以及針對(duì)發(fā)現(xiàn)的問(wèn)題以及未來(lái)潛在的風(fēng)險(xiǎn)以告警的方式通知到個(gè)人。
來(lái)源:老王談運(yùn)維(今日頭條)
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至2705686032@qq.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。原文轉(zhuǎn)載: 原文出處: