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

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:संचार लिंक विफलता

यह एक लपेटा हुआ अपवाद है और वास्तव में दिलचस्प नहीं है। यह मूल कारण . है अपवाद के बारे में जो वास्तव में हमें मूल कारण के बारे में कुछ बताता है। कृपया स्टैकट्रैक में थोड़ा और देखें। संभावना बहुत बड़ी है कि फिर आपको एक SQLException: Connection refused का सामना करना पड़ेगा या SQLException: Connection timed out

अगर आपके मामले में भी यह सच है, तो इसके सभी संभावित कारण हैं:

  1. JDBC URL में IP पता या होस्टनाम गलत है।
  2. JDBC URL में होस्टनाम स्थानीय DNS सर्वर द्वारा मान्यता प्राप्त नहीं है।
  3. जेडीबीसी यूआरएल में पोर्ट नंबर गुम या गलत है।
  4. डीबी सर्वर डाउन है।
  5. DB सर्वर TCP/IP कनेक्शन स्वीकार नहीं करता है।
  6. जावा और डीबी के बीच में कुछ कनेक्शन अवरुद्ध कर रहा है, उदा। फ़ायरवॉल या प्रॉक्सी।

एक या दोनों में से किसी एक को हल करने के लिए, निम्नलिखित सलाहों का पालन करें:

  1. ping के साथ उन्हें सत्यापित और परीक्षण करें ।
  2. DNS को रीफ्रेश करें या इसके बजाय JDBC URL में IP पते का उपयोग करें।
  3. my.cnf . के आधार पर इसे सत्यापित करें MySQL डीबी का।
  4. इसे शुरू करें।
  5. सत्यापित करें कि क्या mysqld को --skip-networking के बिना प्रारंभ किया गया है विकल्प।
  6. फ़ायरवॉल अक्षम करें और/या पोर्ट को अनुमति/अग्रेषित करने के लिए फ़ायरवॉल/प्रॉक्सी कॉन्फ़िगर करें।

वैसे (और वास्तविक समस्या से असंबंधित), आपको JDBC ड्राइवर को प्रत्येक पर लोड करने की आवश्यकता नहीं है getConnection() बुलाना। स्टार्टअप के दौरान सिर्फ एक बार ही काफी है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL, जांचें कि SQL के साथ तालिका में कोई कॉलम मौजूद है या नहीं

  2. MySQL में डेटाबेस या टेबल के लिए इंडेक्स कैसे देखें?

  3. MySQL में प्रति समूह शीर्ष एन पंक्तियों का चयन कैसे करें

  4. मैं उन पंक्तियों की संख्या कैसे गिन सकता हूं जो एक MySQL क्वेरी लौटाती हैं?

  5. यदि मौजूद है तो मैं कैसे अपडेट करूं, यदि नहीं तो सम्मिलित करें (AKA upsert या merge) MySQL में?