You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel删除迁移文件后执行migrate:refresh提示‘Migration not found’求助

解决Laravel迁移文件删除后migrate:refresh报错的问题

这问题我之前也踩过坑——你删掉了本地的迁移文件,但数据库里的migrations表还存着这两个文件的记录,执行migrate:refresh时Laravel会去查找这些已删除的文件,自然就抛出「Migration not found」的错误了。下面给你两种靠谱的解决办法:

方法一:手动清理数据库记录

  1. 打开你常用的数据库管理工具(比如phpMyAdmin、Navicat或者命令行客户端)
  2. 找到migrations数据表,搜索包含2018_03_30_075929_drop_products_tags_table和2018_03_30_075242_create_products_tags_table的两条记录
  3. 直接删除这两条记录
  4. 再次执行php artisan migrate:refresh,就能正常运行了

方法二:用Artisan命令快速清理

如果你习惯用命令行操作,可以走这个流程:

  • 先进入Laravel的Tinker交互环境:
    php artisan tinker
    
  • 依次执行SQL删除语句,清理目标迁移记录:
    DB::table('migrations')->where('migration', '2018_03_30_075929_drop_products_tags_table')->delete();
    DB::table('migrations')->where('migration', '2018_03_30_075242_create_products_tags_table')->delete();
    
  • 输入exit退出Tinker,再运行php artisan migrate:refresh即可

后续注意事项

以后要删除迁移文件时,建议先执行php artisan migrate:rollback回滚该迁移(如果该迁移已经执行过),再删除本地文件;或者删除文件后及时清理migrations表的对应记录,避免再出现这类问题。

内容的提问来源于stack exchange,提问作者Dimitar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:06:23