Please or Register to create posts and topics.

Database and table engines

Hi 🙂

We are using Mariadb version 10.2. as our database server. For performance (and consistency) reasons we would want to use InnoDB as our database engine.
However, it seems that the tables Asgaros has created , wp_forum_posts and wp_forum_topics, are using MyISAM as their engine. We have set the default engine in Mariadb settings to be InnoDB, it seems that Asgaros is not honoring this.

In the code (forum-database.php), i found this comment:

// Because most of the WordPress users are using a MySQL version below 5.6,
// we have to set the ENGINE for the post-table to MyISAM because InnoDB doesnt
// support FULLTEXT before MySQL version 5.6.

According to my research, FULLTEXT indexes with InnoDB are supported in the Mariadb version we are using (10.2, which is roughly the same as mysql 5.7).

My questions are:

Is there a reason to have the engine set to MyISAM (other than the one in the comment)?

Would it be okay to convert the tables to InnoDB?

 

Thank you!

-Livi

 

Hello @livi

No, there is no other reason than the one in the comment. During the installation of Asgaros Forum is set it to MyISAm to guarantee best compatibility for all server-configurations out there. If you are using a database-version which supports FULLTEXT indexes using InnoDB as an engine, you can change it without any problems.

If you want to support the development of Asgaros Forum, you can leave a good review or donate. Thank you very much!

This has cost me hours ti find out. I run a MariaDB Galera Cluster using InnoDB and MyISAM tables are not replicated, so posts and topics was running out of cluster sync. This is also a Multi Site setup splitted to 4096 databases to scale easy.

I converted the 2 tables on one cluster member, which later replicated it throughout the cluster.

wp_XX_forum_posts.MYD
wp_XX_forum_posts.MYI
wp_XX_forum_posts.frm

wp_XX_forum_topics.MYD
wp_XX_forum_topics.MYI
wp_XX_forum_topics.frm

per sub site with:

ALTER TABLE table_name ENGINE=InnoDB;

to InnoDB. Is this enough, means does Asgaros accept this ALTER and never change it back?

Thank you very much for this great peace of software.

Hey @vsatmydynipnet,

Asgaros Forum doesn’t change it back. It is only set to MyISAM while setting the tables up. As long as you don’t delete these tables it will not be changed.

Asgaros has reacted to this post.
Asgaros
Need professional help with Asgaros Forum? Book an appointment with us at domra Web Solutions for setup and customization services. Learn more about our Toolbox for Asgaros Forum plugin to enhance your forum experience.