heroku의 프로덕션 환경의 PostgreSQL은 GUI로 관리하자

3281 단어 GUI경 6PostgreSQL

개발 환경에서는 움직이지만 프로덕션 환경에서는 움직이지 않습니다.



그런 것, 초보자 엔지니어에게는 경험이 있을 것.
그리고 얻어 프로덕션의 데이터베이스가 나빠지고 있는 경우도 많다.
거기를 GUI로 간단하게 관리하자는 이야기.

다음은 나의 에러 대응의 재고가 됩니다.

1. 프로덕션 환경에서 스레드 목록을 보려고하면 오류



포트폴리오 작성해 도중 단계에서의 일.
왠지 프로덕션 환경에서 스레드 목록 화면을 표시할 수 없다.
heroku logs —tail 하고 로그 낚시해 보면

2018-12-22T10:33:58.330119+00:00 app[web.1]: F, [2018-12-22T10:33:58.330053 #4] FATAL -- : [e366020e-2b0e-4f48
2018-12-22T10:33:58.330182+00:00 app[web.1]: F, [2018-12-22T10:33:58.330119 #4] FATAL -- : [e366020e-2b0e-4f48
ActionView::Template::Error (undefined method `downcase' for nil:NilClass):

과연, 다음 gravater_for의 도우미 메소드에서
nil의 이메일에 대해 downcase하려고 화가 나서,,,
하지만 validate하고 있기 때문에 nil은 들어 가지 않을 것인데.
module UsersHelper
  def gravatar_for(user)
    gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
    gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}"
    image_tag(gravatar_url, alt: user.name, class: "gravatar")
  end
end

2. Postico를 넣어 프로덕션 데이터베이스를 살펴보기



프로덕션 데이터를 조사해야 할 필요가 있었기 때문에 과감하게
게시대로 PostgreSQL GUI 툴 도입에
순서는 이하의 기사 참고.
PostgreSQL 데이터를 GUI로 만지기(macOS/Postico)
Heroku Postgres에서 사용하는 GUI 클라이언트.

그래서 프로덕션 사용자 테이블을 보러 가면



과연 개발 도중에 시도한 user 데이터가 메일 정보가 없어서
거기를 참조하여 nil이라고 화가 났는가.
원인 규명 완료.

3. 프로덕션 데이터베이스 재설정


# herokuのデータベースリセットは -aでherokuでのアプリ名を指定しないといけないから注意
$ heroku pg:reset DATABASE_URL -a YOUR_APP_NAME
$ heroku run rails db:migrate
$ heroku run rails db:seed

heroku의 데이터베이스 URL이나 설정을보고 싶다면 터미널에서
$ heroku config -a YOUR_APP_NAME

실행하거나 heroku에 로그인하고 setting을 보러 가는 것을 알 수 있습니다.
이것으로 프로덕션에서도 스레드 일람 화면에 갈 수 있게 되었다고.

좋은 웹페이지 즐겨찾기