LoginSignup
2

More than 3 years have passed since last update.

herokuCLIのセットアップからPostgreのグレードアップまでのコマンド履歴(MacOS)

Last updated at Posted at 2020-03-11

経緯

Djangoプロジェクトのデプロイにherokuを活用しています。
さいきんMacを買い換えたので、heroku CLIが入っていない状態から、Postgreのインスタンス(herokuだとAddOnですかね)をグレードアップした時の履歴と簡単解説メモです。

hobby-dev 無料 レコード数:1万(ここから)
hobby-basic 9ドル/月 レコード数:1000万(こちらへアップグレード)

環境

MacOS Mojave

手順

手順1:heroku CLI導入

$brew install heroku/brew/heroku
$heroku login

手順2:herokuのプロジェクトを確認

$heroku list
=== ****@gmail.com Apps
****1
****2
****3
****4

これでアプリ名がわかりました。

手順3:

手順2で調べた対応するアプリ名を"<アプリ名>"に置き換えてください。

アプリ名は、"****1"とかのことです。

//アプリの状況チェック
$heroku pg:info -a <アプリ名>

//新規データベースインスタンス生成
$heroku addons:create heroku-postgresql:hobby-basic -a <アプリ名>

↑で出てくる環境変数名"HEROKU_POSTGRESQL_******_URL"はすぐあとで使います。

//DBが壊れないように?一時稼働停止
$heroku pg:wait -a <アプリ名>

//プロジェクトのメンテナンスモードをONにする
$heroku maintenance:on -a <アプリ名>

次がちょっとだけ注意です。既存データベースの情報を新データベースにコピペするコマンドです。

//既存データベースの情報を新データベースにコピペ
$heroku pg:copy DATABASE_URL as HEROKU_POSTGRESQL_******_URL -a <アプリ名>

↑の環境変数名の"******"の部分が見た記事と違っていたので、そのままコピペをするとダメですので、環境変数名チェックをしてコピペをカスタムするのが必要です。

//新規DBにDjangoプロジェクトを接続。
$heroku pg:promote HEROKU_POSTGRESQL_******_URL -a <アプリ名>

//接続確認
$heroku pg:info -a <アプリ名>

//メンテナンスモード解除
$heroku maintenance:off -a <アプリ名>

参考になった記事

Heroku CLIの導入と初期設定
https://blog.katsubemakito.net/macos/setup_heroku-cli

Heroku操作 CLI
https://qiita.com/ntkgcj/items/9e812220881d671b6bff

herokuのpostgresqlをアップグレードする
https://qiita.com/ozepon/items/6cc30737e96f01b4da67

Heroku の PostgresQL を無料の hobby-dev から 9ドル/月の hobby-basic にアップグレードする【LGTMoon】
https://www.utakata.work/entry/20190226/1551145958

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2