HerokuのPostgreSQLのアップグレード手順 #heroku #dev #postgresql version 2
      
          :追加された部分
      
      
          :削除された部分
      
      
    (差分が大きい場合、文字単位では表示しません)
    HerokuのPostgreSQLのアップグレード手順 #heroku #dev #postgresqlPostgreSQLのバージョンを上げるときとか、プランを変更する場合に。
## 公式のガイド
- [Upgrading Heroku Postgres Databases | Heroku Dev Center](https://devcenter.heroku.com/articles/upgrading-heroku-postgres-databases)
- [Heroku PGBackups | Heroku Dev Center](https://devcenter.heroku.com/articles/heroku-postgres-backups)
## 手順
1. 新規DB作成 `heroku addons:create heroku-postgresql:hobby-basic -a sushi`
  - Standard以上のプランなら `heroku pg:wait -a sushi`
1. メンテナンスモードON `heroku maintenance:on -a sushi`
1. データコピー `heroku pg:copy DATABASE_URL {NEW_DB_NAME} -a sushi`
1. 新規DBを昇格 `heroku pg:promote {NEW_DB_NAME} -a sushi`
1. メンテナンスモードOFF `heroku maintenance:off -a sushi`
1. バックアップ設定確認 `heroku pg:backups schedules -a sushi`
  - DATABASE_URLがバックアップ対象であることを確認する
1. 旧DBを破棄 `heroku addons:destroy {OLD_DB_NAME} -a sushi`
1. バックアップが正常に取れたのを確認 `heroku pg:backups -a sushi`
1. 新規DB作成 `heroku addons:create heroku-postgresql:hobby-basic -a sushi` (Standard以上のプランなら `heroku pg:wait -a sushi`)
2. メンテナンスモードON `heroku maintenance:on -a sushi`
3. データコピー `heroku pg:copy DATABASE_URL {NEW_DB_NAME} -a sushi`
4. 新規DBを昇格 `heroku pg:promote {NEW_DB_NAME} -a sushi`
5. メンテナンスモードOFF `heroku maintenance:off -a sushi`
6. 動作確認いろいろ
7. バックアップ設定確認 `heroku pg:backups schedules -a sushi` (DATABASE_URLがバックアップ対象であることを確認する)
8. 旧DBを破棄 `heroku addons:destroy {OLD_DB_NAME} -a sushi`
9. バックアップが正常に取れたのを確認 `heroku pg:backups -a sushi`
## 注意事項
- `sushi` はアプリケーションの名前
- `hobby-basic` の部分は新しく使うHeroku Postgresのプランによって変更すること
- 随時 `heroku pg:info -a sushi` でDBの状態を確認しつつ進むこと      PostgreSQLのバージョンを上げるときとか、プランを変更する場合に。
公式のガイド
手順
- 新規DB作成 heroku addons:create heroku-postgresql:hobby-basic -a sushi(Standard以上のプランならheroku pg:wait -a sushi)
- メンテナンスモードON heroku maintenance:on -a sushi
- データコピー heroku pg:copy DATABASE_URL {NEW_DB_NAME} -a sushi
- 新規DBを昇格 heroku pg:promote {NEW_DB_NAME} -a sushi
- メンテナンスモードOFF heroku maintenance:off -a sushi
- 動作確認いろいろ
- バックアップ設定確認 heroku pg:backups schedules -a sushi(DATABASE_URLがバックアップ対象であることを確認する)
- 旧DBを破棄 heroku addons:destroy {OLD_DB_NAME} -a sushi
- バックアップが正常に取れたのを確認 heroku pg:backups -a sushi
注意事項
- sushiはアプリケーションの名前
- hobby-basicの部分は新しく使うHeroku Postgresのプランによって変更すること
- 随時 heroku pg:info -a sushiでDBの状態を確認しつつ進むこと
