地方エンジニアの学習日記

興味ある技術の雑なメモだったりを書いてくブログ。たまに日記とガジェット紹介。

pt-osc入門

github.com

Percona社が公開しているRDBMSの運用のためのツールキットであるPercona Toolkitに含まれるツールのひとつ。Perlで書かれていて1万行くらいの大きめるCLIツール。処理の流れとかは以下の記事を参考に読んでみた。

developers.freee.co.jp

  • スキーマ変更対象のテーブルと同じスキーマのテーブルを作成
  • 新しいテーブルに対してALTER TABLEを実施
  • 既存テーブルと新しいテーブル間でレコードを同期するためのトリガーを作成
  • 元のテーブルのレコードを新しいテーブルにコピーする
  • 元のテーブルと新しいテーブルをスワップする
  • ALTER TABLE実施前のテーブルを削除する

細かい挙動を変えるオプションは公式かUsageを見ると良さそう

www.percona.com