Laravel 使用 MySQL 时,数据库迁移默认引擎是 MyISAM。可以使用 engine 属性指定表的存储引擎:

Schema::create('users', function (Blueprint $table) {
    $table->engine = 'InnoDB';


});

如果不想在每个迁移文件里都显示声明 engine 属性,那么可以通过修改 config/database.php 文件中的 engine 属性的方式达到默认使用 InnoDB 引擎。

将:

'engine' => 'null',

设置为:

'engine' => 'InnoDB',

推荐阅读:MyISAM 和 InnoDB 引擎的区别详细比较