To operate any database efficiently, you need to have insight
into database performance. This might not be obvious when
everything is going well, but as soon as something goes wrong,
access to information can be instrumental in quickly and
correctly diagnosing the problem.
All databases make some of their internal status data available
to users. In MySQL, you can get this data mostly by running 'SHOW
STATUS' and 'SHOW GLOBAL STATUS', by executing 'SHOW ENGINE
INNODB STATUS', checking information_schema tables and, in newer
versions, by querying performance_schema tables.
These methods are far from convenient in day-to-day operations,
hence the popularity of different monitoring and trending
solutions. Tools like Nagios/Icinga are designed to watch
hosts/services, and alert when a service falls outside an
acceptable range. Other tools such as Cacti and Munin provide a
graphical look at host/service information, and give historical …
[Read more]