프로그래밍 언어/Database

특정 마이그레이션을 롤백하는 방법

Rateye 2021. 7. 19. 10:12
728x90
반응형

 

질문 : 특정 마이그레이션을 롤백하는 방법은 무엇입니까?

다음 마이그레이션 파일 db\migrate\20100905201547_create_blocks.rb

마이그레이션 파일을 구체적으로 롤백하려면 어떻게해야합니까?

답변

rake db:rollback STEP=1

롤백하려는 마이그레이션이 마지막으로 적용된 경우이를 수행하는 방법입니다. 되돌리려는 마이그레이션 수를 1로 대체 할 수 있습니다.

예를 들면 :

rake db:rollback STEP=5

또한 나중에 발생한 모든 마이그레이션 (4, 3, 2 및 1)도 롤백합니다.

모든 마이그레이션을 대상 마이그레이션으로 롤백하려면 다음을 사용하십시오. (이 수정 된 명령은 원본 게시물에서 오류를 지적한 모든 주석 후에 추가되었습니다)

rake db:migrate VERSION=20100905201547

하나의 특정 마이그레이션 만 롤백하려면 (무 순서) 다음을 사용하십시오.

rake db:migrate:down VERSION=20100905201547

이렇게하면 중간 마이그레이션이 롤백되지 않으며 나열된 마이그레이션 만 롤백됩니다. 이것이 의도 한 것이 아니라면 rake db:migrate 안전하게 실행할 수 있으며 이전에 롤백되지 않은 다른 항목은 건너 뛰고 해당 항목 만 다시 실행합니다.

단일 마이그레이션을 순서대로 마이그레이션하려는 경우 역 db:migrate:up .

rake db:migrate:up VERSION=20100905201547
출처 : https://stackoverflow.com/questions/3647685/how-to-rollback-a-specific-migration
728x90
반응형