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

mysql मेमोरी इंजन को अधिक डेटा कैसे स्टोर करें?

आपको टेबल बनाने और लोड करने के तरीके को एडजस्ट करना चाहिए

CREATE TABLE sns_memory SELECT * FROM sns WHERE 1=2;
ALTER TABLE sns_memory ENGINE=MEMORY;
INSERT INTO sns_memory SELECT * FROM sns;
DROP TABLE sns;
ALTER TABLE sns_memory RENAME sns;

यह <मजबूत>tmp_table_size और max_heap_table_size

ठीक वैसे ही, आपको दो काम करने होंगे:

इसे /etc/my.cnf

. में जोड़ें
[mysqld]
tmp_table_size=2G
max_heap_table_size=2G

यह MySQL पुनरारंभ को कवर करेगा। इन मानों को mysqld में अभी पुनरारंभ किए बिना सेट करने के लिए इसे चलाएँ:

SET GLOBAL tmp_table_size = 1024 * 1024 * 1024 * 2;
SET GLOBAL max_heap_table_size = 1024 * 1024 * 1024 * 2;

अगर आप ऊपर दिए गए वैरिएबल को

. से चेक कर रहे हैं
SELECT @@max_heap_table_size;

या

SHOW VARIABLES LIKE 'max_heap_table_size';

आप देख सकते हैं कि SET GLOBAL... . के बाद वे बदलते नहीं दिख रहे हैं बयान। ऐसा इसलिए है क्योंकि सेटिंग्स केवल सर्वर से नए कनेक्शन पर लागू होती हैं। एक नया कनेक्शन बनाएं, और आप देखेंगे कि मान अपडेट होते हैं या आप इसे अपने सत्र में चलाकर बदल सकते हैं:

SET tmp_table_size = 1024 * 1024 * 1024 * 2;
SET max_heap_table_size = 1024 * 1024 * 1024 * 2;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sql उन तत्वों का चयन करता है जो सरणी से मेल खाते हैं और उन्हें एक पंक्ति में प्रदर्शित करते हैं

  2. JDBC प्रभावित पंक्तियों की गलत संख्या लौटाता है

  3. डाउनलोड के लिए सुरक्षित फ़ाइलें

  4. MySQL बूलियन के रूप में कास्ट करें

  5. MySQL:विशिष्ट नोड में पत्ते कैसे खोजें