Don't Miss PGConfSV, Silicon Valley's Newest PostgreSQL Conference

If you haven’t heard about PGConfSV yet, it’s a conference for the Silicon Valley PostgreSQL community and beyond, featuring leading PostgreSQL performance and scalability experts. It’s happening November 17-18 at the South San Francisco Conference Center. I encourage everyone in the area to attend, since this is likely to be the best Postgres conference held thus far in the Silicon Valley.

I also urge you to buy your tickets before they sell out! Of course, the earlier you buy, the more you save, too. (Use SeeMeSpeak for a 20% discount).

Convention Center

I’ll be at the conference along with some of my colleagues. I’m pretty excited about this for a few reasons. Allow me to ‘splain why?

» Continue Reading (about 400 words)

MySQL, SQL, NoSQL, Open Source And Beyond: a Google Tech Talk

I’ve been invited to give a Tech Talk at Google next Thursday, February 13th, from 11:00 to 12:30 Pacific time. Unfortunately the talk won’t be streamed live, nor is it open to the general public, but it will be recorded and hosted on YouTube afterwards. I’ve also been told that a small number of individuals might be allowed to attend from outside Google. If you would like me to try to get a guest pass for you, please tweet that to @xaprb.

» Continue Reading (about 300 words)

The state of MySQL client libraries

Those who’ve been around the MySQL world are probably aware of the much-discussed topics of GPL licensing, dual licensing, and in particular, licensing of the client libraries (also called connectors or drivers) and the FOSS exception to that licensing. This is newly relevant with the announcement of a permissively-licensed MySQL-compatible client library for MariaDB. The difference is that this time there’s been some question about the provenance and history of the source code.

» Continue Reading (about 1000 words)

Lessons learned from the Sublime Text editor

Terminal-based, keystroke-driven editors are enormously powerful, and I still haven’t seen anything more powerful than Vim. I’m a longtime Vim user, and although I’m not the world’s foremost jaw-dropping expert on Vim, I would call myself an advanced power user at the very least, and probably a true expert. Still, I have maintained a relationship with GUI text editors over the years, too. An editor that has an insertion point for a cursor, and “native” mouse interaction, has an appeal I’ve never quite shaken.

» Continue Reading (about 800 words)

How to send input to many terminals

Do you ever find yourself wanting to open several terminal windows and send the same commands to all of them? I’ve had this need many times, and I’ve never found a completely satisfactory solution. I’ve also known a lot of people who’ve written various sets of scripts to help them accomplish such tasks. In no particular order, here are a few ways I’ve done this in the past: Facebook’s pmysql client The dsh tool Several screen windows named remoteXXX, followed by a bash for-loop: while read cmd; do screen -X at remote# stuff "$cmd"; done Using many PuTTY windows and the puttycs tool Opening many tabs in KDE’s Kterm tool and selecting the options to send input to all tabs Here are some I’ve heard about, but never used:

» Continue Reading (about 300 words)

Announcing innotop 1.9.0

I’ve just released innotop version 1.9.0. This version fixes a lot of bugs, makes the tool work better when monitoring dozens of MySQL servers, and adds two new modes: a Health Dashboard and an InnoDB Blockers/Blocked mode.

» Continue Reading (about 100 words)

A new dashboard for innotop

I’m using innotop again every day, for the first time in a few years. I found that I didn’t like the tool that the younger and less experienced version of me created. It is very flexible and has the ability to surface a lot of information about MySQL, but not all on one screen. I wanted a “single pane of glass” health dashboard for the servers I’m monitoring, instead of having to look on various screens for important bits of information.

» Continue Reading (about 300 words)

Making MySQL comfortable for Oracle DBAs

I’m at Hotsos Symposium this week, and it suddenly occurred to me that a lot of Oracle DBAs who are beginning to manage MySQL servers might have some things to share with others in a similar role shift: Familiar, comfortable tools and techniques, or capabilities of the Oracle Database, that you miss in MySQL Equivalents or replacements for the aforementioned Do you have anything to share with your fellow DBAs going through ODT (Oracle Delerium Tremens)?

» Continue Reading (about 200 words)

innotop version 1.8.1 released

The new stable version of innotop is now released. Version 1.8.1 is a bug-fix-only release, with no new features. It’s available for immediate download.

» Continue Reading (about 100 words)

Black-Box Performance Analysis with TCP Traffic

This is a cross-post from the MySQL Performance Blog. I thought it would be interesting to users of PostgreSQL, Redis, Memcached, and $system-of-interest as well. VividCortex is the startup I founded in 2012. It’s the easiest way to monitor what your servers are doing in production. It does TCP network traffic analysis. VividCortex offers MySQL performance monitoring and PostgreSQL performance management among many other features. For about the past year I’ve been formulating a series of tools and practices that can provide deep insight into system performance simply by looking at TCP packet headers, and when they arrive and depart from a system.

