最近經常收到360網站監控發來的郵件,提示網站打不開,原因則無一例外都是磁盤爆滿,導致mysql停止工作,刪除部分文件后,網站恢復訪問,不過過不多久,網站又再次因為磁盤爆滿而打不開,在服務器上找了一圈的原因,終于發現了幾個特別大的文件(linux查詢文件夾體積的命令是:du -h):
mysql操作日志占用服務器資源過多百度后得知,這些文件都是數據的操作日志文件,登陸mysql后清理掉就可以了mysql登陸命令(注:前面的路徑可能會有所不同): /usr/local/mysql/bin/mysql -u root -p清理命令:reset master;(注意后面的分號也要帶好)。清理完后,磁盤剩余空間頓時增大了不少,如果想要關閉數據庫操作日志的朋友,可以接著往下看:如果你只有一個mysql服務器,在/etc/ 下面找到my.cnf文件vim /etc/my.cnf把里面的:
這兩行注釋掉(在前面加#即可),然后重啟mysql服務可以了(重啟mysql命令,可以用:service mysqld restart)。但是如果你設置了主從服務器,那么就需要做以下操作了。A:在每個從屬服務器上,使用SHOW SLAVE STATUS來檢查它正在讀取哪個日志。B:使用SHOW MASTER LOGS獲得主服務器上的一系列日志。C:在所有的從屬服務器中判定最早的日志,這個是目標日志,如果所有的從屬服務器是更新的,就是清單上的最后一個日志。D:清理所有的日志,但是不包括目標日志,因為從服務器還要跟它同步。簡單地說,這些MySQL目錄下的形如mysql-bin.000***的文件時MySQL的事務日志。 刪除復制服務器已經拿走的binlog是安全的,一般來說網絡狀況好的時候,保留最新的那一個足以。