經過檢視發現是阿里雲mysql的binlog太大太多占用大量磁碟
阿里雲mysql的binlog太大太多占用大量磁碟
現象:**訪問越來越慢,最後無法訪問了,經過檢查發現磁碟滿了。仔細查詢下來確認是由於mysql的binlog太多太大占用了空間。
分析過程及解決方案:通常出現這種問題都應該登入伺服器檢查磁碟、記憶體和程序使用的情況,通過top、df –h和free –m來檢查,發現磁碟空間滿了。再進一步通過du –sh對可以的目錄進行檢查,發現是mysql的binlog占用空間過大。清理binlog的方法如下:
1) 設定日誌保留時長expire_logs_days自動刪除
檢視當前日誌儲存天數:
show variables like '%expire_logs_days%';
這個預設是0,也就是logs不過期,可通過設定全域性的引數,使他臨時生效:
set global expire_logs_days=7;
設定了只保留7天binlog, 下次重啟mysql這個引數缺省會失敗,所以需在my.cnf中設定
expire_logs_days = 7
2) 手動刪除binlog (purge binary logs)
用於刪除列於在指定的日誌或日期之前的日誌索引中的所有二進位制日誌。這些日誌也會從記錄在日誌索引檔案
purge logs to 'log_name'
purge logs before 'date'
例如:purge master logs to 'mysql-bin.010';
purge master logs before '2008-06-22 13:00:00';
purge master logs before date_sub( now( ), interval 3 day);
參考解決方法:
記錄第一次 dev vda1磁碟空間不夠的清理過程
準備使用mongodb建立備份資料庫,並且把資料從mysql遷移過去。登上伺服器後,我尋思這要大量資料遷移,先看看磁碟空間還夠不夠,好傢伙,這一看發現磁碟空間幾乎不剩下了。使用命令 df h我們可以看到輸出顯示的數字形式的 g 千兆位元組 m 兆位元組 和 k 千位元組 首先看看總體還剩多少,心裡有...
mysql 阿里雲 新增磁碟空間 阿里雲磁碟擴容
進入 ecs 控制台 選擇全部磁碟頁或者本例項磁碟頁在每乙個磁碟條目的最後選擇 更多 選擇 磁碟擴容 即可進入磁碟擴容操作頁 輸入你希望擴容的目標大小 我輸入 40g 提交擴容訂單,按量付費的磁碟在下乙個計價單位 目前是小時 開始按擴容後的磁碟大小計費 包年包月的磁碟則是補差價。擴容僅做磁碟容量的擴...
Ubuntu 擴大虛擬機器系統磁碟空間 1
vmware 11 版本給虛擬機器預設分配20g磁碟,擴充套件至30g。下面是擴充套件方法 虛擬機器保持關閉狀態,設定 磁碟 拓展 最大磁碟大小 設成 30g 磁碟擴容後系統並不能自動使用,需要將拓展的空間掛載到系統中。啟動ubantu,執行命令 sudo df h 檢視磁碟空間占用情況 可選操作 ...