1

Im looking for a tool that could help me and my team monitor our MySQL Replication.

I would love for a tool that could alert me if

  • Seconds_Behind_Master passes a threshold
  • Slave_SQL_running is false
  • Slave_IO_running is false

If not alerting, then maybe just get a quick view of these parameters.

I am also ready for paid solutions.

Any ideas on such service/tool?

0

I use a tool called Server Density which also monitors various other metrics from the system, but I use it mainly to log statistics for my mysql slaves/masters and alert me if the get too slow, or if they go down. It's quite handy :) Though it does have a hefty price tag.

| improve this answer | |
2

You could quite easily write a simply Perl or PHP script, running on a cron, to periodically check the MySQL server and alert you to any problems.

For example, I have the following Perl code in my setup:

$sql="show slave status";
$sth=$dbhread->prepare($sql);
$sth->execute();
($result)=$sth->fetchrow_hashref();
$sth->finish();

if($result->{'Slave_SQL_Running'} ne "Yes") {
   &SendAlert("Slave SQL not running");
}

if($result->{'Slave_IO_Running'} ne "Yes") {
   &SendAlert("Slave IO not running");
}

if($result->{'Seconds_Behind_Master'} > $threshold) {
   &SendAlert("Seconds Behind Master is too high");
}

Obviously &SendAlert can be set up to do what ever you like (email/SMS alerting)

| improve this answer | |
  • No need to check Seconds_Behind_Master is one of the first two conditions is true because Seconds_Behind_Master is NULL when either 'Slave_IO_Running' or 'Slave_SQL_Running' is No. Still, +1 for Perl script idea rather than for commerical software. Even FreeWare is not necessary. – RolandoMySQLDBA Dec 24 '11 at 23:31
0

MySQL Enterprise Monitor http://www.mysql.com/products/enterprise/monitor.html may be helpful. There's a separate tab for replication where you can see all the information as well as set triggers using 'Events'.

| improve this answer | |
0

If you're using Nagios there's a build in plugin to monitor all you want and more

http://exchange.nagios.org/directory/MySQL/check_mysql_health/details

If you're currently implementing your monitoring in general as a bunch of one off scripts you should probably look toward moving to a more centralized tool such as Nagios to manage the checks, threshold and paging policies.

Edit: Nagios and the plugins are free, plus you can write your own plugins to suit specific needs that aren't already addressed by the community.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.