2015-03-20 15 views
6

Ich verwende AWS RDS-Datenbank.Amazon RDS-Speichergröße ist anders

Der DB-Status besagt, dass die Speichergröße 64 GB beträgt. Siehe Anhang.

enter image description here

Aber die folgende Abfrage sagt nur 156 MB Free verfügbaren Platz im DB.

mysql> SELECT table_schema "Data Base Name",sum(data_length + index_length)/1024/1024 "Data Base Size in MB", sum(data_free)/ 1024/1024 "Free Space in MB" FROM information_schema.TABLES GROUP BY table_schema; 

+--------------------+----------------------+------------------+ 
| Data Base Name  | Data Base Size in MB | Free Space in MB | 
+--------------------+----------------------+------------------+ 
| prod    |  8451.21875000 |  156.00000000 | 
| test    |   0.28125000 |  0.00000000 | 
| information_schema |   0.00781250 |  0.00000000 | 
| mysql    |   5.43510628 |  0.00000000 | 
+--------------------+----------------------+------------------+ 
4 rows in set (18.42 sec) 

Kann jemand klären, warum der Speicherplatz dafür unterschiedlich ist?

+0

Ich habe auch dieses Problem, es kann auch Protokolldateien sein. Wer hat irgendwelche Ideen, warum das ist? – TeeHays

Antwort

0

RDS hat wahrscheinlich innondb_file_per_table gesetzt, aufgrund dessen Ihnen der verfügbare Speicherplatz für diesen Tabellenbereich angezeigt wird. Ich denke, es könnte wachsen, wenn Sie mehr Daten in die Tabelle unter dieser Datenbank legen, wenn Platz verfügbar ist (in diesem Fall sieht es so aus, als sollte es da sein).

Bei Cloud-Datenbankdiensten sollten Sie im Idealfall nur den belegten Speicherplatz betrachten, der Ihnen von Ihrer ersten Spalte zurückgegeben wird. Wie viel verfügbar ist, sollte eine Mathe der Subtraktion von verwendetem Speicherplatz aus bereitgestellten Speicherplatz sein (plus ich werde etwas Platz für Protokolle und andere Sachen, nicht sicher, wie RDS dies tut, aber Sie müssen für einige Gemeinkosten Betrag belassen).