Chciałbym wiedzieć, ile miejsca zajmuje moja baza danych MySQL, aby wybrać hosta internetowego. Znalazłem polecenie, SHOW TABLE STATUS LIKE 'table_name'
więc kiedy wykonuję zapytanie, otrzymuję coś takiego:
Name | Rows | Avg. Row Length | Data_Length | Index Length
---------- ---- --------------- ----------- ------------
table_name 400 55 362000 66560
- liczby są zaokrąglane.
Czy mam 362000 lub 400 * 362000 = 144800000 bajtów danych dla tej tabeli? A co oznacza długość indeksu? Dzięki !
Odpowiedzi:
Od S. Prakasha, znalezionego na forum MySQL :
Lub w jednej linii dla łatwiejszego kopiowania i wklejania:
źródło
OPTIMIZE TABLE foo
(MyISAM) lub odtworzyć + analizę tabel InnoDB.Możesz uzyskać rozmiar bazy danych MySQL, uruchamiając następujące polecenie w kliencie MySQL
źródło
Jeśli używasz phpMyAdmina, może on przekazać ci te informacje.
Po prostu przejdź do „Bazy danych” (menu na górze) i kliknij „Włącz statystyki”.
Zobaczysz coś takiego:
Prawdopodobnie utraci to pewną dokładność wraz ze wzrostem rozmiarów, ale powinno być wystarczająco dokładne do twoich celów.
źródło
jeśli chcesz go znaleźć w MB, zrób to
źródło
Zasadniczo istnieją dwa sposoby: wysłanie zapytania do bazy danych (długość danych + długość indeksu) lub sprawdzenie rozmiaru plików. Długość indeksu jest związana z danymi przechowywanymi w indeksach.
Wszystko jest opisane tutaj:
http://www.mkyong.com/mysql/how-to-calculate-the-mysql-database-size/
źródło
Żadna z odpowiedzi nie obejmuje rozmiaru narzutów i rozmiarów metadanych tabel.
Oto dokładniejsze oszacowanie „przestrzeni dyskowej” przydzielonej przez bazę danych.
źródło
300
i150
?SUM(Data_free)
może, ale nie musi, być ważne . To zależy od historiiinnodb_file_per_table
. Więcej dyskusji można znaleźć tutaj .źródło
Narzędzia MySQL firmy Oracle mają polecenie o nazwie mysqldiskusage, które wyświetla użycie dysku przez każdą bazę danych: https://dev.mysql.com/doc/mysql-utilities/1.6/en/mysqldiskusage.html
źródło
Jeśli używasz MySql Workbench, bardzo łatwo jest uzyskać wszystkie szczegóły dotyczące rozmiaru bazy danych, rozmiaru każdej tabeli, rozmiaru indeksu itp.
Wybierz Schema Inspector opcję
Pokazuje wszystkie szczegóły rozmiaru schematu
Wybierz kartę Tabele, aby zobaczyć rozmiar każdej tabeli.
Rozmiar tabeli wyświetlany w kolumnie Długość danych
źródło
Jeśli chcesz znaleźć rozmiar wszystkich baz danych MySQL, użyj tego polecenia, pokaże ich odpowiednie rozmiary w megabajtach;
Jeśli masz duże bazy danych, możesz użyć następującego polecenia, aby wyświetlić wynik w gigabajtach;
Jeśli chcesz na przykład pokazać rozmiar tylko określonej bazy danych
YOUR_DATABASE_NAME
, możesz użyć następującego zapytania;źródło