Percona MySQL 5.5
The dedicated database server’s run Percona MySQL Server (which offers higher performance and stability over standard MySQL)
We use a special version of MySQL from Percona – http://www.percona.com/software/
Percona Server is an enhanced drop-in replacement for MySQL.
Percona Server Feature Comparison
- Queries will run faster and more consistently.
- Consolidate servers on powerful hardware.
- Delay sharding, or avoid it entirely.
- Save money on hosting fees and power.
- Spend less time tuning and administering.
- Achieve higher uptime.
- Ttroubleshoot without guesswork.
Benchmark for Percona Server
- Percona Server is more than 40% faster than MySQL in overall throughput.
- Percona Server performance remains more stable over time than MySQL.
Benchmarking
- Super Smack (http://jeremy.zawodny.com/mysql/super-smack/)
- mysqlslap (http://dev.mysql.com/doc/refman/5.5/en/mysqlslap.html)
Tuning configuration (my.cnf)
- mysqltuner (http://mysqltuner.pl/mysqltuner.pl)
- Tuning Primer (https://launchpad.net/mysql-tuning-primer)
MyISAM I/O Scalability
MyISAM is a complex storage engine, but must be configured properly to perform at its best.
Tuning my.cnf for MyISAM I/O scalability:
innodb_buffer_pool_size – Set the amount of memory allocated to both MyISAM and the index buffer cache, when the server requests data available in the cache it can be processed right away. Otherwise, the OS will request the data be loaded from disk to buffer, therefore it is important to set the value as high as possible to use the more efficient MyISAM data and index buffer cache instead of operating system buffer. Recommended to be set to 70 – 80% of available primary memory.
innodb_flush_log_at_trx_commit – MyISAM flushes the transaction log to disk once per second in the background. Default value is set to 1. innodb_flush_log_at_trx_commit = 0 – No log flushing on each transaction commit, however transaction data will be lost in case of MySQL crash. Recommended use on replication slaves that can offer a performance improvement of ~4%. innodb_flush_log_at_trx_commit = 2 – flush the log to Operating Systems Cache to save disk I/O on each transaction commit.
HyperDB
Replacement for the WPDB class which adds the ability to use multiple databases. HyperDB allows multiple servers to be configured and multiple routes to servers.
