Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment vérifier la taille d'une base de données dans MySQL

Dans MySQL, vous pouvez interroger les information_schema.tables table pour renvoyer des informations sur les tables d'une base de données. Ce tableau inclut des informations sur la longueur des données, la longueur de l'index, ainsi que d'autres détails tels que le classement, l'heure de création, etc. Vous pouvez utiliser les informations de ce tableau pour trouver la taille d'une base de données donnée ou de toutes les bases de données sur le serveur.

Vous pouvez également utiliser l'interface graphique MySQL Workbench pour trouver des détails sur la base de données (y compris sa taille).

Cet article fournit un aperçu rapide des deux méthodes.

Exemple de code

Voici un exemple de recherche de la taille de chaque base de données en exécutant une requête sur information_schema.tables tableau :

SELECT table_schema 'Database Name', SUM(data_length + index_length) 'Size in Bytes', ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) 'Size in MiB'FROM information_schema.tables GROUP BY table_schema; 

Résultat :

+--------------------+---------------+--------- ----+| Nom de la base de données | Taille en octets | Taille en Mio |+--------------------+---------------+-------- -----+| information_schema | 0 | 0,00 || Musique | 98304 | 0,09 || mysql | 2506752 | 2.39 || performance_schema | 0 | 0,00 || sakila | 6766592 | 6.45 || solutions | 16384 | 0,02 || système | 16384 | 0,02 || monde | 802816 | 0,77 |+--------------------+---------------+---------- ---+

Dans cet exemple, j'ai répertorié la taille en octets et en mébioctets (Mio), mais vous pouvez choisir comment vous souhaitez la présenter.

Bien sûr, vous pouvez toujours le réduire à une base de données spécifique si vous en avez besoin. Ajoutez simplement un WHERE clause avec le nom de la base de données :

SELECT table_schema 'Nom de la base de données', SUM(data_length + index_length) 'Taille en octets', ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) 'Taille en MiB'FROM information_schema.tables WHERE table_schema =' sakila ;

Résultat :

+---------------+---------------+----------------------+ | Nom de la base de données | Taille en octets | Taille en Mio |+---------------+---------------+------------- +| sakila | 6766592 | 6.45 |+---------------+---------------+-------------+ 

La fonction FORMAT_BYTES()

Vous pouvez utiliser le sys.FORMAT_BYTES() fonction pour vous épargner la conversion de la taille en mébioctets, kibioctets ou autre. Cette fonction prend une valeur, la convertit dans un format lisible par l'homme et renvoie une chaîne composée d'une valeur et d'un indicateur d'unités. La valeur convertie dépendra de la taille de la valeur (le résultat pourrait donc être en bytes , KiB (kibioctets), MiB (mébioctets), GiB (gibioctets), TiB (tébioctets), ou PiB (pébioctets).

Voici un exemple de réécriture de l'exemple précédent pour utiliser le FORMAT_BYTES() fonction :

USE Music;SELECT table_schema 'Database Name', SUM(data_length + index_length) 'Size in Bytes', sys.FORMAT_BYTES(SUM(data_length + index_length)) 'Size (Formatted)'FROM information_schema.tables GROUP BY table_schema; 

Résultat :

+--------------------+---------------+--------- ---------+| Nom de la base de données | Taille en octets | Taille (Formaté) |+--------------------+---------------+------- -----------+| information_schema | 0 | 0 octet || Musique | 98304 | 96,00 Kio || mysql | 2506752 | 2,39 Mio || performance_schema | 0 | 0 octet || sakila | 6766592 | 6,45 Mio || Solutions | 16384 | 16.00 Kio || système | 16384 | 16.00 Kio || monde | 802816 | 784,00 Kio |+--------------------+---------------+--------- ---------+

Atelier MySQL

Une autre façon de trouver la taille de la base de données consiste à utiliser l'interface graphique MySQL Workbench. Voici comment :

  1. Naviguez jusqu'à la base de données dans les Schemas volet
  2. Passez la souris sur la base de données applicable
  3. Cliquez sur la petite icône d'information à côté du nom de la base de données. Cela charge des informations sur la base de données, y compris sa taille approximative, le nombre de tables, le classement, etc. La taille de la base de données est répertoriée dans Info tab (généralement l'onglet par défaut).