Skip to content

# Monitor your MySQL servers as done before, for free!

MySQL December 18, 2011

With genuine respect to other products, the people making those products and the efforts involved, I would like to make an issue:

Some things have been done before, done pretty well (if I may say so), and for free.

mycheckpoint is a free monitoring tool for MySQL. It uses an unorthodox approach of monitoring your MySQL servers by storing the monitored data in SQL format (actually, within a MySQL server). This allows you to either use the fancy JavaScript charting (by running mycheckpoint as HTTP server), or Do-It-Yourself diagnostics.

It allows for a great many more things, among which are custom queries and charts: you may add your own queries, to be included in the monitoring scheme. Query your AUTO_INCREMENT values to detect growth rate, query your INFORMATION_SCHEMA tables (if you dare) to learn about your data dimensions, query for query response time to detect performance issues with your website/database, or query your data itself (e.g. sales per day) to get insight about your product. Here are sample charts to illustrate.

Adding a custom query is as easy as producing an INSERT command. And of course you can set up alert conditions. You can set them up on your normal monitored data (e.g. seconds behind master) or on your custom monitored data (e.g. time it takes to execute cart-items query is too long, rate of purchases is below some threshold etc.). It works the same since all monitored data, standard & custom, is stored in SQL format: rows, columns, a table.

This also means you can retroactively check for different thresholds; you can query your data anyway you like! mycheckpoint provides you with a good visualization tool, but, like a good command like client, leaves the data intact for you to analyze the way you like it.

Of course you can get emailed once an alert pops up. But wait, not so fast: you can ask the alert to pop up only if the threshold is trespassed for a given amount of time. For example, it may be OK for OS load average to increase for a few moments, but you may wish to be alerted if this happens for over 30 minutes continuously.

The thing is, you get all these in an uncompressed 222K single python script (43K compressed), and there’s no trial period. mycheckpoint is completely free to download and use under the BSD license. It is listed in 10 essential MySQL tools for admin, and is well documented.

I’m not suggesting the scope of mycheckpoint levels with that of other products. It is lightweight; it does not have the full featured web interface as others do; there’s work to be done. It only provides basic OS monitoring, and there are missing parts, like replication topology monitoring. But it is feature rich. As the author of mycheckpoint I take notice of using it on production for my own servers. It gets the job done.

It uses some ideas based on existing tools, and a few original ones. Before you say “like never before”, take a look at mycheckpoint.

- Twitter
- LinkedIn
- WhatsApp
- Email
- Facebook
- Print

###
7
Leave a Reply

7 Comment threads
0 Thread replies
0 Followers
Most reacted comment
Hottest comment thread
3 Comment authors
Recent comment authors

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Subscribe
Notify of
Guest
Peter Laursen

Thanks for linking to MONyog. The main difference between concepts (not discussing features) are, I think 1) MONyog does not at all touch the server(s) monitored. Nothing stored here. Also nothing executable to run on the servers monitored. MONyog is ‘agentless’. I don’t know if you can monitor 200 MySQL servers and have only one mycheckpoint instance to maintain? Can you (more or less easily) have a unified view of multiple MySQL servers in one page? 2) MONyog has built in its own HTTP daemon, its own database and its own script-intepreter (javascript) and does not depend on availability of… Read more »

Author
shlomi

Hi Peter, 1) mycheckpoint does not have to touch the servers it monitors. It need to write the data somewhere, and that can be a small MySQL server dedicated for storing monitored results. I *can* use the same servers being monitored. mycheckpoint can run on the same machine as monitored MySQL server, or from a remote machine. The advantage of running it on same machine as server is then the ability to monitor OS data (disk IO, disk usage, load average, etc., all very basic). Or you can monitor remotely and skip OS monitoring. It’s definitely possible to have one… Read more »

Author
shlomi

PS
for companies who find it hard to afford a full commercial license for MySQL (which makes for a fully-featured Enterprise Monitor) I sometimes suggest they should try out MONyog.

Guest
Peter Laursen

OK .. thanks for taking the time to reply so detailed. I think I should reply back to 2 points:

1)
“Why do you say python is non-cross platform though?”. I was referring Windows where Python is not ‘native’. It may be installed of course. But most Windows users are unfamiliar with handling such Unix-style environments.

2)
MONyog has been available to the public for 4+ years now.

Author
shlomi

1) Agreed. Strictly speaking, mycheckpoint is geared towards Linux. I have it working on BSD machines, as well, but have no current intention of testing it on Windows. I have actually never tried.

2) Yes. I have first encountered it slightly more than 3 years ago on a customer’s site, and it made a good impression.

Guest
Jonathan Levin

I have to say that I do like this tool. I especially like the ‘custom queries’ features. I have had a lot of requests for custom queries such as – can you tell me how many orders we sold yesterday, because if its under a certain amount there may be a problem with the thing-a-mi-jig in the warehouse again. You can technically set that up in nagios, however. As for the comment above, I do not feel that the mycheckpoint’s current measurements inflicts too much load on the server for me to worry about. There may be a case that… Read more »

Author
shlomi

@Jonathan,
“You can technically set that up in nagios, however.”
And in Cacti, as well!
I’m here to stand up for mycheckpoint, of course 🙂

wpDiscuz
Send to Email Address Your Name Your Email Address Cancel
Post was not sent - check your email addresses!
Email check failed, please try again
Sorry, your blog cannot share posts by email.