php artisan migrate
本番環境でエラー出た
2020/10/30
@y.katsumi
本番環境でphp artisan migrateを
やったことがありますか?
本番環境だけど本当に実行する?
みたいな感じで聞いてきます。
本番環境だけど本当に実行する?
みたいな感じで聞いてきます。
私はこの段階で既にドキドキしてます
で実行したら
ってなったらどうします?
migrateでエラー出たら何します?
1. あわてずphp artisan migrate:rollbackを実行
2. 良くわからんので対象のファイルを削除
3. 根性でテーブルを手動で更新
4. その回のリリースを諦める
その他あれば受け付けます
この前本番で発生した時は
migrateでエラー出たら何します?
1. あわてずphp artisan migrate:rollbackを実行
2. 良くわからんので対象のファイルを削除
3. 根性でテーブルを手動で更新
4. その回のリリースを諦める
これで乗り切りました。
何が正解かは置いといて
migrateでエラー出たら何します?
1. あわてずphp artisan migrate:rollbackを実行
2. 良くわからんので対象のファイルを削除
3. 根性でテーブルを手動で更新
4. その回のリリースを諦める
リスク高いので本番ではやらない方が吉(だと思ってます)
ちなみになぜmigrateでエラーが出たのか
1. A機能をリリースしました。
- A機能にはmigrateファイルがありリリース時に実行されました。
発生手順
発生手順
1. A機能をリリースしました。
- A機能にはmigrateファイルがありリリース時に実行されました。
2. リリース後にA機能に不具合が見つかり、A機能の対象コミットをrevertしました。
- migrateファイルに自体には問題ありませんでした。
発生手順
1. A機能をリリースしました。
- A機能にはmigrateファイルがありリリース時に実行されました。
2. リリース後にA機能に不具合が見つかり、A機能の対象コミットをrevertしました。
- migrateファイルに自体には問題ありませんでした。
3. 後日不具合を修正したものを再度リリースしました。
- 1.と2. のmigrateファイルの内容には差分がありませんでした。
-- なのでmigrateは実行しませんでした。
1. A機能をリリースしました。
- A機能にはmigrateファイルがありリリース時に実行されました。
2. リリース後にA機能に不具合が見つかり、A機能の対象コミットをrevertしました。
- migrateファイルに自体には問題ありませんでした。
3. 後日不具合を修正したものを再度リリースしました。
- 1.と2. のmigrateファイルの内容には差分がありませんでした。
-- なのでmigrateは実行しませんでした。
後日、別のリリースでmigrateをやった時にエラーが発生!
発生手順
ちなみになぜmigrateでエラーが出たのか
同じ内容のmigrateファイルが別名で存在した。
実際のプルリクのURLがありました
ちなみになぜmigrateでエラーが出たのか
● php artisan make:migration create_users_table
実行した日付+時刻のmigrateに関わるファイルが作成される。
なので同じコマンドで実行したとしても必ず別のファイル名になります。
revertした時など、
migrateファイルの取り扱いは十分注意しましょう。
おわり

Php artisan migrate