pt-online-schema-changeをslaveに対して実行した場合に痛い目見たので、その備忘録。
そもそもの話、master側で不要なINDEXをslaveのみ張ってました。
OLTP側ではいらないINDEXだけど、集計とかであると嬉しいINDEXってやつですね。
そして、slaveに張っているINDEXをpt-oscでオンラインで張替えをしようとしたら、
リレーログからの取り込みが、旧テーブルに行ってしまい、
pt-oscで作成される新テーブルに入らなかったいうオチ。。。
その結果、レプリケーションの不整合が起きて、最初から構築するという目にあった。。
このような場合、素直にstop slaveを掛けてからDDLを実行すれば良かったです。。
とはいえ、リレーログからのデータ取り込みの際、pt-oscで実行しているとダメなことがわかったので、
もうちょっとこのあたりについて調べてみようかと思います。
あ、binlog_row_image=FULLだったし、MariaDB10.3だからflashback使えば、
もっと短時間で復旧できたかも、、って書いているときに思いました。。
以上
コメントがあればどうぞ