» Continue Reading (about 300 words)

Special mysqldump fingerprinting rule in pt-query-digest

The pt-query-digest tool has a number of special cases that affect how it “fingerprints” queries when it groups similar queries together to produce an aggregated report over the group. One of these is a special rule for queries that appear to come from mysqldump, of the following form: SELECT /*!40001 SQL_NO_CACHE */ * FROM `users` All such queries will be fingerprinted together and presented in a single class of queries. I remember many instances where mysqldump queries crowded the report of the “most important” queries and just caused other queries to be excluded.

» Continue Reading (about 200 words)

Want to hack Maatkit and Aspersa? We're hiring

As announced on the Maatkit and Aspersa mailing lists, Daniel and I have created a new toolkit that represents the union of the two, and will be focusing efforts on this Percona Toolkit moving forward. The goal is to make them simpler and significantly more powerful, and to create more tools. The tools will continue to be open-source, but will be developed primarily to meet our MySQL support and consulting staff’s needs.

» Continue Reading (about 200 words)

A clarification on mk-slave-prefetch

It seems to be a popular misconception that mk-slave-prefetch is designed to keep a MySQL replica server “warm” and ready to serve production traffic in case the master is demoted or fails. This is not what mk-slave-prefetch does. It’s related, and easy to confuse, but its purpose is different. The mk-slave-prefetch tool is designed to try to execute a read-only approximation of the write workload that the replica is about to have to perform.

» Continue Reading (about 400 words)

Easy on the eyes: the solarized color theme

I recently set up the solarized color theme for my terminal emulator. I’ve been meaning to do this for a while, but procrastinated. However, I finally got really frustrated with the colors I get from “ls” sometimes – I use a dark terminal with light fonts, and the directory listings in particular can become invisible, with dark blue on black. Solarized is much improved. All of the colors work well together and are easy on the eyes.

» Continue Reading (about 200 words)

I'll be presenting at Postgres Open 2011

I’ve been accepted to present at the brand-new and very exciting Postgres Open 2011 about system scaling, TCP traffic, and mathematical modeling. I’m really looking forward to it – it will be my first PostgreSQL conference in a couple of years! See you there.

» Continue Reading (about 100 words)

Planned change in Maatkit and Aspersa development

I’ve just sent an email to the Maatkit discussion list to announce a planned change to how Maatkit (and Aspersa) are developed. In short, Percona plans to create a Percona Toolkit of MySQL-related utilities, as a fork of Maatkit and Aspersa. I’m very happy about this change, and I welcome your responses to that thread on the discussion list.

» Continue Reading (about 100 words)

How I ended my trial of Gnome 3

tl;dr version: I like XFCE better than Gnome 3. I wrote previously about trying out Gnome 3. I’ve been using it for about a month now, and it’s time for me to make a decision about whether to keep using it or revert to Gnome 2. I’m actually on vacation, which ends soon. I need to do this before vacation ends, so I can be fully productive at work. My ultimate impression of Gnome 3 is that it’s very slick, and makes significant improvements in some ways, but it’s not very usable for my purposes, and has too many self-contradictions.

» Continue Reading (about 600 words)

Impressions of Fedora 15 with Gnome 3

I finally upgraded from Fedora 13 to Fedora 15 on my beloved ASUS-UL30A-X5. It includes the new Gnome 3, with the “Gnome Shell” interface. It’s quite different from anything else I’ve used, and you can read lots of positive and negative impressions around the web. Fedora 15 and Gnome 3 have awesome support for my laptop’s hardware. It’s simply flawless. You could not expect better software/hardware integration if you paid thousands of dollars for something from Steve Jobs.

» Continue Reading (about 1700 words)

Using the Nook Color as a full-featured Android tablet

I bought a Barnes and Noble Nook Color e-book reader and ripped out the Nook software, replacing it with the CyanogenMod distribution of the Android OS. It’s really, really nice hardware, and CyanogenMod (CM) is really, really nice software. I love them both, and my regular readers will remember that I’m not a gadget guy. Read on for more. I never thought I’d get a tablet, until my phone died and I got a Droid 2 as a replacement.

» Continue Reading (about 800 words)

Congrats to New Relic

New Relic just announced the release of new features that track client-side (front-end) performance, including network time, DOM processing time, and total render time in the browser. This is really great functionality. If you aren’t using New Relic, you really ought to. It is a web interface to application profiling. It helps you be scientific about performance analysis without knowing it, because the functionality and the user interface make the right thing so obvious you won’t even realize you’re being methodical and focusing on what matters.

» Continue Reading (about 200 words)