Kuidas katkestada PostgreSQLis SQL lause, mille täitmine võtab liiga kaua aega?

Postitas Erki Eessaar 10.10.2023 12:02 (muudeti 10.10.2023 12:02)
Looge uus andmebaasi ühendus. Te võite ülikasutajana ühenduda ka mõne muu andmebaasi külge, kui see, milles töötab liiga kaua täidetav lause.

Leidke liiga kaua täidetava lause pid kasutades päringut:

SELECT
pid,
now() - pg_stat_activity.query_start AS duration,
query,
state
FROM pg_stat_activity
WHERE (now() - pg_stat_activity.query_start) > interval '5 minutes';
Päring leiab laused, mille täitmine on võtnud aega üle 5 minuti.

Lõpetage lause täitmine, andes korralduse:

SELECT pg_cancel_backend(--pid--);

Näide:

SELECT pg_cancel_backend(3847609);

Hinda postitust:

Keskmine hinne : Pole veel hinnanguid!