Mysql 5.6+ Require as part of upgrade path
8 posts by 3 authors in: Forums > CMS Builder
Last Post: January 29, 2019 (RSS)
By kitsguru - January 16, 2019 - edited: January 16, 2019
When you start to require PHP 7+, I believe an upgrade to MySql 5.6+ is in order.
With that being said, it would be a great time to switch to INNODB as the default engine instead of ISAM. There are many benefits to INNODB that warrant the switch.
By Dave - January 16, 2019
Hey Jeff,
Yea, I agree. That's on our wish list as well. I think it's something we'll likely revisit this year. I'm hesitant to require too many upgrades and there's a significant time cost for us to upgrade and test the code, which takes time away from development of other features. So usually what we try to do is do it when we're updating the code anyways, such as if/when we update the database libraries.
interactivetools.com
By kitsguru - January 16, 2019
I have a plugin that converts all the CMSB tables to INNOB and been using it for almost 2 years. It fixes a number of issues that I have reported in the past such as index to long. Also my benchmarks show significant performance boosts.
One issue I had was when two people were updating the same section at the same time. ISAM does table locking and INNODB does record level locking which solved that issue as well.
By Dave - January 18, 2019
Thanks Jeff,
Could you post the plugin or email it to me at dave@interactivetools.com and I'll take a look?
And a couple questions:
- What advantage does table vs row locking have in your application? (speed?)
- What v5.6 features are you using that are not in v5.5?
I'm wondering if we could have an option for innodb as a way to soft-launch it.
interactivetools.com
By kitsguru - January 18, 2019 - edited: January 18, 2019
Hi Dave,
The main features using INNODB in MySql 5.6
- foreign key restraints
- full text searching
- row locking is faster than table locking
- transactional support
You might find this link interesting from the MySql team:
https://www.mysql.com/why-mysql/presentations/myisam-2-innodb-why-and-how/
as well as:
https://www.liquidweb.com/kb/mysql-performance-myisam-vs-innodb/
https://www.percona.com/blog/2016/10/11/mysql-8-0-end-myisam/
My earlier post on "Section error when dragging column order"
https://www.interactivetools.com/forum/forum-posts.php?postNum=2241627#post2241627
I have repackaged the plugin and you are free to modify and use it in any manner you wish. It will convert all the tables in the Database to INNODB. If you rerun it, it will rebuild and optimize the indexes.
Also of note is that MySQL 5.5 supported ended December 2018.
By mark99 - January 29, 2019
Worth noting that there are some huge web hosting companies out there (e.g. 1and1 / ionos) that for some reason still only give their clients access to MySQL 5.5 databases. Heaven knows why but I'm stuck in that boat of waiting for this to change before we can adapt our own site (sadly changing host isn't currently a viable option).
By kitsguru - January 29, 2019
That may be true about hosts not updating all their servers. It might be worth asking if you can migrate to a new server, usually offerred for free. however you aren’t required to upadte CMSB either. I was pointing out if PHP 7.1 is required, may as well moved to MySql 5.6 as well.
By Dave - January 29, 2019
Hey Guys,
Thanks for all the feedback and insights. I think what we'll do is add a feature so users can enable this on an opt-in basis to begin with. That way it covers all the possible scenarios.
Cheers!
interactivetools.com