Sie müssen das Debuggen an zwei Stellen aktivieren. Auf PGAdmin und auf der Datenbank selbst. Der Artikel, auf den Sie verwiesen haben, erklärt es wunderbar, aber es gab einige Nuancen.
PGAdmin
Beim Aktualisieren Ihrer postgresql.conf
Datei zum Laden der Debugging-Bibliothek, habe ich PGAdmin unter Windows ausgeführt
also war die Datei hier:
C:\Program Files\PostgreSQL\9.4\data\postgresql.conf
Und den Pfad zur plugin_debugger.dll
war eigentlich
$libdir/plugin_debugger.dll
nicht
$libdir/plugins/plugin_debugger.dll
wie im Artikel angegeben. Also Ihre postgresql.conf
bräuchte eine Zeile wie diese
shared_preload_libraries = '$libdir/plugin_debugger.dll'
Suchen Sie im Zweifelsfall nach der eigentlichen .dll. Unter Linux ist die gesuchte Datei plugin_debugger.so
. Vergessen Sie nicht, die postgresql.conf
zu ändern Datei erfordert einen Neustart, damit die Änderung wirksam wird.
PostgreSQL-Datenbank
Angenommen, Sie betreiben Ihre PostgreSQL-Datenbank auf einem Linux-Server dieser Kern leistet hervorragende Arbeit bei der Erklärung, wie die Abhängigkeiten heruntergeladen werden, um das Debugging zu aktivieren. Stellen Sie sicher, dass Sie bei der Installation als root ausgeführt werden.
Der leicht zu übersehende Teil besteht darin, den Befehl für die eigentliche Datenbank auszugeben, die Sie debuggen möchten. Für neuere Versionen von PostgreSQL müssen Sie nur Folgendes tun:
CREATE EXTENSION IF NOT EXISTS pldbgapi;
Wenn das keinen Fehler zurückgibt, sollten Sie loslegen können.
Einige zusätzliche Anmerkungen:
- Wie oben erwähnt, können Sie nur mit einem Superuser-Konto debuggen
- Aus ihren Dokumenten
Sie können nur pl/pgsql-Funktionen debuggen. Wenn Ihre Funktion also so etwas wie
LANGUAGE c
sagt PGAdmin zeigt nicht einmal eine Rechtsklick-Debug-Menüoption an, wenn Sie die Funktion auswählen. Suchen Sie nach etwas, dasLANGUAGE plpgsql
enthält und das Debug-Menü sollte angezeigt werden.