PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Debug fungsi PostgreSQL menggunakan pgAdmin

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 memiliki LANGUAGE plpgsql dan menu Debug akan ditampilkan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kunci untuk SELECT sehingga proses lain tidak mendapatkan data lama

  2. Lakukan peningkatan alembic dalam beberapa skema

  3. Batasan unik pada beberapa tabel

  4. Bagaimana saya bisa melakukan kueri LIKE untuk kunci jsonb?

  5. Menampilkan gambar dari database PostgreSQL, byte