mysql清除log-bin日志的方法
前一陣子工作項(xiàng)目上的事情忙的焦頭爛額,最近要進(jìn)行部門調(diào)整將要去做新的項(xiàng)目。又要學(xué)習(xí)很多新的知識(shí)了,還是很興奮激動(dòng)的。今天下班回來(lái)查看了一下VPS狀態(tài),發(fā)現(xiàn)VPS的空間只剩下了1G多!第一反應(yīng)是被入侵了,但是看了一下log并沒有發(fā)現(xiàn)什么異常的登錄,加上平時(shí)基本都是用私鑰免密碼登錄的VPS,別入侵的可能也不是很大。那我就很疑惑了,因?yàn)橄到y(tǒng)文件占用應(yīng)該也就3G多,我平時(shí)并沒有在VPS放過(guò)什么大文件,不應(yīng)該一下子少那么多空間。于是開始一番du查找終于找到了罪魁禍?zhǔn)祝≡瓉?lái)是mysql的log文件導(dǎo)致的。
裝mysql并運(yùn)行一段時(shí)間后,在mysql目錄下出現(xiàn)一堆類似mysql-bin.000***,從mysql-bin.000001開始一直排列下來(lái),而且占用了大量硬盤空間,高達(dá)十幾個(gè)G.。原來(lái)mysql-bin.000001、mysql-bin.000002等文件是數(shù)據(jù)庫(kù)的操作日志,例如UPDATE一個(gè)表,或者DELETE一些數(shù)據(jù),即使該語(yǔ)句沒有匹配的數(shù)據(jù),這個(gè)命令也會(huì)存儲(chǔ)到日志文件中,還包括每個(gè)語(yǔ)句執(zhí)行的時(shí)間,也會(huì)記錄進(jìn)去的。 這些形如mysql-bin.00001的文件主要是用來(lái)做什么的呢?
1、數(shù)據(jù)恢復(fù)
如果你的數(shù)據(jù)庫(kù)出問(wèn)題了,而你之前有過(guò)備份,那么可以看日志文件,找出是哪個(gè)命令導(dǎo)致你的數(shù)據(jù)庫(kù)出問(wèn)題了,想辦法挽回?fù)p失。
2、主從服務(wù)器之間同步數(shù)據(jù)
主服務(wù)器上所有的操作都在記錄日志中,從服務(wù)器可以根據(jù)該日志來(lái)進(jìn)行,以確保兩個(gè)同步。
3、清除辦法
運(yùn)行 /usr/local/mysql/bin/mysql -u root -p 登錄執(zhí)行:
如果你只有一個(gè)mysql服務(wù)器,在/etc/ 下面找到my.cnf文件vim /etc/my.cnf把里面的
#binlog_format=mixed
這兩行注釋掉,然后將mysql下的var目錄中的這些日志文件全部刪除,重啟mysql服務(wù)即可。
但是如果你設(shè)置了主從服務(wù)器,那么就需要做以下操作了。
A:在每個(gè)從屬服務(wù)器上,使用SHOW SLAVE STATUS來(lái)檢查它正在讀取哪個(gè)日志。
B:使用SHOW MASTER LOGS獲得主服務(wù)器上的一系列日志。
C:在所有的從屬服務(wù)器中判定最早的日志,這個(gè)是目標(biāo)日志,如果所有的從屬服務(wù)器是更新的,就是清單上的最后一個(gè)日志。
D:清理所有的日志,但是不包括目標(biāo)日志,因?yàn)閺姆?wù)器還要跟它同步。 簡(jiǎn)單地說(shuō),這些MySQL目錄下的形如mysql-bin.000***的文件時(shí)MySQL的事務(wù)日志。 刪除復(fù)制服務(wù)器已經(jīng)拿走的binlog是安全的,一般來(lái)說(shuō)網(wǎng)絡(luò)狀況好的時(shí)候,保留最新的那一個(gè)足以。
相關(guān)文章
MySQL中LIKE?BINARY和LIKE模糊查詢實(shí)例代碼
通常在實(shí)際應(yīng)用中,會(huì)涉及到模糊查詢的需求,下面這篇文章主要給大家介紹了關(guān)于MySQL中LIKE?BINARY和LIKE模糊查詢的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11給MySQL表中的字段設(shè)置默認(rèn)值的兩種方法
在MySQL中,我們可以為表的字段設(shè)置默認(rèn)值,以確保在插入新記錄時(shí),如果沒有為該字段指定值,將使用默認(rèn)值,要為MySQL表中的字段設(shè)置默認(rèn)值,我們可以在創(chuàng)建表時(shí)或者在已存在的表上使用ALTER TABLE語(yǔ)句進(jìn)行修改,下面將展示兩種設(shè)置默認(rèn)值的方法,需要的朋友可以參考下2023-11-11MySQL架構(gòu)體系知識(shí)點(diǎn)總結(jié)
在本篇內(nèi)容里我們給大家整理了關(guān)于MySQL架構(gòu)體系的相關(guān)知識(shí)點(diǎn)內(nèi)容以及相關(guān)實(shí)例,需要的朋友們學(xué)習(xí)下。2019-02-02MySQL中關(guān)于臨時(shí)表的一些基本使用方法
這篇文章主要介紹了MySQL中關(guān)于臨時(shí)表的一些基本使用方法,是MySQL入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-05-05win10 下安裝mysql服務(wù)器社區(qū)版本mysql 5.7.22 winx64的圖文教程
這篇文章主要介紹了win10 下安裝mysql服務(wù)器社區(qū)版本mysql 5.7.22 winx64的圖文教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05解決mysql錯(cuò)誤:Subquery?returns?more?than?1?row問(wèn)題
這篇文章主要介紹了解決mysql錯(cuò)誤:Subquery?returns?more?than?1?row問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05MySQL學(xué)習(xí)之?dāng)?shù)據(jù)庫(kù)操作DML詳解小白篇
本篇文章非常適合MySQl初學(xué)者,主要為大家講解了MySQL數(shù)據(jù)庫(kù)的常用操作,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家早日進(jìn)步升職加薪2021-09-09