laravel migrate 指定执行部分 migration

更新日期: 2018-10-09 阅读次数: 2123 分类: Laravel

由于我不习惯于使用 laravel migration 来管理数据表变更,所以很多项目都是无法直接执行

php artisan migrate 

否则会报错

SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists

即,这些本该由 migrate 生成的表,已经提前由 SQL 创建了。

所以,我非常需要能够指定运行部分 migration 的方法。例如创建 job queue 相关的两个表。

将需要执行的 migration 文件复制到 new 目录下,然后执行

php artisan migrate --path=database/migrations/new
Migrating: 2018_10_09_133351_create_jobs_table
Migrated:  2018_10_09_133351_create_jobs_table
Migrating: 2018_10_09_133359_create_failed_jobs_table
Migrated:  2018_10_09_133359_create_failed_jobs_table

每次只需要将要执行的 migration 复制到 new 目录下即可。

测试环境

Laravel 5.5

爱评论不评论

近期节日

2019年06月20日 世界难民日
2019年06月21日 夏至
2019年06月22日 中国儿童慈善活动日
2019年06月23日 国际奥林匹克日
2019年06月25日 全国土地日
2019年06月26日 国际禁毒日
2019年06月30日 世界青年联欢节
2019年07月01日 中国共产党诞生日
2019年07月01日 香港回归日
2019年07月02日 国际体育记者日
2019年07月06日 国际接吻日
2019年07月07日 抗日战争纪念日
查看更多节日