php artisan迁移不正常

时间:2017-09-12 14:09:03

标签: php laravel artisan

我是laravel的新手,我运行auth文件进行注册和登录等......

我在迁移文件夹中有3个迁移文件:user table reset_password表和user_profile表:问题出在我运行时:php artisan migrate它只创建没有另外2个表的用户表,所以我尝试了这些命令: php artisan migrate:rollback, php artisan migrate:refresh, php artisan config:cache php artisan config cache:clear然后我跑了:php artisan migrate并且只创建了用户表...任何想法?谢谢

2 个答案:

答案 0 :(得分:0)

我也遇到了同样的问题,当你运行php artisan migrate时,该命令开始迁移表,而在迁移users表时,它会抛出一些错误,如:

  

[照亮\数据库\ QueryException]
  SQLSTATE [42000]:语法错误或访问冲突:1071指定密钥   太长了最大密钥长度为767字节(SQL:alter table   users添加唯一的users_email_uniqueemail))

因此,只迁移用户表,并且进程因上述错误而停止。如果这是问题,那么你必须解决它,然后删除users表并再次迁移,每件事都没问题。

要解决上述问题,您所要做的就是编辑app/Providers/AppServiceProvider.php文件并在启动方法中添加默认字符串长度,如:

use Illuminate\Support\Facades\Schema;

function boot()
{
    Schema::defaultStringLength(191);
}

再次迁移,一切都会好的。

答案 1 :(得分:0)

我找到了解决方案

首先在App / Providers / AppServiceProvider.php中进行设置 使用Illuminate \ Support \ Facades \ Schema;

public function boot()
    {
        Schema::defaultStringLength(191);

    }

然后迁移Cmd并最终

php artisan migration:fresh

在迁移成功后