जब आप डेटाबेस को पुनरारंभ करते हैं तो InnoDB auto_increment फ़ील्ड को रीसेट करता है।
जब InnoDB पुनरारंभ होता है, तो यह कॉलम में उच्चतम मान पाता है और फिर वहीं से शुरू होता है।
MyISAM में ऐसा नहीं होगा क्योंकि यह अंतिम बढ़ी हुई आईडी को कैश करता है।
अपडेट करें
यह सुविधा/बग 2003 से मौजूद है और इससे गंभीर समस्याएं हो सकती हैं। नीचे दिए गए उदाहरण को लें,
-
तालिका t1 में एक ऑटो-इंक प्राथमिक कुंजी है।
-
तालिका t2 में t1 में प्राथमिक कुंजी के लिए एक विदेशी कुंजी "बाधा" के बिना एक कॉलम है। दूसरे शब्दों में, जब t1 में एक पंक्ति हटा दी जाती है तो t2 में संबंधित पंक्तियाँ अनाथ हो जाती हैं।
-
जैसा कि हम जानते हैं कि InnoDB पुनरारंभ के साथ, एक आईडी कर सकते हैं पुनः जारी किया जाए। इसलिए t2 में अनाथ पंक्तियों को t1 में नई पंक्तियों से गलत तरीके से जोड़ा जा सकता है।