sql >> Databáze >  >> RDS >> MariaDB

Získejte velikost databáze v MariaDB

V MariaDB se můžeme dotazovat na information_schema.tables tabulka pro kontrolu velikosti databáze.

Tato tabulka vrací informace o tabulkách a pohledech v každé databázi na serveru. Výsledky můžeme seskupit a vrátit souhrnné částky pro každou databázi.

Příklad

Zde je dotaz, který vrací velikost všech databází na serveru:

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; 

Výsledek:

+--------------------+---------------+--------- ----+| Název databáze | Velikost v bytech | Velikost v MiB |+--------------------+---------------+--------- -----+| informační_schéma | 212992 | 0,20 || KrankyKranes | 131072 | 0,13 || Hudba | 81920 | 0,08 || MojeDB | 32768 | 0,03 || mysql | 4972544 | 4,74 || výkonnostní_schéma | 0 | 0,00 || PetHouse | 81920 | 0,08 || Zap | 37460 | 0,04 |+--------------------+---------------+----------- ---+

Tinformation_schema.tables tabulka zobrazuje informace o různých neTEMPORARY tabulky (kromě tabulek z Information Schema databáze) a zobrazení na serveru.

Zde jsem je seskupil podle databáze (table_schema ) a provedli některé výpočty velikostí.

Jedna databáze

Můžeme to zúžit na jedinou databázi pomocí WHERE klauzule:

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
WHERE table_schema = 'KrankyKranes'
GROUP BY table_schema; 

Výsledek:

+---------------+---------------+-------------+ | Název databáze | Velikost v bytech | Velikost v MiB |+---------------+---------------+-------------- +| krankykranes | 131072 | 0,13 |+---------------+---------------+------------+ 

V MySQL můžeme použít sys.FORMAT_BYTES() funkci pro převod délky dat, ale v době psaní tohoto článku MariaDB ještě takovou funkci neimplementovala.


  1. Byla zadána neplatná adresa URL Oracle:OracleDataSource.makeURL

  2. jak najít všechny indexy a jejich sloupce pro tabulky, pohledy a synonyma v oracle

  3. Databáze SQLite poskytuje varovný automatický index na <název_tabulky> (sloupec) Po upgradu systému Android L

  4. Přidání 'serial' do existujícího sloupce v Postgresu