• Enabling Innodb Compression

    Disk space issues are common, and they’re often difficult to solve quickly. One way to recover some space is by enabling InnoDB compression. First, of course, you want to make sure you’ve covered alternative solutions. Can you archive data? Do partitioning/sharding? These generally involve application changes and can take longer. You may need to first do conversion to InnoDB. While compression is available for MyISAM via myisampack, and this can be useful for some use cases (for example, if you are rotating out tables on a monthly basis), it makes the tables read-only, so generally you will want to first convert MyISAM tables to InnoDB.
  • gh-ost Online Schema Change

    The pt-online-schema-change tool has been a workhorse for years, allowing MySQL DBAs to alter tables with minimal impact to application workload, and before MySQL had native online alter capabilities. Although consistently grateful for the tool’s existence, I never liked the messiness of having to use and clean up triggers, and most DBAs have a horror story or two to tell about using online alters. When Github’s online schema transmogrifer, or gh-ost was released, then, I jumped on the chance to test it out.
  • Flea Market Game

    You are going to the flea market to find a coffee table and a few succulents for the front stoop. You also want to have lunch there. The flea market only takes cash; you brought $100.

  • MySQL Memory Calculator

    I really like the MySQL Memory Calculator, mostly because the person at the top of the page just seems so darn happy. But I’m also tired of filling out the form, so I created a little program in Go (also my first Go program) to do the memory calculations for me. I named this vgMemory and put it in my visegrip box.