Chapter 6. Server Performance Tuning
The operating system your MySQL server runs on and the
server's configuration can be just as important to
your server's performance as the indexes, schema, or
queries themselves. In this chapter, we will help you understand how
to tune your server to improve performance, as opposed to tuning
schema or queries. We'll be looking at changes to
your hardware, operating system, and MySQL configuration to see what
effects they have on overall performance.We assume that you've already made efforts to boost
the performance of your queries. If you haven't done
that already, stop now and read Chapter 4 and Chapter 5 to get
a handle on optimizing your queries and your application code. Only
then should you worry about server settings. Hardware is often not
the solution to MySQL performance problems.
Poorly
optimized queries can slow you down far more than not having the
latest CPU or SCSI disk. To put this in perspective, one of the MySQL
AB trainers even says that changing hardware might, in the best
cases, give you a 10-fold performance increase. But tuning queries
(and schemas) can often give you 1000-fold
performance increase. Seriously.Some topics covered in this chapter are platform-specific. The
authors' knowledge of the various platforms on which
MySQL runs is limited. In many cases, you'll need to
consult your local documentation for various operating system tools
and specifics.We start with an overview of the factors that limit performance and
then look more in depth at RAID, hardware, and operating system
issues. The chapter finishes with a discussion of techniques you can
use to locate, identify, and fix bottlenecks.