First of all, I need to say I'm not a fan of WordPress at all and I have never fully understood it.

But I have inherited a multisite wordpress where anyone can register his own site. All in all, we have thousands of sites. Every site has 10 database tables. Every single mysql table has 3 files (MYD, MYI and sdi). It means meaybe 200 000 files in single directory, which is absolutely insane. Needless to say that working with this database is hell on earth. Many database UIs have problems to work with this amount of tables.

My questions:

  1. Is there any possibility how to get rid of this database havoc? Some plugin or anything to put all the wp_*_options into something like wp_universal_options?
  2. Is WordPress Multisite even intended for this use case? How are you using it? For like 10 sites on one server?
  • Maybe database sharding hacks and eg wp-cli command line tool can help working with options tables?
    – birgire
    Mar 17 at 17:23
  • Some of the options might be global, but others will be used to customize each individual site. To combine them all into one table would require a lot of custom coding; you'd need to filter get_option(), set_option(), delete_option(), and probably others. It's most likely possible but it's not going to be simple.
    – Pat J
    Mar 17 at 17:37
  • To clarify my question - it's not only about options table. I would like to get rid of all the wp_(number)_* tables. wp_*_options was used only as an example.
    – rooobertek
    Mar 17 at 20:00
  • 2
    The short answer is no, it's not possible.
    – vancoder
    Mar 17 at 20:52


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.