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

MySQL में अधिकतम JSON कॉलम की लंबाई

यहां देखें कि @JorgeLondoño किस बारे में बात कर रहा है।

सर्वर का अधिकतम अनुमत पैकेट आकार सेट करें:

mysql> set global max_allowed_packet=1024*1024*1024;

बाहर निकलें और mysql क्लाइंट को फिर से खोलें, इस बार क्लाइंट के अधिकतम पैकेट आकार को मैच करने के लिए सेट करें:

$ mysql --max-allowed-packet=$((1024*1024*1024*))

JSON कॉलम के साथ एक परीक्षण तालिका बनाएं और इसे सबसे लंबे JSON दस्तावेज़ से भरें जो आप कर सकते हैं:

mysql> create table test.jtest ( j json );

mysql> insert into test.jtest 
  set j = concat('[', repeat('"word",', 100000000), '"word"]');
Query OK, 1 row affected (1 min 49.67 sec)

mysql> select length(j) from test.jtest;
+-----------+
| length(j) |
+-----------+
| 800000008 |
+-----------+

इससे पता चलता है कि मैं 100 मिलियन तत्वों के साथ एक JSON दस्तावेज़ बनाने में सक्षम था, और MySQL इसे लगभग 800MB में संग्रहीत करता है।

मैंने लंबे दस्तावेज़ की कोशिश नहीं की। मुझे लगता है कि यह अधिकतम 1 जीबी है, जो कि आप max_allowed_packet के लिए सबसे बड़ा मान सेट कर सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मेरा डेटाबेस बैकअप स्क्रिप्ट php में काम क्यों नहीं कर रहा है?

  2. MacOS MySQL सर्वर प्रारंभ नहीं कर सकता

  3. mysql गिनती समूह होने से

  4. एकल पंक्ति नहीं मिलने पर डिफ़ॉल्ट मान लौटाएं

  5. संबंधपरक डेटाबेस डिज़ाइन एकाधिक उपयोगकर्ता प्रकार