[laravel] 이전, 재작업 명령 각양각색

5779 단어 PHPLaravel옮기다
간단하게 표를 수정하고 재구성하는 명령을 기록합니다.
데이터베이스의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를 실행합니다.

좋은 웹페이지 즐겨찾기