Version 0.1.152 of innotop is a small maintenance and bug-fix release. I found some more ways to make it deal with garbage input without crashing. Of course, that means it's harder to find errors because it doesn't complain and let me know they exist, but that's what you are for :-)
What was a 5-minute script has become a bigger project. I've made more improvements to the duplicate index checker. Soon it will require product activation and have security vulnerabilities every week. Seriously: this is the third iteration, and three strikes and you automate, so I automated. I have a test suite now (your contributions welcome), and I addressed two shortcomings readers pointed out in comments on the original article. You now get better foreign key checking, and FULLTEXT indexes are ignored.
I've just improved the MySQL duplicate index checker I whipped together a few days ago. As I guessed, my hasty coding left some things to be desired. I've fixed some bugs, added support for finding duplicate foreign keys, and switched to a command-line parsing library that comes standard with Perl, so it's more convenient to run without needing to fetch modules from CPAN.
Glom is an interesting graphical database front-end I've been meaning to try out for some time. Someone asked about graphical database front-ends on the #mysql IRC channel recently, and that prompted me to install Glom and learn how to use it. My overall impressions? It lands squarely in the middle of its target audience's needs, but still has a quirk here and there. With a bit of polish it will be a fine product, and it's already a winner over Microsoft Access and Filemaker, two similar programs with which you might be familiar. In this article I'll walk through installing and configuring Glom, a simple database design, a quick peek under the hood, an archaeologist's experiences using it, and give my opinions about Glom in detail.
Peter Zaitsev over at the excellent MySQL Performance Blog recently wrote an article on duplicated and redundant indexes -- any indexes which cover exactly the same columns as another index, or cover a leftmost prefix of another index. While there are subtleties, such as FULLTEXT indexes not being the same as non-FULLTEXT, for the most part this is sufficient criteria to raise possible duplicates to a DBA's attention. I opened my big mouth in the comments and said I could write a quick Perl script to discover possible offenders in just a few lines of code. Once I did that, I had to do it and give you the script. Here it is.
Vim 7.0 introduces tabs to Vim. I wasn’t aware of this until BigE pointed it out to me, and to this tip; that lets you move around the tabs with firefox style short-cuts for tab navigation. That’s a great tip, but what about us OS X users who prefer using the “apple/command” key? I decided to use Safari style tab navigation for vim, as some of the would have caused problems with default keybindings. You can see the details here.. For people wondering how to get Vim 7.0 for their Macs, MacVim.org is your best bet.
[Read more]
This is one in a series of articles on how to use innotop, a MySQL and InnoDB monitor. In this
article I'll explain how innotop can make it much easier to
collect useful information from SHOW STATUS
and
SHOW VARIABLES
into one place. There are three modes
in innotop that do this in different ways, so one of them may
meet your needs.
I've released another version of the innotop MySQL and InnoDB monitor. As always, you can download innotop from the original article.
It's worth upgrading to this version not only because of the new features, but also because it should handle more special cases without crashing. Of course, if it does crash, I appreciate your help fixing it; see this article about what information I need.
Why would you ever want to deliberately cause a deadlock?
Sometimes a very large deadlock in MySQL will fill the output of
SHOW ENGINE INNODB STATUS
until it truncates, so you
can't see information about transactions, log and I/O, buffers,
and so forth. I know only two solutions to this problem: 1)
restart MySQL and 2) cause a small deadlock so the LAST
DETECTED DEADLOCK
section shrinks to an acceptable size.
In this article I'll show you how to cause a small deadlock, and
how to use innotop to do it more easily.
This article is part of a series on how to use innotop to make your life easier.
Snapshot of the vmware config used (two running instances
required for the example) This is a quick tour of DRBD and how it
compares to local RAID and to MySQL replication. DRBD is short
for "distributed raw block device", so what it does is
essentially RAID-1 over a network cable. You will be able to have
two copies of a block device on two different physical machines,
one of them the primary, active node and the other one a
secondary, passive node.
The DRBD tour in this blog post has been created on two vmware
instances with a Suse 10.0 Professional installation on each
which I am using to show the most essential features of DRBD.
Each vmware has a bit of memory, a network card, a boot disk with
a text only Suse 10 installation and a second simulated 1 GB SCSI
disk besides the boot disk to demonstrate stuff. The two
instances are connected on a simulated local vmnet instance and
share the 10.99.99.x/24 network, they are called …