답변:
다음을 사용중인 경우 데이터베이스를 삭제하려면 다음을 수행하십시오 SHARED_DATABASE_URL
.
$ heroku pg:reset DATABASE_URL
이제 데이터베이스를 아무 것도 없이 다시 만들 려면
$ heroku run rake db:migrate
시드 데이터로 데이터베이스 를 채우 려면 :
$ heroku run rake db:seed
---또는---
다음 을 실행 하여 마지막 두 가지 ( migrate & seed )를 하나의 조치로 결합 할 수 있습니다 .
$ heroku run rake db:setup
2014-04-18 편집 : rake db:setup
Rails 4에서는 작동하지 않으며 a에서는 실패합니다 Couldn't create database error
.
2014-10-09 편집 : rake db:setup
Rails 4와 함께 사용할 수 있습니다 Couldn't create database
. 데이터베이스가 heroku pg:reset
명령을 사용하여 이미 생성 되었기 때문에 오류가 발생 합니다. 그러나 오류 메시지 다음에 데이터베이스 스키마와 시드를로드합니다.
거의 모든 레이크 명령 으로이 작업을 수행 할 수 있지만 예외가 있습니다. 예를 들어 db:reset
를 통해 작동하지 않습니다 heroku run rake
. pg:reset
대신 사용해야 합니다.
자세한 내용은 Heroku의 설명서를 참조하십시오.
SHARED_DATABASE_URL is deprecated, please use SHARED_DATABASE
heroku pg:reset DATABASE
heroku pg:reset DATABASE --confirm appname
Heroku는 --db
이제 옵션 을 더 이상 사용하지 않으므로 이제 다음을 사용하십시오.
heroku pg:reset DATABASE_URL --confirm {the name of your app}
그것은 조금 당신이 문자 텍스트를 사용하기 때문에 혼란 SHARED_DATABASE
하지만 내가 쓴 어디 {the name of your app}
대신 귀하의 응용 프로그램의 이름입니다. 예를 들어 앱 이름이 my_great_app 인 경우 다음을 사용합니다.
heroku pg:reset DATABASE_URL --confirm my_great_app
SHARED_DATABASE
데이터베이스를 삭제하려면 다음을 수행하십시오.
$ heroku pg:reset SHARED_DATABASE --confirm NAME_OF_THE_APP
데이터베이스를 다시 작성하려면 다음을 수행하십시오.
$ heroku run rake db:migrate
데이터베이스를 시드하려면
$ heroku run rake db:seed
**마지막 단계
$ heroku restart
heroku run rake db:migrate
더 이상 데이터베이스를 재생성하지 않음
현재, 즉 이를 수행하는 2017 방법은 다음과 같습니다.
heroku pg:reset DATABASE
https://devcenter.heroku.com/articles/heroku-postgresql#pg-reset
heroku run rake db:migrate db:seed
이제 명령은
heroku pg:reset DATABASE_URL --confirm your_app_name
이 방법으로 재설정하려는 앱의 db를 지정할 수 있습니다. 그럼 당신은 실행할 수 있습니다
heroku run rake db:migrate
heroku run rake db:seed
또는 위의 두 명령 모두에 직접
heroku run rake db:setup
이제 앱을 다시 시작하는 마지막 단계
heroku restart
나는 Heroku 지원에 연락하여 최신 보석의 버그임을 확인했습니다 (Heroku-2.26.2를 사용하고 있습니다)
찰리-우리는 'heroku'gem과 관련된이 문제를 알고 있으며이를 해결하기 위해 노력하고 있습니다.
다음을 따라야 할 경우 문제가 있습니다-https: //github.com/heroku/heroku/issues/356
이전 버전의 'heroku'gem으로 다운 그레이드하면 도움이됩니다. 나는 오늘 대부분의 문제없이 v2.25.0을 사용하고 있습니다.
다음 명령으로 다운 그레이드하십시오.
gem uninstall heroku
gem install heroku --version 2.25.0
이미 여러 개의 gem이 설치되어 있으면 다음과 같은 메시지가 표시 될 수 있습니다.
Select gem to uninstall: 1. heroku-2.25.0 2. heroku-2.26.2 3. All versions
# 2를 제거하고 명령을 다시 실행하십시오. 즐거움!
완전한 답은 (여러 DB와 사용자를위한)입니다 :
heroku pg : info- 출력
=== HEROKU_POSTGRESQL_RED <- 사용 가능한 DB
계획 기본
상태입니다
heroku pg : 재설정 HEROKU_POSTGRESQL_RED --app_name 확인
자세한 내용은 https://devcenter.heroku.com/articles/heroku-postgresql을 참조하십시오.
이제 웹 인터페이스를 통해 데이터베이스를 재설정 할 수도 있습니다.
dashboard.heroku.com으로 이동 하여 앱을 선택한 다음 추가 기능 범주에서 데이터베이스를 찾아서 클릭하면 데이터베이스를 재설정 할 수 있습니다.
heroku 버전을 확인하십시오. 방금 다음과 같이 내 것을 2.29.0으로 업데이트했습니다.
heroku --version
#=> heroku-gem/2.29.0 (x86_64-linux) ruby/1.9.3
이제 다음을 실행할 수 있습니다.
heroku pg:reset DATABASE --confirm YOUR_APP_NAME
그런 다음 데이터베이스를 작성하고 단일 명령으로 시드하십시오.
heroku run rake db:setup
이제 앱을 다시 시작하고 시도하십시오.
heroku restart
heroku open
Heroku 웹 사이트를 선호하는 경우 :
PostgreSQL 데이터베이스를 재설정하고 다시 설정한다고 가정하면 다음을 사용하십시오.
heroku apps
Heroku에 응용 프로그램을 나열합니다. 현재 응용 프로그램의 이름을 찾으십시오 ( application_name
). 그런 다음 실행
heroku config | grep POSTGRESQL
데이터베이스의 이름을 얻습니다. 예를 들면
HEROKU_POSTGRESQL_WHITE_URL
마지막으로 주어진 application_name
및 database_url
을 실행해야합니다.
heroku pg:reset `database_url` --confirm `application_name`
heroku run rake db:migrate
heroku restart