【问题标题】:How do you set default engine for the Schema Builder?您如何为 Schema Builder 设置默认引擎?
【发布时间】:2022-01-31 23:47:35
【问题描述】:

在使用迁移(架构生成器)时如何设置默认引擎?我最近在一个共享主机上找到了位置,他们的默认 MySQL 引擎是 MyISAM。不必重写我所有的迁移文件以包含 $table->engine = 'InnoDB' 我想知道您是否可以将其设置为默认值。

有可能吗?

【问题讨论】:

    标签: laravel laravel-4


    【解决方案1】:

    我不认为是,文档http://laravel.com/docs/schema#storage-engines。在文档中找不到任何其他提及 db 引擎的内容。

    你会期望它在 app/config/database.php 中是可能的

    【讨论】:

      【解决方案2】:

      我设法做到了。我正在使用 Laravel 5.5。在config/database.php

      'connections' => [
          'mysql' => [
              ...
              'engine' => env('DB_ENGINE', null)
          ],
      

      您可能知道这将从.env 文件中获取DB_ENGINE var。 所以在那个文件中我是这样设置的:

      DB_ENGINE=MyISAM
      

      如果您也将 var 设置为 InnoDB,它将起作用。

      【讨论】:

      • 我可以确认这仍然适用于 Laravel 8。这应该是正确的答案,IMO。谢谢!
      猜你喜欢
      • 2011-05-11
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      • 2011-01-18
      • 2015-02-14
      • 2017-06-16
      • 2011-03-04
      • 1970-01-01
      相关资源
      最近更新 更多