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

क्या एक ही MySQL डेटाबेस में InnoDB और MyISAM टेबल्स उपयोग कर सकते हैं?

एक डेटाबेस में मिश्रित स्टोरेज इंजन

हां, आप एक ही डेटाबेस में InnoDB और MyISAM दोनों टेबल्स बना सकते हैं। यह पूरी तरह से समर्थित और अनुशंसित तरीका है।

उदाहरण: डेटाबेस और दोनों टाइप की टेबल्स बनाना

mysql> CREATE DATABASE BothInnoDBandMyISAM;
mysql> USE BothInnoDBandMyISAM;

InnoDB टेबल

mysql> CREATE TABLE Student (
    -> StudentId INT,
    -> StudentName VARCHAR(20)
    -> ) ENGINE=InnoDB;

MyISAM टेबल

mysql> CREATE TABLE Employee (
    -> EmployeeId INT,
    -> EmployeeName VARCHAR(30)
    -> ) ENGINE=MyISAM;

इंजन टाइप वेरीफाई करना

mysql> SELECT ENGINE FROM information_schema.tables 
    -> WHERE table_name = 'Student' AND table_schema = 'BothInnoDBandMyISAM';
+--------+
| ENGINE |
+--------+
| InnoDB |
+--------+
mysql> SELECT ENGINE FROM information_schema.tables 
    -> WHERE table_name = 'Employee' AND table_schema = 'BothInnoDBandMyISAM';
+--------+
| ENGINE |
+--------+
| MyISAM |
+--------+

कब कौन सा इंजन चुनें

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

आधुनिक एप्लिकेशन्स के लिए InnoDB डिफ़ॉल्ट और अनुशंसित है। MyISAM केवल पढ़ने-हेवी, नॉन-ट्रांजैक्शनल वर्कलोड्स के लिए उपयोगी हो सकता है।

  1. MySQL डेटाबेस में एक टेबल का बैकअप कैसे लें? MySQL डेटाबेस में एक टेबल का बैकअप कैसे लें?

    सिंगल टेबल का बैकअप लेने के लिए mysqldump यूटिलिटी का उपयोग करें। यह MySQL 5.0+ में मानक तरीका है। कमांड लाइन से बैकअप लें कमांड प्रॉम्प्ट खोलें (Win+R → cmd) MySQL के bin फोल्डर में जाएं: cd C:\Program Files\MySQL\MySQL Server 8.0\bin mysqldump चलाएं: E:\student.sql Enter password: ***********

  1. - दो MySQL टेबल को कैसे मर्ज करें?

    INSERT IGNORE ... SELECT से दो टेबल मर्ज करें दो टेबल को मर्ज करने के लिए (दूसरे से पहले में डेटा कॉपी करना, डुप्लिकेट से बचते हुए), INSERT IGNORE INTO ... SELECT का उपयोग करें। सिंटैक्स INSERT IGNORE INTO टेबल_लक्ष्य SELECT * FROM टेबल_स्रोत; उदाहरण 1. पहली टेबल बनाएं और डेटा डालें INSERT INTO

  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