In many cases we can point to hardware resources as the bottlenecks of database performance issues, and the solution in those cases is to upgrade hardware to increase available CPU cycles, add more RAM for memory buffers, or faster disk systems for increased IOPS workloads. Query optimization is another common task for improving performance and should be addressed in conjunction with hardware and InnoDB tuning.
However, performance bottlenecks can arise from different issues when using InnoDB and are not always hardware or query related. Incorrect configuration values for your application's workload or failing to change the default InnoDB settings on a server are common causes of poor InnoDB performance.
The following are baseline variables that can be changed from their default values to help prevent performance bottlenecks. These variables should also be inspected if you encounter performance issues, as they are primary methods for altering resource utilization...