Mam klaster Aurora DB Amazon (AWS) i każdego dnia jego liczba [Billed] Volume Bytes Used
rośnie.
Sprawdziłem rozmiar wszystkich moich tabel (we wszystkich bazach danych w tym klastrze), używając INFORMATION_SCHEMA.TABLES
tabeli:
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 |
+------------+-------------+------------+
Razem: 53 GB
Więc dlaczego naliczam obecnie prawie 75 GB?
Rozumiem, że przydzielonej przestrzeni nigdy nie można zwolnić, w taki sam sposób, w jaki pliki ibdata na zwykłym serwerze MySQL nigdy nie mogą się zmniejszyć; Nie przeszkadza mi to. Jest to udokumentowane i dopuszczalne.
Mój problem polega na tym, że każdego dnia zwiększa się moje miejsce. I jestem pewien, że NIE używam tymczasowo 75 GB miejsca. Gdybym miał zrobić coś takiego, zrozumiałbym. To tak, jakby przestrzeń dyskowa, którą zwalniam, usuwając wiersze z moich tabel lub usuwając tabele, a nawet usuwając bazy danych, nigdy nie jest ponownie używana.
Wielokrotnie kontaktowałem się z obsługą AWS (premium) i nigdy nie byłem w stanie uzyskać dobrego wyjaśnienia, dlaczego tak jest.
Otrzymałem sugestie, aby uruchomić OPTIMIZE TABLE
na tabelach, na których jest dużo free_space
(na INFORMATION_SCHEMA.TABLES
tabelę), lub sprawdzić długość historii InnoDB, aby upewnić się, że usunięte dane nie są nadal przechowywane w segmencie wycofywania (ref: MVCC ) i zrestartuj instancję (y), aby upewnić się, że segment wycofania został opróżniony.
Żaden z nich nie pomógł.
źródło
Po usunięciu danych Aurora, na przykład poprzez upuszczenie tabeli lub partycji, ogólnie przydzielone miejsce pozostaje takie samo. Wolne miejsce jest ponownie wykorzystywane automatycznie, gdy ilość danych wzrośnie w przyszłości. https://docs.amazonaws.cn/en_us/AmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Performance.html
źródło