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

MySQL में MyISAM को InnoDB स्टोरेज इंजन में कैसे बदलें

MyISAM इंजन को InnoDB में बदलने के लिए, हम ALTER कमांड का उपयोग कर सकते हैं। आइए अब MyISAM इंजन की मदद से एक टेबल बनाते हैं।

mysql> create table MyISAMToInnoDBDemo 
-> ( 
-> id int, 
-> Name varchar(100) 
-> )ENGINE=MyISAM; 
Query OK, 0 rows affected (0.19 sec)

जांचने के लिए कि टेबल MyISAM इंजन के साथ बनाई गई है या नहीं।

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'business' and ENGINE = 'MyISAM';

निम्नलिखित आउटपुट MyISAM इंजन के साथ बनाई गई टेबल को दर्शाता है।

+-------------------------+--------+ 
| TABLE_NAME | ENGINE | 
+-------------------------+--------+ 
| studentrecordwithmyisam | MyISAM | 
+-------------------------+--------+ 
1 row in set (0.00 sec)

हम ALTER कमांड की मदद से MyISAM को InnoDB में बदल सकते हैं।

mysql> alter table MyISAMToInnoDBDemo engine=InnoDB; 
Query OK, 0 rows affected (1.65 sec) 
Records: 0 Duplicates: 0 Warnings: 0

रूपांतरण की जांच करने के लिए।

mysql> SELECT TABLE_NAME,ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'test' and ENGINE = 'InnoDB';

यहां आउटपुट है।

+--------------------+--------+ 
| TABLE_NAME | ENGINE | 
+--------------------+--------+ 
| myisamtoinnodbdemo | InnoDB | 
+--------------------+--------+ 
1 row in set (0.00 sec)
महत्वपूर्ण नोट: ALTER TABLE ... ENGINE=InnoDB टेबल को रीबिल्ड करता है, जो बड़ी टेबल्स के लिए समय ले सकता है और लॉकिंग का कारण बन सकता है। MySQL 5.6+ में ALGORITHM=INPLACE (डिफ़ॉल्ट) ऑनलाइन DDL का उपयोग करता है, लेकिन फिर भी एक विशेष लॉक की आवश्यकता होती है। उत्पादन वातावरण में pt-online-schema-change (Percona Toolkit) का उपयोग करने पर विचार करें।
  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 कैसे स्थापित या सक्षम करें?

    MySQL में InnoDB स्टोरेज इंजन सक्षम करना MySQL 8.0 में InnoDB डिफ़ॉल्ट स्टोरेज इंजन है। फिर भी, आप इसे कॉन्फ़िगरेशन फ़ाइल या टेबल निर्माण समय में सेट कर सकते हैं। कॉन्फ़िगरेशन फ़ाइल (my.ini/my.cnf) जाँचना MySQL कॉन्फ़िगरेशन फ़ाइल में default-storage-engine=InnoDB सेट करें। MySQL 8 में यह डिफ़ॉल्ट रू

  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) कॉन्फ़िगरेशन फाइल में डि