Jak uzyskać rozmiar bazy danych mysql?

Jak uzyskać rozmiar bazy danych mysql?
Załóżmy, że docelowa baza danych nazywa się "v3".

Author: Sandeep, 2009-11-14

7 answers

Uruchom to zapytanie, a prawdopodobnie dostaniesz to, czego szukasz:

SELECT table_schema "DB Name",
        ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB" 
FROM information_schema.tables 
GROUP BY table_schema; 

To zapytanie pochodzi z forów mysql , gdzie dostępne są bardziej wyczerpujące instrukcje.

 882
Author: Brian Willis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-23 07:29:25

Można go określić za pomocą następującego polecenia MySQL

SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP BY table_schema

Wynik

Database    Size (MB)
db1         11.75678253
db2         9.53125000
test        50.78547382

Uzyskaj wynik w GB

SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 / 1024 AS "Size (GB)" FROM information_schema.TABLES GROUP BY table_schema
 26
Author: Nadeem0035,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-19 09:53:19

Alternatywnie możesz bezpośrednio przejść do katalogu danych i sprawdzić połączony rozmiar v3.myd, v3. myi i v3. pliki frm (dla myisam) lub v3.idb & v3.frm (dla innodb).

 23
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-11-14 10:12:06

Alternatywnie, jeśli używasz phpMyAdmin, możesz spojrzeć na sumę rozmiarów tabel w stopce Twojej bazy danych structure. Rzeczywisty rozmiar bazy danych może nieznacznie przekraczać ten rozmiar, jednak wydaje się być zgodny z metodą table_schema wspomnianą powyżej.

Screen-shot:

Tutaj wpisz opis obrazka

 21
Author: Joel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-24 13:48:23

Aby uzyskać wynik w MB:

SELECT  SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 ), 2)) AS "SIZE IN MB"
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = "SCHEMA-NAME";`

Aby uzyskać wynik w GB:

SELECT  SUM(ROUND(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 /1024 ), 2))  AS "SIZE IN GB"
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = "SCHEMA-NAME";`
 8
Author: williambarau,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-11 12:14:22
mysqldiskusage  --server=root:MyPassword@localhost  pics

+----------+----------------+
| db_name  |         total  |
+----------+----------------+
| pics     | 1,179,131,029  |
+----------+----------------+
 4
Author: Rick James,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-29 20:16:49

Wejdź do katalogu danych mysql i uruchom du-h --max-depth=1 / grep databasename

 0
Author: Evan Haston,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-13 20:19:31