# PostgreSQL can be on a remote server but you'll need root privileges in Linux and superuser in PostgreSQL. # First install build tools sudo su aptitude install build-essential aptitude install postgresql-server-dev-9.4 # Clone and build the PL/pgSQL server-side debugger cd /usr/local/src git clone git://git.postgresql.org/git/pldebugger.git cd pldebugger export USE_PGXS=1 make make install # Find location of postgresql.conf at the PostgreSQL console: # SHOW config_file; nano /etc/postgresql/9.4/main/postgresql.conf # In nano use ^W to search for: shared_preload_libraries # Edit the entry to add the library 'plugin_debugger': shared_preload_libraries = 'plugin_debugger' # If you have multiple libs, coma separate: shared_preload_libraries = 'pg_stat_statements,plugin_debugger' # Restart PostgreSQL pg_ctlcluster --mode fast 9.4-main restart # In a PostgreSQL database that you want to enable debugging install the extension CREATE EXTENSION pldbgapi; # In pgAdmin navigate to the same database and right click a PL/pgSQL function. # In the context menu choose Debugging > Debug. # A Debugger window will open and prompt for any parameters. # It will then break on the first line of executable code. # BRILLIANT! # More info from the creators at: # http://bit.ly/1Gaq51P # http://git.postgresql.org/gitweb/?p=pldebugger.git;a=blob_plain;f=README.pldebugger;hb=HEAD