2012-06-08 2 views

답변

7

예. 한 응용 프로그램 DB에서 다른 응용 프로그램 DB로 직접 포크를 만들 수 있습니다. 하려면이 다음 기본 응용 프로그램에서 DATABASE_URL의 값을 얻을 아래 명령에서 사용 : 크레이그의 대답에 추가

heroku addons:add heroku-postgresql:ronin --fork postgres://username:[email protected]/database --app yourstagingapp 
+0

, 감사 – Alex

+0

은 포스트 그레스를 얻으려면 –

3

을, 여기에 모든 작업을 수행 a script by freeformz을합니다. // URL 실행 $의 Heroku가의 설정과 DATABASE_URL 라인을 잡아 (또는 HEROKU_POSTGRESQL_color_URL) :

완벽한
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 
관련 문제