Anda harus mengaktifkan debugging di dua tempat. Di PGAdmin dan di database itu sendiri. Artikel yang Anda rujuk itu menjelaskan dengan sangat baik, tetapi ada beberapa nuansa.
PGAdmin
Saat memperbarui postgresql.conf
. Anda file untuk memuat perpustakaan debugging, saya menjalankan PGAdmin di Windows
jadi filenya ada di sini:
C:\Program Files\PostgreSQL\9.4\data\postgresql.conf
Dan jalur ke plugin_debugger.dll
sebenarnya
$libdir/plugin_debugger.dll
tidak
$libdir/plugins/plugin_debugger.dll
sebagaimana ditentukan dalam artikel. Jadi postgresql.conf
Anda akan membutuhkan garis seperti ini
shared_preload_libraries = '$libdir/plugin_debugger.dll'
Cari .dll yang sebenarnya jika Anda ragu. Jika Anda menggunakan Linux, file yang akan Anda cari adalah plugin_debugger.so
. Jangan lupa bahwa mengubah postgresql.conf
file akan memerlukan restart agar perubahan diterapkan.
Basis Data PostgreSQL
Dengan asumsi Anda menjalankan database PostgreSQL di server Linux inti ini melakukan pekerjaan yang sangat baik dalam menjelaskan cara mengunduh dependensi untuk mengaktifkan debugging. Pastikan Anda menjalankan sebagai root saat menginstal.
Bagian yang mudah dilewatkan adalah mengeluarkan perintah terhadap database aktual yang ingin Anda debug. Untuk versi yang lebih baru di PostgreSQL yang perlu Anda lakukan hanyalah ini:
CREATE EXTENSION IF NOT EXISTS pldbgapi;
Jika itu tidak mengembalikan kesalahan, Anda harus melakukannya dengan baik.
Beberapa catatan tambahan:
- Seperti yang disebutkan di atas, Anda hanya dapat melakukan debug saat menjalankan sebagai akun pengguna super
- Dari dokumen mereka
anda hanya dapat men-debug fungsi pl/pgsql. Jadi, jika fungsi Anda mengatakan sesuatu seperti
LANGUAGE c
PGAdmin bahkan tidak akan menampilkan opsi menu Debug klik kanan saat Anda memilih fungsi tersebut. Cari sesuatu yang memilikiLANGUAGE plpgsql
dan menu Debug akan ditampilkan.