Bir Amazon (AWS) Aurora DB kümem var ve her geçen gün [Billed] Volume Bytes Used
artıyor.
INFORMATION_SCHEMA.TABLES
Tabloyu kullanarak tüm tablolarımın boyutunu (bu kümedeki tüm veritabanlarımda) kontrol ettim :
SELECT ROUND(SUM(data_length)/1024/1024/1024) AS data_in_gb, ROUND(SUM(index_length)/1024/1024/1024) AS index_in_gb, ROUND(SUM(data_free)/1024/1024/1024) AS free_in_gb FROM INFORMATION_SCHEMA.TABLES;
+------------+-------------+------------+
| data_in_gb | index_in_gb | free_in_gb |
+------------+-------------+------------+
| 30 | 4 | 19 |
+------------+-------------+------------+
Toplam: 53GB
Öyleyse neden şu anda neredeyse 75 GB faturalandırılıyorum?
Sağlanan alanın, normal bir MySQL sunucusundaki ibdata dosyalarının asla küçülemeyeceği şekilde serbest bırakılamayacağını anlıyorum; Ben iyiyim. Bu belgelenmiştir ve kabul edilebilir.
Benim sorunum, her gün faturalandırdığım alanın artması. Eminim 75GB'lık alanı geçici olarak KULLANMADIM. Eğer böyle bir şey yapsaydım, anlardım. Sanki serbest bıraktığım depolama alanı, tablolarımdaki satırları silerek veya tabloları bırakarak, hatta veritabanlarını bırakarak asla yeniden kullanılmıyor.
AWS (premium) desteğiyle birkaç kez iletişim kurdum ve bunun neden olduğu konusunda iyi bir açıklama alamadım. Silinen verilerin geri alma segmentinde tutulmadığından emin olmak için ( tablo başına ) veya InnoDB geçmiş uzunluğunu kontrol etmek için tabloların üzerinde
çalıştırmak OPTIMIZE TABLE
için öneriler aldım (ref: MVCC ) ve geri alma segmentinin boşaltıldığından emin olmak için örnekleri yeniden başlatın.
Bunların hiçbiri yardım etmedi.free_space
INFORMATION_SCHEMA.TABLES