在数据库没有任何表的情况下执行
php artisan migrate
执行后数据库里面只会存在连个表:migrations、users
再次执行
数据库里不会有任何的新增。求解。
索引的长度超过了mysql的限制,在migrate之前,设置
mysql
migrate
$table->string('email' , 32)->index(); $table->string('token' , 128)->index();
或者更小...
这是因为 5.4 默认使用了utf8mb4 字符集, 在 MySQL / MariaDB .
https://laravel.com/docs/5.4/migrations#indexes
只要安装文档中的示例修改就好了.
在 AppServiceProvider.php, boot方法中, 调用 Schema::defaultStringLength 方法
// AppServiceProvider.php use Illuminate\Support\Facades\Schema; /** * Bootstrap any application services. * * @return void */ public function boot() { Schema::defaultStringLength(191); }
顺便, 你也可以开启数据库的 innodb_large_prefix 配置
索引的长度超过了
mysql
的限制,在migrate
之前,设置或者更小...
这是因为 5.4 默认使用了utf8mb4 字符集, 在 MySQL / MariaDB .
https://laravel.com/docs/5.4/migrations#indexes
只要安装文档中的示例修改就好了.
在 AppServiceProvider.php, boot方法中, 调用 Schema::defaultStringLength 方法
顺便, 你也可以开启数据库的 innodb_large_prefix 配置