मैं एडब्ल्यूएस आरडीएस रीड रेप्लिका का उपयोग कर रहा हूं। इसमें लगातार Magento के मेमोरी इंजन टेबल के साथ समस्याएँ हैं। बैकअप के लिए और प्रतिकृतियां पढ़ें RDS, InnoDB को पसंद करती है। क्या मैं सुरक्षित रूप से सभी तालिकाओं को InnoDB में बदल सकता हूं?
इसके अतिरिक्त मुझे AWS से निम्न चेतावनी मिलती है:
DB Instance magento-monin-prod-db में MyISAM टेबल्स हैं जो कि InnoDB में माइग्रेट नहीं किए गए हैं। ये टेबल पॉइंट-इन-टाइम रिस्टोर करने की आपकी क्षमता को प्रभावित कर सकते हैं। इन तालिकाओं को InnoDB में परिवर्तित करने पर विचार करें। कृपया http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks.Tables देखें
प्रशंसनीय उत्तर
अभी भी प्रतिक्रिया में रुचि है। अगर मुझे अगले 24 घंटों के भीतर कोई समस्या नहीं आती है तो मैं इसे एक उत्तर के रूप में जोड़ूंगा। नीचे मैंने जो कदम उठाए, वे अब तक सुरक्षित हैं। मेरी सबसे बड़ी चिंता थी मैगेंटो मेमोरी इंजन टेबल (in_tmp समाप्त होने वाली टेबल) और इसका असर अनुक्रमण पर पड़ सकता है।
मैंने जो किया था यह रहा:
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE (ENGINE = 'Memory' OR ENGINE='MyIsam') AND TABLE_SCHEMA='magento_db'
- मेरे लिए यह ज्यादातर अस्थायी इंडेक्स टेबल और मैगेंटो मॉड्यूल टेबल लौटा , इसलिए महत्वपूर्ण कोर तालिकाओं के बारे में चिंतित होने के लिए और कुछ पर्याप्त तालिकाओं के बारे में नहीं है कि मैं आसानी से एक और परिवर्तन तालिका निष्पादित कर सकता हूं यदि सामान प्रशंसक को हिट करता है।
प्रत्येक तालिका के लिए मुझे निष्पादित किया गया:
Alter table {table-name} ENGINE=InnoDB;
यदि आपकी कोई भी तालिका InnoDB नहीं है, तो मैं इसे आज़माने के लिए उत्सुक हूँ। लेकिन, जैसा कि मैंने पहले कहा था, मेरे उदाहरण पर केवल कुछ कोर टेबल थे जिन्हें संशोधित करने की आवश्यकता थी।