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

MySQL त्रुटि के आसपास कार्य करना लॉक प्राप्त करने का प्रयास करते समय डेडलॉक मिला; लेनदेन को पुनः आरंभ करने का प्रयास करें

यदि आप InnoDB या किसी पंक्ति-स्तरीय लेन-देन संबंधी RDBMS का उपयोग कर रहे हैं, तो संभव है कि कोई भी लेन-देन लिखें पूरी तरह से सामान्य परिस्थितियों में भी गतिरोध पैदा कर सकता है। बड़ी तालिकाएँ, बड़े लेखन और लंबे लेन-देन ब्लॉक अक्सर गतिरोध होने की संभावना को बढ़ा देंगे। आपकी स्थिति में, यह शायद इनमें से एक संयोजन है।

गतिरोध को सही मायने में संभालने का एकमात्र तरीका यह है कि आप उनसे अपेक्षा करने के लिए अपना कोड लिखें। यदि आपका डेटाबेस कोड अच्छी तरह से लिखा गया है तो यह आम तौर पर बहुत मुश्किल नहीं है। अक्सर आप बस एक try/catch डाल सकते हैं क्वेरी निष्पादन तर्क के आसपास और त्रुटियां होने पर गतिरोध की तलाश करें। यदि आप एक को पकड़ लेते हैं, तो सामान्य बात यह है कि असफल क्वेरी को फिर से निष्पादित करने का प्रयास करें।

मैं आपको इस पेज को पढ़ने की अत्यधिक सलाह देता हूं। MySQL मैनुअल में। इसमें गतिरोध से निपटने और उनकी आवृत्ति को कम करने में मदद करने के लिए चीजों की एक सूची है।



  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 में डुप्लीकेट रिकॉर्ड डालने से कैसे बचें?

  2. MySQL दो कॉलम को मिलाता है और एक नए कॉलम में जोड़ता है

  3. कॉलम से अद्वितीय मानों का चयन करना

  4. MySQL InnoDB इतना धीमा क्यों है?

  5. मैं MySQL को पुनरारंभ किए बिना MySQL की धीमी क्वेरी लॉग को कैसे सक्षम कर सकता हूं?