Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WordPress database performance: Percona server vs MySQL w/o InnoDB

I don't want to ask a subjective "which DBMS is best?" or "which DBMS of these two is better?". This doesn't have to be a fanboy debate.

Rather, I welcome any benchmark test results or specific experiences, when it comes to one specific criteria - performance - especially with respect to one particular application: WordPress.

I understand that WordPress doesn't use InnoDB, and so disabling InnoDB in MySQL can speed things up. On the other hand, Percona is a MySQL fork that replaces InnoDB with XtraDB and also claims to be highly efficient, high-performance.

How does each stack up on performance when it comes to running WordPress? (no need for competition...both might come out looking very well, for all I know)

I have tried searching generally on Google, but haven't come across so much as an intelligent discussion, let alone performance benchmark tests.

Would greatly appreciate if any of the experts here could share their experiences. Many thanks!

And please keep any smug, snide comments like "why don't YOU try" to yourself. If I could, I would. And the purpose of Stack Overflow is to share expertise and learn from each-other, not to do everything yourself.

like image 983
OC2PS Avatar asked Apr 04 '13 01:04

OC2PS


1 Answers

This question is less "MySQL vs. Percona Server" than "MyISAM vs. InnoDB/XtraDB". They both have their own performance characteristics and which storage engine is right for you largely depends on your workload. Most Wordpress sites are low traffic and read-mostly, so as long as your data fits into your buffer pool (for InnoDB/XtraDB) or key cache (for MyISAM), I would expect not-too-dissimilar performance.

Having done a lot of work on Wordpress database optimization, I can tell you that the performance of your Wordpress site depends more upon the class of your hardware and your chosen plugins.

  • You should use a Caching plugin so that you can just avoid a ton of database read requests
  • You should avoid plugins that issue expensive queries (sadly, this covers most plugins)
  • You should prune your comments (usually comments are 99+% SPAM so the ones that are marked as spam are just sitting in your database taking up space)
  • Your host should have enough RAM for the hot dataset to fit in memory

If you really want to go into detail about MyISAM vs. InnoDB/XtraDB, you can check out the following links:

http://www.mysqlperformanceblog.com/2009/01/12/should-you-move-from-myisam-to-innodb/ http://www.rackspace.com/knowledge_center/article/mysql-engines-myisam-vs-innodb

So, to make a long answer even longer, you'll need to profile your MySQL instance after you can generate production traffic. I know you said you couldn't, but ... this question is kind of like me asking "What haircut would look best on me", without including a picture.

like image 105
Guest Poster Avatar answered Nov 15 '22 02:11

Guest Poster