AWS RDS Okuma Çoğaltması kullanıyorum. Magento'nun Bellek motor tablolarıyla sürekli sorunları var. Yedekleme ve okuma kopyaları için RDS InnoDB'yi seviyor. Tüm tabloları güvenli bir şekilde InnoDB olarak değiştirebilir miyim?
Ayrıca AWS'den şu uyarıyı alıyorum:
DB Örneği magento-monin-prod-db, InnoDB'ye geçirilmemiş MyISAM tablolarını içerir. Bu tablolar, zaman içinde geri yükleme gerçekleştirme yeteneğinizi etkileyebilir. Bu tabloları InnoDB'ye dönüştürmeyi düşünün. Lütfen http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks adresine bakın.
Makul Cevap
Hala geri bildirimle ilgileniyor. Önümüzdeki 24 saat içinde herhangi bir sorun bulamazsam bunu cevap olarak ekleyeceğim. Aşağıda attığım adımlar şimdiye kadar güvenli görünüyor. En büyük endişem Magento'nun Bellek Motoru tabloları (in_tmp ile biten tablolar) ve indeksleme üzerindeki etkisi oldu.
İşte yaptığım şey:
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE (ENGINE = 'Memory' OR ENGINE='MyIsam') AND TABLE_SCHEMA='magento_db'
- Benim için bu çoğunlukla geçici dizin tabloları ve magento modül tabloları, bu yüzden endişe edilecek kritik çekirdek tablolar çok ve şeyler fan vurursa kolayca başka bir alter tablo yürütmek yeterli yeterli tablolar döndü.
Döndürülen her tablo için yürüttüm:
Alter table {table-name} ENGINE=InnoDB;
Tablolarınızdan hiçbiri InnoDB değilse bunu denemek gergin olurum. Ancak, daha önce söylediğim gibi, benim örneğimde değiştirilmesi gereken sadece birkaç çekirdek tablo vardı.