About Percona
Percona
History
MySQL wasn't using their own InnoDB software that they bought out until 5.5 (5.1 included an older version that they were maintaining themselves)
Oracle bought out MySQL, and has not been improving much on InnoDB
InnoDB was released as a modular plugin, which is how it works in 5.5
Percona forked InnoDB, created ExtraDB
About
Open-source software (GNU
GPL
)
MySQL consulting
Software
Why InnoDB / XtraDB?
Row-locking versus table-locking (MyISAM)
Transactional support - atomic commits
Binary logging for replication
Foreign key support
Percona Server
Percona Server - Drop-in replacement for MySQL. Not a MySQL fork. All client applications use the same protocol, so there is no compatability issues.
XtraDB
XtraDB is 100% compliant with InnoDB features and SQL - another drop-in
Percona XtraDB Cluster
Extremely easy to setup (less than one hour on initial trial)
Very minor changes to database configuration
Master-master-master setup - three or more masters
Synchronous replication
Can add / remove servers at anytime
Cluster software is using third-party software, not MySQL's codeset
XtraBackup
Hot backups – make backups while running server without affecting service
InnoDB locks table while using mysqldump
Throttles backups based on system load
Monitoring
Plugins for Nagios, cacti
Utilities
Offer an amazing toolset:
Percona Toolkit
Database Configuration
Query Analyzer
Configuration
Sample configuration file
Ubuntu + Percona + my settings
UTF-8 connections and collations by default
InnoDB tables by default
Strict startup checks – will crash if InnoDB doesn't load
No table caching
Slow query logs (more than one second)
Compatible with existing Ubuntu configurations, drop-in replacement for existing servers (uses native sockets, data directories, transaction log size)
Deployment
Maintain a 5.1 and a 5.5 release set
Ubuntu repositories
Gentoo ebuild in the works
Migration is as simple as a MySQL upgrade (dump, restore tables)