消した表のデータを戻す(基本)
EBSの開発現場で開発者1人につき1環境があるところを見たことがありません。必然的に他の開発者とテストデータを共有することになるので他人のを消さない/消されないとも限らない。そんなときの対処法を考えてみました。
- データが行単位で消えた
→フラッシュバック テーブル *1できればいいと思います。ただしtruncateしたらダメなんですよね確か。 - テーブルが消えた
→フラッシュバック ドロップ *2できればいいと思います。
かつ、上記の対策が取れるのはアドオン表のみで、EBS標準表を消したら全体バックアップから戻すしかないような気もするし単体・結合テスト程度なら別に一部だけ不整合起きてても別にねえ?って気もします。
・・・フラッシュバックテーブルとかフラッシュバックドロップとかはDBの機能だしドヤ顔で語ることでもないし、リンク先の対処法はあんまり開発現場にそぐわないですね。書いててびっくり。