Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 如何使artisan migrate命令使用database.php而不是.env_Laravel_Migration_Laravel 5.2_Laravel Artisan - Fatal编程技术网

Laravel 如何使artisan migrate命令使用database.php而不是.env

Laravel 如何使artisan migrate命令使用database.php而不是.env,laravel,migration,laravel-5.2,laravel-artisan,Laravel,Migration,Laravel 5.2,Laravel Artisan,默认情况下,Laravel的artisan migrate命令使用.env文件从中加载数据库配置,但如何让它查看database.php而不是.env文件来加载数据库连接信息 如果从.env文件中删除db凭据,则会出现以下错误: [无效辩论例外] 数据库[mysql]未配置 尽管database.php具有正确的连接详细信息。您可以使用-database指定要使用的数据库连接: php artisan migrate --database=pgsql php artisan migrate --

默认情况下,Laravel的artisan migrate命令使用.env文件从中加载数据库配置,但如何让它查看database.php而不是.env文件来加载数据库连接信息

如果从.env文件中删除db凭据,则会出现以下错误:

[无效辩论例外] 数据库[mysql]未配置

尽管database.php具有正确的连接详细信息。

您可以使用-database指定要使用的数据库连接:

php artisan migrate --database=pgsql
php artisan migrate --database=mysql
php artisan migrate --database=sqlite
可以使用-database指定要使用的数据库连接:

php artisan migrate --database=pgsql
php artisan migrate --database=mysql
php artisan migrate --database=sqlite
将其从.env中删除

转到config文件夹中的database.php

并从

如果您正在使用另一个数据库sqlite或sqlserv作为示例,请更改默认值

别忘了更改凭证

mysql示例:

简言之:您需要从.env文件中删除与数据库相关的变量,并将database.php中的env'DB_HOST'、'localhost'或任何类似内容更改为介于

之间的简单文本。请从.env文件中删除此变量

转到config文件夹中的database.php

并从

如果您正在使用另一个数据库sqlite或sqlserv作为示例,请更改默认值

别忘了更改凭证

mysql示例:


简而言之:您需要从.env文件中删除与数据库相关的变量,并将database.php中的env'DB_HOST'、'localhost'或任何类似内容更改为介于

之间的简单文本。您的意思是config/database.php是否对数据库连接详细信息进行了硬编码?它应该是,从.env文件加载配置文件的位置。您的意思是config/database.php硬编码了您的数据库连接详细信息吗?应该是这样的,配置文件是从.env文件加载的。我假设database.php将是一个版本化的文件,我不认为在这些文件中保留凭据是一个好主意,因为必须在每个本地、临时和生产环境中编辑它们,因此我认为从环境中读取它们是更好的主意。我以前读过这篇关于拉威尔社区的文章,根据我自己的经验,我同意他们的观点。是的,我知道,我刚刚回答了你的问题!当您按照我说的做,使用php artisan migrate时,它将使用database.php而不是.envI。我假设database.php将是一个版本化的文件,我认为将凭据保存在这些文件中不是一个好主意,因为必须在每个本地环境中编辑它们,所以我认为从环境中阅读它们是更好的主意。我以前读过这篇关于拉威尔社区的文章,根据我自己的经验,我同意他们的观点。是的,我知道,我刚刚回答了你的问题!当您按照我所说的操作并使用php artisan migrate时,它将使用database.php而不是.env
'default' => env('DB_CONNECTION', 'mysql'),
'default' => 'mysql',
'mysql' => [
            'driver'    => 'mysql',
            'host'      => 'localhost',
            'database'  => 'database',
            'username'  => 'username',
            'password'  => 'password',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
            'engine'    => null,
        ],