本篇內(nèi)容介紹了“MySQL的日志文件是什么”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、郴州網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、HTML5建站、商城網(wǎng)站建設、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為郴州等各大城市提供網(wǎng)站開發(fā)制作服務。
mysql有四種日志文件:1、二進制日志文件,該日志文件會以二進制的形式記錄數(shù)據(jù)庫的各種操作,但不記錄查詢語句;2、錯誤日志文件,主要記錄MySQL服務器啟動和停止過程中的信息、服務器在運行過程中發(fā)生的故障和異常情況等;3、通用查詢?nèi)罩疚募?,記錄服務器的啟動和關(guān)閉信息、客戶端的連接信息、更新、查詢數(shù)據(jù)記錄的SQL語句等;4、慢查詢?nèi)罩疚募?,主要記錄?zhí)行事件超過指定時間的操作。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
日志是數(shù)據(jù)庫的重要組成部分,主要用來記錄數(shù)據(jù)庫的運行情況、日常操作和錯誤信息。
在MySQL 中 ,日志文件可以分為4 種:二進制日志文件、錯誤日志文件、通用查詢?nèi)罩疚募吐樵內(nèi)罩疚募?/strong>
二進制日志文件:該日志文件會以二進制的形式記錄數(shù)據(jù)庫的各種操作,但不記錄查詢語句。主要用于記錄數(shù)據(jù)庫的變化情況,即 SQL 語句的 DDL 和 DML 語句,不包含數(shù)據(jù)記錄查詢操作。
錯誤日志文件:主要記錄 MySQL 服務器啟動和停止過程中的信息、服務器在運行過程中發(fā)生的故障和異常情況等。
通用查詢?nèi)罩疚募涸撊罩居涗?MySQL 服務器的啟動和關(guān)閉信息、客戶端的連接信息、更新、查詢數(shù)據(jù)記錄的 SQL 語句等。
慢查詢?nèi)罩疚募河涗泩?zhí)行事件超過指定時間的操作,通過工具分析慢查詢?nèi)罩究梢远ㄎ?MySQL 服務器性能瓶頸所在。
在 MySQL 所支持的日志文件里,除了二進制日志文件外,其它日志文件都是文本文件。默認情況下,MySQL 只會啟動錯誤日志文件,而其它日志則需要手動啟動。
使用日志有優(yōu)點也有缺點。啟動日志后,雖然可以對 MySQL 服務器性能進行維護,但是會降低 MySQL 的執(zhí)行速度。例如,一個查詢操作比較頻繁的 MySQL 中,記錄通用查詢?nèi)罩竞吐樵內(nèi)罩疽ㄙM很多的時間。
日志文件還會占用大量的硬盤空間。對于用戶量非常大、操作非常頻繁的數(shù)據(jù)庫,日志文件需要的存儲空間甚至比數(shù)據(jù)庫文件需要的存儲空間還要大。因此,是否啟動日志,啟動什么類型的日志要根據(jù)具體的應用來決定。
擴展知識:MySQL使用二進制日志還原數(shù)據(jù)庫
二進制日志中記錄了用戶對數(shù)據(jù)庫更改的所有操作,如 INSERT 語句、UPDATE 語句、CREATE 語句等。如果數(shù)據(jù)庫因為操作不當或其它原因丟失了數(shù)據(jù),可以通過二進制日志來查看在一定時間段內(nèi)用戶的操作,結(jié)合數(shù)據(jù)庫備份來還原數(shù)據(jù)庫。
下面將詳細介紹使用二進制日志還原數(shù)據(jù)庫的方法。
數(shù)據(jù)庫遭到意外損壞時,應該先使用最近的備份文件來還原數(shù)據(jù)庫。另外備份之后,數(shù)據(jù)庫可能進行了一些更新,這時可以使用二進制日志來還原。因為二進制日志中存儲了更新數(shù)據(jù)庫的語句,如 UPDATE 語句、INSERT 語句等。
二進制日志還原數(shù)據(jù)庫的命令如下:
mysqlbinlog filename.number | mysql -u root -p
以上命令可以理解成,先使用 mysqlbinlog 命令來讀取 filename.number 中的內(nèi)容,再使用 mysql 命令將這些內(nèi)容還原到數(shù)據(jù)庫中。
技巧:二進制日志雖然可以用來還原 MySQL 數(shù)據(jù)庫,但是其占用的磁盤空間也是非常大的。因此,在備份 MySQL 數(shù)據(jù)庫之后,應該刪除備份之前的二進制日志。如果備份之后發(fā)生異常,造成數(shù)據(jù)庫的數(shù)據(jù)損失,可以通過備份之后的二進制日志進行還原。
使用 mysqlbinlog 命令進行還原操作時,必須是編號(number)小的先還原。例如,mylog.000001 必須在 mylog.000002 之前還原。
例 1
下面使用二進制日志來還原數(shù)據(jù)庫,代碼如下:
mysqlbinlog mylog.000001 | mysql -u root -p mysqlbinlog mylog.000002 | mysql -u root -p mysqlbinlog mylog.000003 | mysql -u root -p mysqlbinlog mylog.000004 | mysql -u root -p
“mysql的日志文件是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
文章標題:mysql的日志文件是什么
當前網(wǎng)址:http://chinadenli.net/article2/jggpoc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、商城網(wǎng)站、品牌網(wǎng)站建設、標簽優(yōu)化、面包屑導航、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)