Como obter o tamanho da base de dados mysql?

Como obter o tamanho de uma base de dados mysql?
Suponha que a base de dados de destino é chamada "v3".

Author: Sandeep, 2009-11-14

7 answers

Execute esta consulta e provavelmente terá o que procura:

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; 

Esta consulta vem de os fóruns mysql , onde existem instruções mais abrangentes disponíveis.

 882
Author: Brian Willis, 2018-03-23 07:29:25

Pode ser determinado usando o seguinte comando MySQL

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

Resultado

Database    Size (MB)
db1         11.75678253
db2         9.53125000
test        50.78547382

Obter o resultado em 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, 2018-06-19 09:53:19

Em alternativa, pode saltar directamente para a pasta de dados e verificar o tamanho combinado de v3.myd, v3. myi e v3. ficheiros frm (para o myisam) ou v3.bid & v3.frm (para innodb).

 23
Author: , 2009-11-14 10:12:06

Em alternativa, se estiver a utilizar phpMyAdmin, pode dar uma vista de olhos à soma dos tamanhos das tabelas no rodapé da sua base de dados structure. O tamanho real da base de dados pode ser ligeiramente superior a este tamanho, no entanto, parece ser consistente com o método table_schema mencionado acima.

Imagem :

enter image description here

 21
Author: Joel, 2017-08-24 13:48:23

Para obter um resultado em MB:

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

Para obter um resultado em 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, 2017-09-11 12:14:22
mysqldiskusage  --server=root:MyPassword@localhost  pics

+----------+----------------+
| db_name  |         total  |
+----------+----------------+
| pics     | 1,179,131,029  |
+----------+----------------+
 4
Author: Rick James, 2017-11-29 20:16:49

Vá para a pasta de dados mysql e execute du-h -- max-depth=1 / grep databasename

 0
Author: Evan Haston, 2018-06-13 20:19:31