【发布时间】:2022-01-31 23:47:35
【问题描述】:
在使用迁移(架构生成器)时如何设置默认引擎?我最近在一个共享主机上找到了位置,他们的默认 MySQL 引擎是 MyISAM。不必重写我所有的迁移文件以包含 $table->engine = 'InnoDB' 我想知道您是否可以将其设置为默认值。
有可能吗?
【问题讨论】:
在使用迁移(架构生成器)时如何设置默认引擎?我最近在一个共享主机上找到了位置,他们的默认 MySQL 引擎是 MyISAM。不必重写我所有的迁移文件以包含 $table->engine = 'InnoDB' 我想知道您是否可以将其设置为默认值。
有可能吗?
【问题讨论】:
我不认为是,文档http://laravel.com/docs/schema#storage-engines。在文档中找不到任何其他提及 db 引擎的内容。
你会期望它在 app/config/database.php 中是可能的
【讨论】:
我设法做到了。我正在使用 Laravel 5.5。在config/database.php:
'connections' => [
'mysql' => [
...
'engine' => env('DB_ENGINE', null)
],
您可能知道这将从.env 文件中获取DB_ENGINE var。
所以在那个文件中我是这样设置的:
DB_ENGINE=MyISAM
如果您也将 var 设置为 InnoDB,它将起作用。
【讨论】: