Kategorien
Computer

Ermitteln von Datenbankgrößen

Ich habe gerade versucht, rauszufinden, wie groß die einzelnen Datenbanken meiner DBMS-Instanzen sind. Etwas Command Line Fu ergibt dann folgendes:

  • PostgreSQL:
    #! /bin/bash
    e=$(/usr/bin/psql -tAl | cut -d\| -f1)
    /usr/bin/psql -c "SELECT pg_database.datname, pg_database_size(pg_database.datname), pg_size_pretty(pg_database_size(pg_database.datname)) FROM pg_database ORDER BY pg_database_size DESC;" -d ${e}
  • MySQL:
    #! /bin/bash
    mysql -u root -p -e 'select table_schema "Database",round(sum(data_length+index_length)/1024/1024,4) "Size (MB)" from information_schema.tables group by table_schema;'