check_mysqld.cfg - for pnp4nagios configuration that treats all data values as COUNTER

Replacement for check_mysql that allows to set thresholds for any variables in SHOW STATUS or for similar SQL queries. Data is also made available for graphing or other use (graphing templates enclosed). The plugin will determine appropriate "SHOW STATUS" code depending on version of mysql and you can specify custom SELECT in place of "SHOW STATUS" as well.

This MYSQL check plugin does "SHOW STATUS" command on mysql server and can issue alerts if selected variables are above/below given number(s). It also returns all variables as performance data for further nagios 2.0 post-processing.

The variables you can use include but are not limited to:
* Threads_running
* Threads_connected
* Threads_cached
* Open_tables
* Open_files
* Innodb_row_lock_current_waits
* Qcache_free_memory
* Qcache_total_blocks
* Delayed_errors
* Delayed_writes
* Key_blocks_not_flushed
* Slave_running
* Slow_launch_threads
* Slow_queries
You can check more then one (as many as needed) variables at same time. Full list of variables you can use is at: http://dev.mysql.com/doc/refman/5.0/en/server-status-variables.htm

Version 0.8 has been posted in December 2007 that fixes previous limitations and allows to fully specify both upper and lower thresholds in nagios plugin specification compatible way. Additional enhancements are:
1. When you have Mysql 5.0.2 or above the plugin will issue 'SHOW GLOBAL STATUS' instead of 'SHOW STATUS'
2. Instead of plugin doing 'SHOW STATUS' you can now specify custom SQL query (some other SHOW command or SELECT with two columns of data in the output) and set conditions and attribute checks using data.
3.Version 09 now supports nagios plugin specification for specifying threshold (start:end and @start:end) in addition to my custom format (>,
Graphing template has also now been posted. Here is what first page looks like (there are 11 pages in larger template): http:/william.leibzon.org/nagios/mysql_1hours.png
SETUP NOTES

1. Make sure to check and if necessary adjust the the path to utils.pm
2. Make sure to install perl DBI and mysql DBD modules

It is recommended you use arguments to pass on all options to this plugin, but if necessary you can change default MySQL hostname, port, user, password variables at the start of the script code