MySQL, High Availability and other goodies…

Whoops! First faux pas in releasing software

Thanks to the few people who pointed out a copyright infringement with the name 'MySQL Gadgets' for my tool. It has now been renamed 'MyQ Gadgets'. This is actually more appropriate (but hopefully not a violation of some other copyright), since I use the 'myq' prefix on my MySQL scripts as an easy, unique prefix for command line tab completion in bash.

Trackback URL for this post:

http://mysqlguy.net/trackback/5
Read more →

Introducing MyQ Gadgets

Today I am introducing my first open source contribution to MySQL: MyQ Gadgets. These are a small collection of tools I wrote to make it easier to see what is going on inside of a running MySQL server. There's nothing magical about them, they simply collect values from SHOW STATUS, SHOW SLAVE STATUS, and SHOW INNODB STATUS and present them in an easier-to-digest format similar to that of iostat (for those who are familiar with it). Here's an example of some data from SHOW INNODB STATUS:

Read more →

Faster way to find the next valid position in a relay log?

I'm working on an implementation of a mysql slave precache tool as described by Paul Tuckfield at last year's User conference.

I can easily tell where the SQL Thread is currently is reading from in the local relay log, but it's a harder problem to solve when I want to scan ahead in that log some number of binlog entries and find a valid position. I can simply add to the position some number of bytes, but then I have to stop and loop through calls to 'mysqlbinlog' until I get a position that doesn't throw an error.

Read more →

Starting again...

It's not that I've really posted that much at http://mysqlguy.blogspot.com, but I wanted someplace that was a little more permanent going forward. The reason should become clear hopefully later this month, but let's just say I've been working out some details to allow me to contribute directly to the MySQL community in some tangible ways. In any case, stay tuned here.

Read more →