Gibt es einen Befehl zum Ermitteln der gesamten Datenbankgröße in Postgres?
Ich kann die Größe einer bestimmten Datenbank mithilfe des folgenden Befehls ermitteln:
select pg_database_size('databaseName');
sql
postgresql
postgresql-9.2
Schöner Geist
quelle
quelle
Antworten:
Und ... Wenn Sie nicht eine ganze Abfrage eingeben möchten, können Sie auch ...
und Sie erhalten einige Details zur Datenbank, einschließlich der Größe der Datenbank.
Und ... um die Größe aller Datenbanken zu ermitteln.
Sie können einfach eingeben ...
Möglicherweise müssen Sie in die Eingabeaufforderung postgresql gehen, um mit diesen postgresql-Hilfsbefehlen abzufragen.
Überprüfen Sie andere postgresql-Hilfsbefehle durch Eingabe
an der postgresql-Eingabeaufforderung.
quelle
Sie können die Namen aller Datenbanken, mit denen Sie eine Verbindung herstellen können, aus der Systemtabelle "pg_datbase" abrufen. Wenden Sie die Funktion einfach wie unten beschrieben auf die Namen an.
Wenn Sie beabsichtigen, dass die Ausgabe von einer Maschine anstelle eines Menschen verwendet wird, können Sie die Funktion pg_size_pretty () deaktivieren.
quelle
pg_database_size()
enthält die Größen für Indizes\l+
. Das Ausgabeformat ist jedoch leichter zu lesen (weniger Spalten). Kompromiss zwischen Schreibbarkeit und Lesbarkeit…quelle
Basierend auf der Antwort hier von @Hendy Irawan
Datenbankgrößen anzeigen:
\l+
z.B
Tischgrößen anzeigen:
\d+
z.B
Funktioniert nur in
psql
.quelle
\d+ *
gearbeitet, einfach\d+
zurückgekehrtDid not find any relations.
\c dbname
) und dann\d+
.Ja, es gibt einen Befehl zum Ermitteln der Größe einer Datenbank in Postgres. Es ist das Folgende:
quelle
SELECT database_name, pg_size_pretty(size) from (SELECT pg_database.datname as "database_name", pg_database_size(pg_database.datname) AS size FROM pg_database ORDER by size DESC) as ordered;
SELECT pg_database.datname AS "DB Name", pg_size_pretty(pg_database_size(pg_database.datname)) AS "Size" FROM pg_database ORDER BY (pg_database_size(pg_database.datname)) DESC;
.Gibt Ihnen die Gesamtgröße einer bestimmten Datenbank, aber ich glaube nicht, dass Sie alle Datenbanken innerhalb eines Servers ausführen können.
Wie auch immer Sie dies tun könnten ...
quelle
pg_database
diesem abscheulichen pl / pgsql sein?Aus dem PostgreSQL-Wiki .
HINWEIS: Datenbanken, zu denen der Benutzer keine Verbindung herstellen kann, werden so sortiert, als wären sie unendlich groß.
Die Seite enthält auch Ausschnitte zum Ermitteln der Größe Ihrer größten Beziehungen und größten Tabellen.
quelle
Sie können die folgende Abfrage verwenden, um die Größe aller Datenbanken von PostgreSQL zu ermitteln.
Die Referenz stammt aus diesem Blog.
quelle
Starten Sie pgAdmin, stellen Sie eine Verbindung zum Server her, klicken Sie auf den Datenbanknamen und wählen Sie die Registerkarte Statistik. Sie sehen die Größe der Datenbank am Ende der Liste.
Wenn Sie dann auf eine andere Datenbank klicken, bleibt diese auf der Registerkarte Statistik, sodass Sie ohne großen Aufwand problemlos viele Datenbankgrößen anzeigen können. Wenn Sie die Tabellenliste öffnen, werden alle Tabellen und ihre Größen angezeigt.
quelle
Databases
Baumknoten klicken (an eine DB-Verbindung angehängt) und dieStatistics
Registerkarte auswählen , wird eine schöne Zusammenfassung aller Datenbanken und ihrer Größen angezeigt (dritte Spalte).quelle
du -k /var/lib/pgsql/ | sort -n | tail