कनेक्शन त्रुटि mysql डेटाबेस के लिए


9

मेरे एप्लिकेशन को किसी अन्य मशीन पर mysql डेटाबेस से लगातार कनेक्ट करने की आवश्यकता है। हालाँकि मुझे कनेक्शन पर लगातार त्रुटियां मिलती हैं; मैं आमतौर पर अंततः कनेक्ट कर सकता हूं लेकिन कई रिट्रीट के बाद। मुझे मिलने वाला त्रुटि संदेश है:

Mysql.mysql(): Couldn't connect to SQL-server: Lost connection to MySQL server at 'reading authorization packet', system error: 2

मैंने यहाँ जानकारी पढ़ी है: http://dev.mysql.com/doc/refman/5.0/en/error-lost-connection.html और बग पर टिप्पणी http://bugs.mysql.com/bug .php? id = 28359

जैसा कि आप देख सकते हैं काफी संख्या में गर्भपात जुड़े हुए हैं:

mysql> SHOW GLOBAL STATUS LIKE 'Aborted_connects';
+ ------------------ + ------- +
| चर_नाम | मान |
+ ------------------ + ------- +
| गर्भित_संस्कार | 2540 |
+ ------------------ + ------- +

मैंने 5 से 15 सेकंड की समय सीमा बढ़ाई:

mysql> 'connect_timeout' जैसे वैरिएबल दिखाएं;
+ ----------------- + ------- +
| चर_नाम | मान |
+ ----------------- + ------- +
| connect_timeout | 15 |
+ ----------------- + ------- +

लेकिन इससे कोई फायदा नहीं हुआ। किसी भी सुझाव यह कैसे डिबग करने के लिए? यह डेटाबेस इंटरैक्शन को बहुत धीमा बनाता है जब इसे काम करने से पहले औसतन 5 बार कनेक्ट करने का प्रयास करना पड़ता है।

मैंने अभी तक आवेदन के जीवनकाल के लिए कनेक्शन को खुले रखने की कोशिश नहीं की है, क्या यह बेहतर होगा? मैं कनेक्शन को बंद करने से कैसे रोकूं?

यदि यह कंप्यूटर की समस्याओं में मदद करता है तो विंडोज 7 32-बिट है, जबकि माईस्क्ल सर्वर डेबियन लिनक्स पर है।


मुझे पता है कि यह केवल एक पट्टी है लेकिन बग रिपोर्ट URL बताता है: "मैंने Connect_time के वैश्विक चर को 30 सेकंड तक बढ़ाकर समस्या के आसपास काम किया है।" क्या आप उच्च मूल्य का प्रयास करना चाहते हैं?
जोस्क

1
ठंडा आराम, लेकिन यह एक अच्छी तरह से लिखा सवाल है। एरिक एस। रेमंड लेख ... +1 के लिए बहुत बढ़िया, और आपको शुभकामनाएँ।
ग्वेल्डो

@ जोसक मैं निश्चित रूप से कोशिश कर सकता हूं, लेकिन मुझे संदेह है कि इससे बहुत फर्क पड़ेगा क्योंकि मैंने 5 से 15 तक वृद्धि करके कोई सुधार नहीं देखा
Zitrax

क्या यह वैरिएबल है जो मान 0 पर सेट होने पर कोई सीमा निर्धारित नहीं करता है?
pjmorse

1
क्या आप सकारात्मक हैं कि मशीनों, शायद एक नेटवर्क समस्या के बीच किसी प्रकार की कनेक्टिविटी समस्या नहीं है?
वार्नर

जवाबों:


2

सभी बग विवरणों को देखते हुए मुझे लगता है कि एक नेटवर्क या क्लाइंट साइड समस्या है। कुछ या तो भ्रष्ट कर रहा है या mysql डेटा में बहुत अधिक विलंबता जोड़ रहा है।

एक स्पष्ट नेटवर्क पर, एक वायरशर्क ट्रेस करें और जांचें कि बातचीत क्या है। सुनिश्चित करें कि कहीं भी कोई यातायात आकार नहीं दे रहा है। केवल 64 बिट इश्यू की तरह लगता है इसलिए 32 बिट का निर्माण करें ताकि यह सुनिश्चित हो सके कि यह एक ही मुद्दा है। एक Windows XP बॉक्स पर चेक करें - M $ ने विस्टा पर नेटवर्क स्टैक के लिए कुछ कायरता भरा सामान किया, जिसने इसे बेकार कर दिया - थोड़ा समय! हमारे पास Vista और Win7 मशीनों के साथ नेटवर्किंग के मुद्दों का कोई अंत नहीं है!

यदि आप एक वायरशार्क ट्रेस का प्रबंधन करते हैं तो कृपया पास्टबिन करें और लिंक को डाल दें क्योंकि हम सभी को एक नज़र जैसा लगता है।


Like 64 बिट अंक जैसा लगता है ’से आपका क्या तात्पर्य है? यह एक 32-बिट स्थापित है। और खेद है कि मैंने विस्टा का उल्लेख किया, यह Win7 है, विवरण सही है।
Zitrax

मैं वायरशार्क के साथ डिबगिंग में बहुत परिचित नहीं हूं। लेकिन कुछ चीजें मुझे अजीब लगती हैं, कुछ नए चिन्हित आरएसटी पैकेट और टीसीपी रेट्रांसीमिशन हैं, और कुछ पैकेटों का समय नकारात्मक है, जैसे -257.3 सेकंड।
१२:३६ पर Zitrax

आप सभी पर एक और स्विच का उपयोग कर सकते हैं और फिर से परीक्षण करें। यदि आपके पास एक है तो अलग करें? अगर आप पास्बेबिन या जिप कर सकते हैं और वायरशार्क डंप उपलब्ध करा सकते हैं तो हम देख सकते हैं ...
खुशिल

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.