दिलचस्प पोस्ट
क्लासिक एएसपी एसक्यूएल इंजेक्शन प्रोटेक्शन कैसे एक SQLite डेटाबेस के लिए एक ही बोली से बचने के लिए? मैं इस preg_match केस को असंवेदनशील कैसे बना सकता हूं? कैसे रनटाइम में WPF छवि को लोड करने के लिए? ओस्ट्रिन्स्ट्रीम का पुन: उपयोग कैसे करें? ASP.Net MVC में एक वैश्विक फ़िल्टर को चुनिंदा रूप से अक्षम कैसे करें PHP के साथ धूमकेतु का उपयोग करना? कैसे (फ़ंक्शन () {}) () काम का निर्माण और क्यों लोग इसका उपयोग करते हैं? जावास्क्रिप्ट में एचटीएमएलएक्स की आवश्यक विशेषता को कैसे सेट करें? Regex का उपयोग कर एक स्ट्रिंग में एक पैटर्न का सूचक प्राप्त करें गिट में एक एसएचए हैश द्वारा एक प्रतिबद्धता पर वापस लौटें? लिनक्स के साथ यूएसबी पावर सप्लाई (चालू / बंद) को नियंत्रित करना मैं कैसे सी # में एक वर्ग नाम उपनाम कर सकता हूँ? जीडीबी का उपयोग कैसे करें डीबग करने के लिए? जावा में SIGKILL सिग्नल को शानदार तरीके से कैसे प्रबंधित करें

मिसाम और इंनोडीबी के बीच क्या अंतर है?

मैं समझता हूं कि इस प्रश्न से पहले पूछा गया है, लेकिन अधिकतर समय से इसे किसी विशिष्ट डेटाबेस या तालिका के संबंध में पूछा जाता है मुझे इस साइट पर कोई जवाब नहीं मिल सकता है जो किसी विशेष डेटाबेस के संबंध में दो इंजनों और उनके अंतर का वर्णन करता है।

मैं एक मेज या डेटाबेस डिजाइन करने के संबंध में भविष्य में और अधिक सूचित निर्णय लेने में सक्षम होना चाहता हूं, इसलिए दो भंडारण इंजन के बीच के मतभेदों पर व्यापक उत्तर की तलाश कर रहा हूं।

माइस्साम और इंनोडीबी के बीच क्या अंतर है, और जब मुझे एक या दूसरे के बीच निर्णय लेने की कोशिश करनी चाहिए तो मुझे क्या चाहिए?

वेब के समाधान से एकत्रित समाधान "मिसाम और इंनोडीबी के बीच क्या अंतर है?"

InnoDB और MyisAM ("आप के बारे में पूछा एक टेबल या डेटाबेस डिजाइन करने के संबंध में") के बीच मुख्य अंतर "संदर्भित अखंडता" और "लेनदेन" के लिए समर्थन है।

यदि आपको विदेशी कुंजी बाधाओं को लागू करने के लिए डेटाबेस की जरूरत है, या आपको लेनदेन का समर्थन करने के लिए डेटाबेस की आवश्यकता है (यानी दो या अधिक डीएमएल ऑपरेशन द्वारा किए गए परिवर्तनों को काम के एक इकाई के रूप में संभाला गया है, या तो सभी लागू किए गए परिवर्तनों के साथ, या सभी बदलावों को बदल दिया गया है) तो आप इंनोडीबी इंजन का चयन करेंगे, चूंकि ये फीचर्स माइस्सम इंजन से अनुपस्थित हैं।

ये दो सबसे बड़े अंतर हैं एक और बड़ा अंतर संगामिति है मिसाम के साथ, एक डीएमएल कथन तालिका पर एक अनन्य लॉक प्राप्त करेगा, और उस लॉक को आयोजित किया जाता है, जबकि कोई अन्य सत्र टेबल पर एक SELECT या DML ऑपरेशन नहीं कर सकता।

उन दो विशिष्ट इंजन जिन्हें आपने (एनओडीबी और माइसाम) के बारे में पूछा है, उनमें अलग डिज़ाइन लक्ष्यों हैं। MySQL के पास अपने स्वयं के डिज़ाइन लक्ष्यों के साथ अन्य स्टोरेज इंजन भी हैं

इसलिए, इनोएडीबी और माइसाम के बीच चुनने में, पहला कदम यह निर्धारित करने में है कि आपको इनओडीबी द्वारा प्रदान की जाने वाली सुविधाओं की आवश्यकता है। यदि नहीं, तो माइसाम विचार के लिए तैयार है।

मतभेद की अधिक विस्तृत चर्चा अव्यावहारिक (इस फोरम में) समस्या स्थान की अधिक विस्तृत चर्चा अनुपस्थित करती है … कैसे आवेदन डेटाबेस का उपयोग करेगा, कितने तालिकाओं, टेबल का आकार, लेनदेन लोड, चयन के संस्करण , सम्मिलित करें, अपडेट, संगामी आवश्यकताओं, प्रतिकृति सुविधाओं आदि।


डेटाबेस के तार्किक डिजाइन डेटा विश्लेषण और उपयोगकर्ता आवश्यकताओं के आसपास केंद्रित होना चाहिए; एक रिलेशनल डेटाबेस का उपयोग करने के लिए विकल्प बाद में आ जाएगा, और बाद में भी एक संबंधपरक डेटाबेस प्रबंधन प्रणाली के रूप में MySQL की पसंद, और फिर प्रत्येक तालिका के लिए एक भंडारण इंजन का चयन होगा।

MyISAM:

  1. MYISAM तालिका-स्तर लॉक का समर्थन करता है
  2. गति की आवश्यकता के लिए डिज़ाइन MyISAM
  3. माइसाम विदेशी कुंजी का समर्थन नहीं करता इसलिए हम MYSQL को MYISAM के साथ डीबीएमएस कहते हैं
  4. MyISAM अपनी तालिका, डेटा और अनुक्रमित डिस्कस्पेस में अलग-अलग तीन अलग-अलग फाइलों का उपयोग करता है। (टैब्लेनाम। एफआरएम, टैब्लेनाम। एमआईडी, टैब्लेनाम। एम.आई.आई.)
  5. MYISAM लेनदेन का समर्थन नहीं करता है आप प्रतिबद्ध नहीं हैं और MYISAM के साथ रोलबैक नहीं कर सकते। एक बार जब आप इसे कम किया है एक आदेश जारी।
  6. MYISAM पूर्ण टेक्स्ट खोज का समर्थन करता है
  7. आप MyISAM का उपयोग कर सकते हैं, यदि तालिका अधिक चयन और कम अद्यतन और हटाने के साथ अधिक स्थिर है।

InnoDB:

  1. InnoDB रो-स्तरीय लॉकिंग का समर्थन करता है
  2. एनओडीबी उच्चतम मात्रा डेटा के प्रसंस्करण करते समय अधिकतम प्रदर्शन के लिए बनाया गया है
  3. InnoDB विदेशी कुंजी का समर्थन इसलिए हम InnoDB के साथ MySQL RDBMS है कहते हैं
  4. InnoDB एक तालिकास्थान में अपनी तालिकाएँ और अनुक्रमणिका को संग्रहीत करता है
  5. InnoDB लेनदेन का समर्थन करता है आप इनओडीबी के साथ प्रतिबद्ध और रोलबैक कर सकते हैं