laravel migrate 指定执行部分 migration

文章目录

    由于我不习惯于使用 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

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式