私たちは運用データベースを用意しており、定期的にステージングデータベースにスナップショットを作成したいと考えています。フォークを使用してアプリケーション間でherokuデータベースを移行できますか?
私はpgbackupsを使ってこれを行う方法を知っています。新しいHerokuPostgres fork関数を使ってどのようにしたらよいか知っていましたか?
私たちは運用データベースを用意しており、定期的にステージングデータベースにスナップショットを作成したいと考えています。フォークを使用してアプリケーション間でherokuデータベースを移行できますか?
私はpgbackupsを使ってこれを行う方法を知っています。新しいHerokuPostgres fork関数を使ってどのようにしたらよいか知っていましたか?
はい、あるアプリケーションDBから別のアプリケーションDBへ直接フォークを作成できます。これはあなたの主要なアプリケーションからDATABASE_URLの値を取得し、その後、以下のコマンドでそれを使用するためには:
クレイグの答えに追加heroku addons:add heroku-postgresql:ronin --fork postgres://username:[email protected]/database --app yourstagingapp
を、ここでは全体の仕事をしていませんa script by freeformzです。
app=${1}
db_type=${2:-ronin}
old_db=`heroku config -a ${app}-staging | grep ^HEROKU_POSTGRESQL | cut -d : -f 1 | sed s/_URL//`
heroku addons:add heroku-postgresql:${db_type} --fork `heroku config -a ${app} | grep ^DATABASE_URL | cut -d : -f 2-5` -a ${app}-staging
new_db=`heroku config -a ${app}-staging | grep ^HEROKU_POSTGRESQL | grep -v ${old_db} | cut -d : -f 1 | sed s/_URL//`
heroku pg:wait -a ${app}-staging
heroku pg:promote ${new_db} -a ${app}-staging
#Remove the old db
if [ ! -z "${old_db}" ]l; then
heroku addons:remove ${old_db} -a ${app}-staging --confirm ${app}-staging
fi
パーフェクト、感謝 – Alex
はpostgresを取得するには:// URL、$ Herokuの設定を実行し、DATABASE_URLライン(またはHEROKU_POSTGRESQL_color_URLを)つかみます –