I've got a site that will not let me create any new custom fields. On a test install I changed the MySql storage engine from InnoDB to my MyISAM, which seemed to fix it. Is this safe to do on a live site?
3 Answers
I have a production site running tables on the InnoDB engine; triggers and full-text search indexing and all. Everything seems copacetic. However, I would recommend (before building anything that will be pushed to production) that you store an image backup of your entire environment (or at least your database server) before moving forward with this.
It's running on EE 2.9.0.
We often change most or all of our tables to InnoDB on our highest traffic sites. The absolute safest thing would be to take the site offline before doing it. That said, we have done it live before and not had an issue except a few seconds of unresponsiveness. I'd strongly suggest taking a backup first though.
Well, the default storage engine of EECMS is MyISAM.
From the user guide:
ExpressionEngine uses the default MySQL storage engine as specified by the MySQL server when it is installed, which in nearly every case will be MyISAM. This is an appropriate choice since ExpressionEngine is primarily a read-heavy application, hosts are typically much more familiar with tuning the server for that storage engine, and using different storage engines for different tables requires greater resource usage and more nuanced server management than most administrators will typically allow.