本番環境に適用する前に、データベースブランチで破壊的マイグレーションをテストする
使うタイミング: カラムをドロップまたは数百万行をバックフィルするマイグレーションがあり、実データを含むブランチで事前実行をしたい場合。
前提条件
- Supabase Pro プラン以上 — ブランチングは有料プランでのみ利用可能です
- 個人アクセストークン — supabase.com/dashboard/account/tokens — 組織にスコープを絞ります
フロー
-
本番環境からブランチを作成プロジェクト <ref> のメインブランチからデータベースブランチ 'test-drop-legacy-col' を作成します。準備完了を待ってください。✓ コピーしました→ ブランチが独自の接続文字列で作成されました
-
ブランチ上でマイグレーションを実行新しいブランチに以下のマイグレーションを適用します:<SQL を貼り付け>。影響を受けた行数とエラーを報告してください。✓ コピーしました→ マイグレーション実行完了;行数が表示されました
-
検証して、昇格またはブランチを削除ブランチ上でサニティチェック用の SELECT を実行します(影響を受けたテーブルの上位 10 行、変更されたカラムの NULL カウント)。問題なければ報告してください(昇格させます);問題があればブランチを削除します。✓ コピーしました→ 検証結果、その後明確な承認/非承認
結果: 本番環境に適用する前に、実データ構造に対してマイグレーションが検証されました。
注意点
- ブランチは本番環境と同じデータを持たない — ブランチ作成時のスナップショットです — スナップショットのタイムスタンプを記録してください;マイグレーションが最近の行に敏感な場合、適用予定時刻に近い時点でブランチを作成してください
- ブランチ作成はコンピュート時間をコストします — テスト後は必ずブランチを削除してください;放置されたブランチは課金が増加します