PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Gỡ lỗi hàm PostgreSQL bằng pgAdmin

Bạn phải bật gỡ lỗi ở hai nơi. Trên PGAdmin và trên chính cơ sở dữ liệu. Bài viết mà bạn đã tham khảo đã thực hiện một công việc tuyệt vời khi giải thích nó nhưng có một số sắc thái.

PGAdmin

Khi cập nhật postgresql.conf của bạn tệp để tải thư viện gỡ lỗi, tôi đã chạy PGAdmin trên Windows vì vậy tệp ở đây:

C:\Program Files\PostgreSQL\9.4\data\postgresql.conf

Và đường dẫn đến plugin_debugger.dll thực sự là

$libdir/plugin_debugger.dll

không

$libdir/plugins/plugin_debugger.dll

như được chỉ định trong bài báo. Vì vậy, postgresql.conf của bạn sẽ cần một dòng như thế này

shared_preload_libraries = '$libdir/plugin_debugger.dll'

Tìm kiếm .dll thực tế nếu bạn nghi ngờ. Nếu bạn đang sử dụng Linux, tệp bạn sẽ tìm là plugin_debugger.so . Đừng quên rằng thay đổi postgresql.conf tệp sẽ yêu cầu khởi động lại để thay đổi có hiệu lực.

Cơ sở dữ liệu PostgreSQL

Giả sử bạn đang chạy cơ sở dữ liệu PostgreSQL của mình trên máy chủ Linux ý chính này thực hiện một công việc xuất sắc trong việc giải thích cách tải xuống các phụ thuộc để cho phép gỡ lỗi. Đảm bảo rằng bạn đang chạy dưới quyền root khi cài đặt.

Phần dễ bỏ sót là phát lệnh dựa trên cơ sở dữ liệu thực tế mà bạn muốn gỡ lỗi. Đối với các phiên bản mới hơn trên PostgreSQL, tất cả những gì bạn cần làm là:

CREATE EXTENSION IF NOT EXISTS pldbgapi;

Nếu điều đó không trả lại lỗi, bạn nên tiếp tục.

Một số điều cần lưu ý bổ sung:

  • Như đã đề cập ở trên, bạn chỉ có thể gỡ lỗi khi chạy với tư cách tài khoản người dùng cấp cao
  • Từ tài liệu của họ bạn chỉ có thể gỡ lỗi các hàm pl / pgsql. Vì vậy, nếu hàm của bạn nói điều gì đó như LANGUAGE c PGAdmin thậm chí sẽ không hiển thị tùy chọn menu Gỡ lỗi nhấp chuột phải khi bạn chọn chức năng. Tìm thứ gì đó có LANGUAGE plpgsql và menu Gỡ lỗi sẽ hiển thị.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để loại bỏ các phần tử của mảng trong PostgreSQL?

  2. Tổng quan về các phương thức JOIN trong PostgreSQL

  3. Rails 3.2 Postgres Save Error ActiveRecord ::StatementInvalid:PG ::Error:ERROR:Lỗi cú pháp gần 'T' ở vị trí 5

  4. ngủ đông không thể nhận giá trị trình tự tiếp theo

  5. Cách cấu hình SELinux cho PostgreSQL và TimescaleDB