Was ist der Befehl, um die Größe aller Datenbanken zu finden?
Ich kann die Größe einer bestimmten Datenbank mit folgendem Befehl finden:
select pg_database_size('databaseName');
Was ist der Befehl, um die Größe aller Datenbanken zu finden?
Ich kann die Größe einer bestimmten Datenbank mit folgendem Befehl finden:
select pg_database_size('databaseName');
SELECT pg_size_pretty(pg_database_size('Name der Datenbank'));
Gibt Ihnen die Gesamtgröße einer bestimmten Datenbank aus, jedoch glaube ich nicht, dass Sie alle Datenbanken innerhalb eines Servers abfragen können.
Jedoch könnten Sie Folgendes tun...
DO
$$
DECLARE
r RECORD;
db_size TEXT;
BEGIN
FOR r in
SELECT datname FROM pg_database
WHERE datistemplate = false
LOOP
db_size:= (SELECT pg_size_pretty(pg_database_size(r.datname)));
RAISE NOTICE 'Database:% , Size:%', r.datname , db_size;
END LOOP;
END;
$$
Von der PostgreSQL Wiki.
HINWEIS: <em>Datenbanken, zu denen der Benutzer keine Verbindung herstellen kann, werden sortiert, als ob sie unendlich groß wären.</em>
SELECT d.datname AS Name, pg_catalog.pg_get_userbyid(d.datdba) AS Owner,
CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')
THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))
ELSE 'Kein Zugriff'
END AS Size
FROM pg_catalog.pg_database d
ORDER BY
CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')
THEN pg_catalog.pg_database_size(d.datname)
ELSE NULL
END DESC -- nulls first
LIMIT 20
Die Seite enthält auch Ausschnitte zum Finden der Größe Ihrer größten Relationen und größten Tabellen.
Starten Sie pgAdmin, verbinden Sie sich mit dem Server, klicken Sie auf den Datenbanknamen und wählen Sie den Statistik-Tab aus. Sie sehen die Größe der Datenbank am unteren Ende der Liste.
Wenn Sie dann auf eine andere Datenbank klicken, bleiben Sie im Statistik-Tab, so dass Sie viele Datenbankgrößen ohne großen Aufwand leicht sehen können. Wenn Sie die Tabellenliste öffnen, werden alle Tabellen und ihre Größen angezeigt.
Sie können die folgende Abfrage verwenden, um die Größe aller Datenbanken von PostgreSQL zu finden.
Der Verweis stammt aus diesem Blog.
SELECT
datname AS Datenbankname
,pg_catalog.pg_get_userbyid(datdba) AS BesitzerName
,CASE
WHEN pg_catalog.has_database_privilege(datname, 'CONNECT')
THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(datname))
ELSE 'Kein Zugriff für Sie'
END AS Datenbankgröße
FROM pg_catalog.pg_database
ORDER BY
CASE
WHEN pg_catalog.has_database_privilege(datname, 'CONNECT')
THEN pg_catalog.pg_database_size(datname)
ELSE NULL
END DESC;
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.