MySQL JDBC ड्राइवर में एक ऑटोरेकनेक्ट सुविधा है जो अवसर पर सहायक हो सकती है; देखें "Driver/Datasource कनेक्टर/जे के लिए कक्षा के नाम, URL सिंटैक्स और कॉन्फ़िगरेशन गुण ", और चेतावनी पढ़ें।
दूसरा विकल्प JDBC कनेक्शन पूल का उपयोग करना है।
एक तीसरा विकल्प यह जांचने के लिए एक क्वेरी करना है कि प्रत्येक लेनदेन की शुरुआत में आपका कनेक्शन अभी भी जीवित है। यदि कनेक्शन जीवित नहीं है, तो इसे बंद करें और एक नया कनेक्शन खोलें। एक सामान्य क्वेरी है SELECT 1
. यह भी देखें:
सत्र निष्क्रिय टाइमआउट को वास्तव में बड़ी संख्या में सेट करने के लिए MySQL कॉन्फ़िगरेशन गुणों को बदलना एक आसान समाधान है। हालांकि:
- यदि आपका आवेदन वास्तव में लंबे समय तक निष्क्रिय रहने के लिए उत्तरदायी है तो यह मदद नहीं करता है।
- यदि आपका एप्लिकेशन (या कोई अन्य एप्लिकेशन) कनेक्शन लीक कर रहा है, तो निष्क्रिय टाइमआउट को बढ़ाने का मतलब यह हो सकता है कि खोए हुए कनेक्शन अनिश्चित काल तक खुले रहें ... जो डेटाबेस मेमोरी उपयोग के लिए अच्छा नहीं है।