sql >> Databasteknik >  >> RDS >> PostgreSQL

CPU 100 % användning orsakad av okänd postgres-fråga

Jag hade ett liknande problem. Det berodde på att vissa transaktioner fastnade och körde länge. CPU-användningen låg alltså på 100 % hela tiden. Följande kommando hjälpte till att ta reda på vilka anslutningar som kördes längst:

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

Detta kommando visar tiden sedan när en anslutning körs. Denna tid bör inte vara längre än en timme. Så att döda anslutningen som var igång sedan länge eller fastnat vid något tillfälle, fungerade för mig. Jag följde det här inlägget för att övervaka och lösa mitt problem. Inlägg innehåller många användbara kommandon för att övervaka den här situationen.




  1. #1071 - Angiven nyckel var för lång; max nyckellängd är 767 byte

  2. Hur visar jag en CLOB-utgångsparameter i TOAD från en Oracle Stored Procedur?

  3. Korrekt indexering av Join-Where-Group Genom att välja frågor undviker du att använda temporär; Använder filsortering

  4. hur matar jag ut radnamnet baserat på en länkningstabell?