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

134217728 बाइट्स की अनुमत स्मृति आकार समाप्त हो गया (4294967296 बाइट्स आवंटित करने का प्रयास किया गया)

मैंने इस बग रिपोर्ट को यहां पढ़ा:https://bugs.php.net/bug. php?id=51386

आपकी समस्या इसलिए प्रतीत होती है क्योंकि एक longblob है या longtext तालिका के कॉलम में।

longtext / longblob 4294967295 . की अधिकतम लंबाई है [4जीबी] यही कारण है कि mysqli बफर के लिए उस मेमोरी को आवंटित करने का प्रयास करता है ताकि यह सुनिश्चित हो सके कि कुछ भी खो नहीं गया है। मेरा सुझाव है कि आप mediumtext . का उपयोग करें (16777215 [16एमबी] अधिकतम लंबाई), जो आमतौर पर हर चीज के लिए पर्याप्त होना चाहिए।

अपडेट करें: क्योंकि इस उत्तर में कुछ गतिविधि देखी गई है, मैं इस समाधान को Phil_1984 से जोड़ता हूं (टिप्पणियां देखें)

=> यदि आप $stmt->store_result() . का उपयोग करते हैं आप mysqli का उपयोग longblob . के साथ कर सकते हैं / longtext त्रुटि प्राप्त किए बिना।

-

पुराना उत्तर: मेरा सुझाव है कि आप या तो कॉलम को दूसरे प्रकार (मध्यम टेक्स्ट) में बदल दें या पीडीओ का उपयोग करें (मुझे लगता है कि इसमें वह समस्या नहीं है)। लेकिन अगर आप कॉलम को लॉन्गटेक्स्ट के रूप में रखना चाहते हैं, तो आपको अपनी mysql लाइब्रेरी को स्विच करना होगा

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. INSERT INTO में सुधार कैसे करें ... लॉकिंग व्यवहार का चयन करें

  2. MySQL तालिका बनाएं यदि मौजूद नहीं है -> त्रुटि 1050

  3. अगली और पिछली कार्यक्षमता के साथ छवियों को एक-एक करके प्रदर्शित करें

  4. उन्नत MySQL क्वेरी:किसी अन्य तालिका से जानकारी के साथ अद्यतन तालिका

  5. लोचदार खोज के लिए मैसकल क्वेरी