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

Matikan sesi/koneksi postgresql

Anda dapat menggunakan pg_terminate_backend() untuk mematikan koneksi. Anda harus menjadi superuser untuk menggunakan fungsi ini. Ini bekerja pada semua sistem operasi yang sama.

SELECT 
    pg_terminate_backend(pid) 
FROM 
    pg_stat_activity 
WHERE 
    -- don't kill my own connection!
    pid <> pg_backend_pid()
    -- don't kill the connections to other databases
    AND datname = 'database_name'
    ;

Sebelum menjalankan kueri ini, Anda harus MENCATAT hak CONNECT untuk menghindari koneksi baru:

REVOKE CONNECT ON DATABASE dbname FROM PUBLIC, username;

Jika Anda menggunakan Postgres 8.4-9.1 gunakan procpid alih-alih pid

SELECT 
    pg_terminate_backend(procpid) 
FROM 
    pg_stat_activity 
WHERE 
    -- don't kill my own connection!
    procpid <> pg_backend_pid()
    -- don't kill the connections to other databases
    AND datname = 'database_name'
    ;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. file input tampaknya menjadi dump format teks. Silakan gunakan psql

  2. Bisakah saya menggunakan nilai pengembalian INSERT...RETURNING di INSERT lain?

  3. 2 Cara Menambahkan Angka Nol di PostgreSQL

  4. Paralelisme datang ke VAKUM

  5. Bagaimana menghubungkan GraphQL dan PostgreSQL