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

执行composer dump-autoload后迁移未找到及回滚迁移报错的解决咨询

解决Laravel迁移回滚时「Migration not found」的问题

遇到这种明明执行了常规缓存清理却还是报错的情况确实闹心,我来给你梳理几个手动清理的关键方向,亲测能解决这类问题:

1. 先确认迁移文件的存在性

首先去项目的database/migrations目录下检查一下,是不是2018_04_19_054123_create_business_users_table.php这个文件已经被删掉了?如果文件已经不存在,但数据库的migrations表中还保留着这条迁移记录,Laravel就会触发「找不到迁移文件」的错误。

2. 手动清理Composer的类映射缓存

有时候composer dump-autoload可能没彻底更新类映射,你可以手动删除以下两个文件:

  • 项目根目录下的vendor/composer/autoload_classmap.php
  • 项目根目录下的vendor/composer/autoload_static.php
    删除完成后重新执行composer dump-autoload,让Composer重新生成最新的类映射关系。

3. 清理Laravel的迁移缓存(如果启用过)

如果你之前使用过php artisan migrate:cache来加速迁移操作,Laravel会生成一个迁移缓存文件,这个文件会让系统忽略实时的迁移文件。你可以直接执行命令清理:

php artisan migrate:clear

或者手动删除bootstrap/cache/migrations.php文件,效果完全一致。

4. 处理数据库中的遗留迁移记录(谨慎操作!)

要是你确认该迁移文件已经无用,且对应的数据库变更已经手动回滚或不需要保留,可以直接在数据库的migrations表中,删除migration字段值为2018_04_19_054123_create_business_users_table的那条记录。

注意:操作数据库前务必备份数据,明确这条迁移对应的数据库变更内容,避免因误操作导致数据不一致。

5. 彻底清理Laravel的各类缓存

虽然你已经执行过相关命令,但再重新运行一遍确保没有残留:

php artisan config:clear
php artisan cache:clear
php artisan route:clear

按这个顺序排查处理后,应该就能解决迁移文件找不到的问题了。

内容的提问来源于stack exchange,提问作者Seio. E.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:17:26