Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में MyISAM बनाम InnoDB

दोनों स्टोरेज इंजन हैं। MySQL 8.0+ में डिफॉल्ट InnoDB है।

इंजन देखें

USE business;
SHOW TABLE STATUS;

InnoDB → MyISAM बदलें

SELECT CONCAT('ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' ENGINE=MyISAM;')
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'sample' AND ENGINE = 'InnoDB';

मुख्य अंतर

फीचरInnoDBMyISAM
ट्रांजैक्शन (ACID)हांनहीं
रो-लेवल लॉकिंगहांनहीं (टेबल लॉक)
फॉरेन कीहांनहीं
क्रैश रिकवरीअच्छीसीमित
फुलटेक्स्ट सर्च5.6+ सेहां
स्पेशल इंडेक्सहांनहीं

सिफारिश: ज्यादातर केस में InnoDB बेहतर। MyISAM केवल रीड-ओनली/आर्काइव टेबल के लिए।

  1. MySQL टेबल MyISAM या InnoDB इंजन उपयोग कर रही है कैसे जानें? MySQL टेबल MyISAM या InnoDB इंजन उपयोग कर रही है कैसे जानें?

    SHOW TABLE STATUS से टेबल स्टोरेज इंजन जांचें किसी टेबल का स्टोरेज इंजन (MyISAM, InnoDB, आदि) जानने के लिए SHOW TABLE STATUS का उपयोग करें। विशिष्ट टेबल के लिए SHOW TABLE STATUS FROM डेटाबेस_नाम LIKE टेबल_नाम; उदाहरण: business डेटाबेस में student टेबल SHOW TABLE STATUS FROM business LIKE studen

  1. क्या MySQL में InnoDB डिफ़ॉल्ट रूप से सक्षम है? क्या MySQL में InnoDB डिफ़ॉल्ट रूप से सक्षम है?

    हाँ, InnoDB डिफ़ॉल्ट स्टोरेज इंजन है MySQL संस्करण 4.0 से InnoDB डिफ़ॉल्ट स्टोरेज इंजन है। वर्तमान संस्करण (8.0+) में भी यह डिफ़ॉल्ट है। संस्करण जांचना mysql> SELECT VERSION(); +-----------+ | VERSION() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.00 sec) कॉन्फ़िगरेशन फाइल में डि

  1. - MySQL में InnoDB से MyISAM में टेबल इंजन बदलना

    MySQL में टेबल इंजन बदलने की प्रक्रिया सबसे पहले एक टेबल बनाएं: mysql> create table DemoTable1982 ( StudentId int, StudentName varchar(20), StudentAge int ); Query OK, 0 rows affected (0.00 sec) टेबल का इंजन प्रकार जांचें: mysql> show create table DemoTable1982; आउटपुट (InnoDB इंजन दिखाता है):