前一陣子工作項目上的事情忙的焦頭爛額,最近要進行部門調(diào)整將要去做新的項目。又要學(xué)習(xí)很多新的知識了,還是很興奮激動的。今天下班回來查看了一下VPS狀態(tài),發(fā)現(xiàn)VPS的空間只剩下了1G多!第一反應(yīng)是被入侵了,但是看了一下log并沒有發(fā)現(xiàn)什么異常的登錄,加上平時基本都是用私鑰免密碼登錄的VPS,別入侵的可能也不是很大。那我就很疑惑了,因為系統(tǒng)文件占用應(yīng)該也就3G多,我平時并沒有在VPS放過什么大文件,不應(yīng)該一下子少那么多空間。于是開始一番du查找終于找到了罪魁禍?zhǔn)?!原來?u>mysql的log文件導(dǎo)致的。
裝mysql并運行一段時間后,在mysql目錄下出現(xiàn)一堆類似mysql-bin.000***,從mysql-bin.000001開始一直排列下來,而且占用了大量硬盤空間,高達十幾個G.。原來mysql-bin.000001、mysql-bin.000002等文件是數(shù)據(jù)庫的操作日志,例如UPDATE一個表,或者DELETE一些數(shù)據(jù),即使該語句沒有匹配的數(shù)據(jù),這個命令也會存儲到日志文件中,還包括每個語句執(zhí)行的時間,也會記錄進去的。 這些形如mysql-bin.00001的文件主要是用來做什么的呢?
1、數(shù)據(jù)恢復(fù)
如果你的數(shù)據(jù)庫出問題了,而你之前有過備份,那么可以看日志文件,找出是哪個命令導(dǎo)致你的數(shù)據(jù)庫出問題了,想辦法挽回損失。
2、主從服務(wù)器之間同步數(shù)據(jù)
主服務(wù)器上所有的操作都在記錄日志中,從服務(wù)器可以根據(jù)該日志來進行,以確保兩個同步。
3、清除辦法
運行 /usr/local/mysql/bin/mysql -u root -p 登錄執(zhí)行:
復(fù)制代碼 代碼如下:
reset master;
復(fù)制代碼 代碼如下:
#log-bin=mysql-bin
#binlog_format=mixed
新聞熱點
疑難解答
圖片精選