प्रति उपयोगकर्ता सक्रिय MySQL कनेक्शन देखें


9

मुझे एक क्वेरी की आवश्यकता है जो मुझे एक निश्चित उपयोगकर्ता के लिए एक निश्चित डेटाबेस के लिए कनेक्शन की सक्रिय या खुली संख्या देगी। मैं घंटों से खोज रहा हूं और अब तक कुछ नहीं कर पाया हूं। मैं करीब हूं, इसलिए यहां मैंने कोशिश की है।

  1. SHOW STATUS WHERE `variable_name` = 'Threads_connected';

  2. SHOW STATUS LIKE '%onn%';

  3. SELECT * FROM information_schema.processlist WHERE USER='database_user';

मैं एक वेब होस्टिंग कंपनी के लिए काम करता हूं, और हमारा एक क्लाइंट अपनी max_user_connectionsसीमा को रखता है, इसलिए समस्या निवारण में मुझे यह जानने की आवश्यकता है कि उसका उपयोगकर्ता अभी कितने कनेक्शन का उपयोग कर रहा है क्योंकि वह साझा सर्वर नहीं है। मैं वर्तमान में MySQL (InnoDB) संस्करण 5.5.36 का उपयोग कर रहा हूं। किसी भी तरह की सहायता का स्वागत किया जाएगा!

जवाबों:


11

आपको जो चाहिए वह है यूजर और होस्टनाम द्वारा एक ब्रेकडाउन

SELECT IFNULL(usr,'All Users') user,IFNULL(hst,'All Hosts') host,COUNT(1) Connections
FROM
(
    SELECT user usr,LEFT(host,LOCATE(':',host) - 1) hst
    FROM information_schema.processlist
    WHERE user NOT IN ('system user','root')
) A GROUP BY usr,hst WITH ROLLUP;

यह होस्ट एड्रेस को हैंडल करेगा, जिसमें होस्टनाम और पोर्ट नंबर को अलग करने वाला कोलन है

मुझे उम्मीद है कि हर कोई रूट के रूप में लॉग इन नहीं कर रहा है


-1

इसके लिए विस्तार से चर्चा हुई: https://dba.stackexchange.com/a/47160/385

संक्षेप में, आपके लिए आवश्यक प्रश्न हैं

SELECT max_user_connections FROM mysql.user WHERE user='db_user' AND host='localhost';

तथा

SHOW VARIABLES LIKE 'max_user_connections';

अपडेट करें

हो सकता है कि यह आपके प्रश्न का सीधा उत्तर न हो, लेकिन http://dev.mysql.com/doc/refman/5.5/en/user-resources.html MySQL के अनुसार आपको प्रति घंटे पहुंच की संख्या को सीमित करने की अनुमति देता है । तो, हो सकता है कि इसका जवाब हो कि एक निश्चित उपयोगकर्ता सीमा क्यों मारता है जबकि उनके कनेक्शन की संख्या प्रक्रिया सूची के अनुसार छोटी है। दुर्भाग्य से, मुझे इस बात का संदर्भ नहीं मिल रहा है कि एक्सेस काउंटर कैसे प्राप्त किया जाए।


मैं max_user_connections की संख्या को बदलना या max_user_connections नहीं देखना चाहता, मुझे पता है कि ऐसा कैसे करना है। मैं देखना चाहता हूं कि उन विशिष्ट उपयोगकर्ताओं में से कितने कनेक्शन सक्रिय हैं।
विल ह्यूजेस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.