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

CPU 100% sử dụng do truy vấn postgres không xác định gây ra

Tôi đã có một vấn đề tương tự. Đó là do - một số giao dịch đã bị mắc kẹt và hoạt động trong một thời gian dài. Do đó, việc sử dụng CPU luôn ở mức 100%. Lệnh sau đã giúp tìm ra các kết nối chạy lâu nhất:

SELECT max(now() - xact_start) FROM pg_stat_activity
                           WHERE state IN ('idle in transaction', 'active');

Lệnh này hiển thị thời gian kể từ khi kết nối đang chạy. Thời gian này không được lớn hơn một giờ. Vì vậy, việc loại bỏ kết nối đã chạy từ lâu hoặc bị kẹt tại bất kỳ thời điểm nào, đã có tác dụng với tôi. Tôi đã theo dõi bài đăng này để theo dõi và giải quyết vấn đề của tôi. Đăng bao gồm nhiều lệnh hữu ích để theo dõi tình huống này.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bảng 'xoay vòng' đơn giản của Postgres

  2. Cách chuyển đổi trường hợp chuỗi trong PostgreSQL

  3. Các giao dịch không hoạt động cho MySQL DB của tôi

  4. Trình kích hoạt PostgreSQL để tự động tạo mã cho nhiều bảng

  5. Postgresql libpq với Qt trong windows