यह आपके अलावा मौजूदा कनेक्शनों को छोड़ देगा:
क्वेरी pg_stat_activity
और पिड मान प्राप्त करें जिसे आप मारना चाहते हैं, फिर SELECT pg_terminate_backend(pid int)
जारी करें उनके लिए।
PostgreSQL 9.2 और इसके बाद के संस्करण:
SELECT pg_terminate_backend(pg_stat_activity.procpid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'TARGET_DB' -- ← change this to your DB
AND procpid <> pg_backend_pid();
PostgreSQL 9.1 और नीचे:
SELECT pg_terminate_backend(pg_stat_activity.procpid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'TARGET_DB' -- ← change this to your DB
AND procpid <> pg_backend_pid();
एक बार जब आप सभी को डिस्कनेक्ट कर देते हैं, तो आपको डिस्कनेक्ट करना होगा और DROP DATABASE कमांड को किसी अन्य डेटाबेस से कनेक्शन से जारी करना होगा, जिसे आप छोड़ने की कोशिश नहीं कर रहे हैं।
procpid
. का नाम बदलने पर ध्यान दें कॉलम से pid
. यह मेलिंग सूची थ्रेड देखें।