क्लस्टर के किसी भी DB के अंदर से:
कैच 22:आपको पहले डेटाबेस से कनेक्ट होना होगा। हो सकता है कि आप किसी अन्य उपयोगकर्ता के रूप में जुड़ सकें? (डिफ़ॉल्ट रूप से, कुछ कनेक्शन superuser_reserved_connections
सेटिंग।)
इस उपयोगकर्ता द्वारा प्रत्येक कनेक्शन के लिए विस्तृत जानकारी प्राप्त करने के लिए:
SELECT *
FROM pg_stat_activity
WHERE usename = 'user_name';
समान उपयोगकर्ता . के रूप में या सुपरयूज़र के रूप में आप किसी उपयोगकर्ता के सभी (अन्य) कनेक्शन रद्द कर सकते हैं:
SELECT pg_cancel_backend(pid) -- (SIGINT)
-- pg_terminate_backend(pid) -- the less patient alternative (SIGTERM)
FROM pg_stat_activity
WHERE usename = 'user_name'
AND pid <> pg_backend_pid();
बेहतर यह सुनिश्चित करें कि ऐसा करना ठीक है। आप इस तरह महत्वपूर्ण प्रश्नों (या कनेक्शन) को समाप्त नहीं करना चाहते।
pg_cancel_backend()
और pg_terminate_backend()
मैनुअल में।
लिनक्स शेल से
क्या आपने उन अन्य कनेक्शनों को स्वयं शुरू किया था? शायद आपकी कोई लटकती हुई स्क्रिप्ट? आपको उन्हें मारने में सक्षम होना चाहिए (यदि आप सुनिश्चित हैं कि ऐसा करना ठीक है)।
आप ps
. से जांच कर सकते हैं किन प्रक्रियाओं में त्रुटि हो सकती है:
ps -aux
ps -aux | grep psql
यदि आप मारने की प्रक्रिया की पहचान करते हैं (बेहतर सुनिश्चित करें, आप नहीं करते हैं सर्वर को मारना चाहते हैं):
kill 123457689 # pid of process here.
या SIGKILL
. के साथ SIGTERM
. के बजाय :
kill -9 123457689