rails의 db에 작성된 내용을 저장? 유지하는 방법

조회수 1318회

rails를 사용해서 웹서비스를 구성하였는데

db의 칼럼을 수정할 부분이 생겨 기존의 유저 데이터나 유저들이 사용한 데이터(글 작성 및 댓글 등)를

유지하면서 db를 업데이트 하는 방법이 있을까요?

평소 db파일의 칼럼을 수정하게 되면, rake db:drop db:migrate를 해 수정하였는데

기존의 db의 내용을 유지하면서 업데이트 할 수 있는 방법이 궁금합니다.

혹은 해당 내용을 유지하면서 다른 웹서비스에 동일한 내용을 넣을 수 있게 db의 내용을 추출하여

추출한 내용을 통해 db:seed로 동일하게 구성할 수 있는 지도 궁금합니다.

  1. db의 내용을 유지하면서 db의 칼럼을 추가한 후 업데이트 하는 방법
  2. 기존의 db를 추출하여 리뉴얼한 서비스에 동일한 데이터를 넣는 방법

감사합니다.

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    DB 의 컬럼을 수정하고 나서는 그냥 마이그레이션 명령만 하는 것이 보통입니다. drop 은 실제서비스에서는 전혀 사용되지 않습니다.(사용하면 안됩니다.) 개발버전에서는 seed 파일을 미리 잘 만들어놓고

    rake db:drop db:migrate db:seed
    

    같은 명령으로 새로 디비를 재생성하는 경우는 많이 있습니다.

    2번 질문에 대한 답은 seed_dump 라는 gem 을 사용하면 될 것으로 보입니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 레일즈의 경우 drop을 하지 않고서는 migrate가 실행되지 않는 것으로 알고 있습니다. 이런 부분은 결국 다른 db파일을 생성해서 운용해야하나요? 우연 2018.1.4 17:55
    • drop 을 하지 않아도 migrate 는 실행 할 수 있습니다. 알 수 없는 사용자 2018.1.4 18:16

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)