はじめに こんにちは、webエンジニアの@an_sonyです。 最近巨大テーブルをalterする機会があり、そのツールとしてpt-online-schema-changeを初めて利用しました。そこで得た知見をまとめてみます。 pt-online-schema-change(以下pt-osc)とは? 主にMySQL向けに作られた運用ツール群perconaの一つです。 テーブルへのread/writeを許容できる状態に保ったままalter操作を実行することを可能にします。 なぜpt-oscが必要か なにも考えずに通常のalter操作を実行すると、共有ロックを取得するのでinsert/updateができなくなります。alterしようとしているテーブルのレコード数が多い場合、その間書き込みプロセスは待ち状態となり処理が完了しないため、サービスが停止してしまいます。 なお、MySQL5.6からはオン