Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

निष्क्रिय mysql कनेक्शन को समाप्त करना

मैन्युअल सफाई:

आप प्रक्रिया को मार सकते हैं।

mysql> show full processlist;
+---------+------------+-------------------+------+---------+-------+-------+-----------------------+
| Id      | User       | Host              | db   | Command | Time  | State | Info                  |
+---------+------------+-------------------+------+---------+-------+-------+-----------------------+
| 1193777 | TestUser12 | 192.168.1.11:3775 | www  | Sleep   | 25946 |       | NULL                  |
+---------+------------+-------------------+------+---------+-------+-------+-----------------------+

mysql> kill 1193777;

लेकिन:

  • php एप्लिकेशन त्रुटियों की रिपोर्ट कर सकता है (या वेबसर्वर, त्रुटि लॉग की जांच करें)
  • जो टूटा नहीं है उसे ठीक न करें - अगर आपके पास कनेक्शन की कमी नहीं है, तो उन्हें छोड़ दें।

स्वचालित क्लीनर सेवा;)

या आप wait_timeout और interactive_timeout

mysql> show variables like "%timeout%";
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| connect_timeout          | 5     |
| delayed_insert_timeout   | 300   |
| innodb_lock_wait_timeout | 50    |
| interactive_timeout      | 28800 |
| net_read_timeout         | 30    |
| net_write_timeout        | 60    |
| slave_net_timeout        | 3600  |
| table_lock_wait_timeout  | 50    |
| wait_timeout             | 28800 |
+--------------------------+-------+
9 rows in set (0.00 sec)

इसके साथ सेट करें:

set global wait_timeout=3;
set global interactive_timeout=3;

(और आपकी कॉन्फ़िगरेशन फ़ाइल में भी सेट करें, जब आपका सर्वर पुनरारंभ होता है)

लेकिन आप अंतर्निहित कारणों के बजाय लक्षणों का इलाज कर रहे हैं - कनेक्शन क्यों खुले हैं? यदि PHP स्क्रिप्ट समाप्त हो गई है, तो क्या उन्हें बंद नहीं करना चाहिए? सुनिश्चित करें कि आपका वेबसर्वर कनेक्शन पूलिंग का उपयोग नहीं कर रहा है...



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysqldump का उपयोग करके एकल MySQL तालिका को कैसे पुनर्स्थापित करें?

  2. PHP में SSH पर एक MySQL सर्वर से कनेक्ट करें

  3. mysql कॉलम नाम के रूप में गतिशील पंक्ति मानों का चयन करें, मान के रूप में एक और कॉलम

  4. MySQL या MariaDB के लिए गैलेरा क्लस्टर का उपयोग करते हुए एकाधिक डेटा केंद्र सेटअप

  5. विंडोज 10 पर कार्यक्षेत्र के साथ MySQL 8 कैसे स्थापित करें