[laravel] 이전, 재작업 명령 각양각색
데이터베이스의migrations표로 이동합니다.
migrations 테이블에batch라는 열이 있는데 값의 순서에 따라migrate를 표시합니다.아래 DB에서create_photos_이것은 테이블 파일이 최근에 실행되었다는 것을 의미합니다.
status
마이그레이션 상태를 확인합니다.
php artisan migrate:status
+------+------------------------------------------------+-------+
| Ran? | Migration | Batch |
+------+------------------------------------------------+-------+
| Yes | 2014_10_12_000000_create_users_table | 1 |
| Yes | 2014_10_12_100000_create_password_resets_table | 1 |
| Yes | 2019_08_19_000000_create_failed_jobs_table | 1 |
| Yes | 2020_02_05_015307_create_albums_table | 2 |
| Yes | 2020_02_05_020352_create_photos_table | 3 |
+------+------------------------------------------------+-------+
이 데이터베이스는 1,2,3의 순서에 따라 이전을 실행한다는 것을 나타낸다.rollback
롤백 (일련의 마이그레이션이 없었다고 가정)
·down () 방법에 적힌 처리를 실행합니다.
· 이전 DB에서 batch 3의 마이그레이션이 롤백되고 상태는 "아니오"로 표시됩니다.
$ php artisan migrate:rollback
롤백을 수행하면 Ran에 "아니오"가 표시됩니다.+------+------------------------------------------------+-------+
| Ran? | Migration | Batch |
+------+------------------------------------------------+-------+
| Yes | 2014_10_12_000000_create_users_table | 1 |
| Yes | 2014_10_12_100000_create_password_resets_table | 1 |
| Yes | 2019_08_19_000000_create_failed_jobs_table | 1 |
| Yes | 2020_02_05_015307_create_albums_table | 2 |
| No | 2020_02_05_020352_create_photos_table | |
+------+------------------------------------------------+-------+
· - step 옵션을 사용하여 [수치]회 롤백합니다.만약batch값이 3이라면,phpartisanmigrate:rollback--step=2이면batch는 1의 상태로 되돌아옵니다.
$ php artisan migrate:rollback --step=[数値]
reset
모든 마이그레이션을 롤백합니다.
$ php artisan migrate:reset
$ php artisan migrate:reset
Rolling back: 2020_02_05_015307_create_albums_table
Rolled back: 2020_02_05_015307_create_albums_table
Rolling back: 2019_08_19_000000_create_failed_jobs_table
Rolled back: 2019_08_19_000000_create_failed_jobs_table
Rolling back: 2014_10_12_100000_create_password_resets_table
Rolled back: 2014_10_12_100000_create_password_resets_table
Rolling back: 2014_10_12_000000_create_users_table
Rolled back: 2014_10_12_000000_create_users_table
$ php artisan migrate:status
+------+------------------------------------------------+-------+
| Ran? | Migration | Batch |
+------+------------------------------------------------+-------+
| No | 2014_10_12_000000_create_users_table | |
| No | 2014_10_12_100000_create_password_resets_table | |
| No | 2019_08_19_000000_create_failed_jobs_table | |
| No | 2020_02_05_015307_create_albums_table | |
| No | 2020_02_05_020352_create_photos_table | |
+------+------------------------------------------------+-------+
모든 마이그레이션 상태는 "아니오"입니다.refresh
모든 마이그레이션을 롤백한 다음 다시 마이그레이션합니다.
$ php artisan migrate:refresh
$ php artisan migrate:refresh
Rolling back: 2020_02_05_020352_create_photos_table
Rolled back: 2020_02_05_020352_create_photos_table (0.02 seconds)
Rolling back: 2020_02_05_015307_create_albums_table
Rolled back: 2020_02_05_015307_create_albums_table (0.02 seconds)
Rolling back: 2019_08_19_000000_create_failed_jobs_table
Rolled back: 2019_08_19_000000_create_failed_jobs_table (0.02 seconds)
Rolling back: 2014_10_12_100000_create_password_resets_table
Rolled back: 2014_10_12_100000_create_password_resets_table (0.02 seconds)
Rolling back: 2014_10_12_000000_create_users_table
Rolled back: 2014_10_12_000000_create_users_table (0.02 seconds)
Migrating: 2014_10_12_000000_create_users_table
Migrated: 2014_10_12_000000_create_users_table (0.06 seconds)
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated: 2014_10_12_100000_create_password_resets_table (0.06 seconds)
Migrating: 2019_08_19_000000_create_failed_jobs_table
Migrated: 2019_08_19_000000_create_failed_jobs_table (0.04 seconds)
Migrating: 2020_02_05_015307_create_albums_table
Migrated: 2020_02_05_015307_create_albums_table (0.04 seconds)
Migrating: 2020_02_05_020352_create_photos_table
Migrated: 2020_02_05_020352_create_photos_table (0.04 seconds)
fresh
모든 테이블을 포기하고 다시 이동합니다.
$ php artisan migrate:fresh
Dropped all tables successfully.
Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table
Migrated: 2014_10_12_000000_create_users_table (0.06 seconds)
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated: 2014_10_12_100000_create_password_resets_table (0.06 seconds)
Migrating: 2019_08_19_000000_create_failed_jobs_table
Migrated: 2019_08_19_000000_create_failed_jobs_table (0.04 seconds)
Migrating: 2020_02_05_015307_create_albums_table
Migrated: 2020_02_05_015307_create_albums_table (0.04 seconds)
Migrating: 2020_02_05_020352_create_photos_table
Migrated: 2020_02_05_020352_create_photos_table (0.04 seconds)
refresh와 달리 롤백을 하지 않습니다.즉, down () 메서드가 실행되지 않고 DB를 재구성한다는 점이다.따라서 여러 데이터베이스가 있는 프로젝트에서fresh를 진행하면 오류가 발생합니다.데이터베이스가 하나만 삭제되기 때문이다.
총결산
・status 마이그레이션 상태 확인
롤백 이전 마이그레이션
• 모든 마이그레이션 롤백
· 모든 이동을 롤백하고migrate를 실행합니다.
· 모든fresh표를 삭제하고migrate를 실행합니다.
Reference
이 문제에 관하여([laravel] 이전, 재작업 명령 각양각색), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/rope19181/items/c7862f9a0a22443ddb48텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)