【问题标题】:why my .env always connects with old database?为什么我的 .env 总是与旧数据库连接?
【发布时间】:2019-09-03 20:30:53
【问题描述】:

我是 laravel 的新手。为什么我的 laravel 项目一直连接旧数据库?

我试图清除缓存,但对我没有任何效果php artisan config: cache

我的 env 文件已与新数据库连接,但在终端显示错误提示

未知数据库“管理员”

【问题讨论】:

  • 你能上传你的 .env 文件吗?
  • 检查你的配置文件夹 database.php
  • 正确的命令是php artisan config:clear(冒号后没有空格)。
  • 在编辑 env 文件后是否重启服务器?
  • 你能得到答案吗?

标签: laravel environment-variables


【解决方案1】:

如果你使用php artisan config: cache,它会在你的bootstrap文件夹的缓存下创建一个config.php文件。
因此,如果您更改 .env 文件 中的某些内容,它不会在您的缓存 config.php 文件中更新。
然后,当您运行php artisan config:clear 时,新的更改将在您的缓存 config.php 文件中更新。这就是你面临这个问题的原因。

要克服这个问题,请尝试以下方法

  1. bootstrap 文件夹 中的 cache 文件夹 中删除 config.php 文件。
  2. 运行composer update

我也遇到过这样的问题,做了以上步骤,就解决了。

【讨论】:

    【解决方案2】:

    希望您的数据库凭据在 .env 文件中是正确的:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=            // Your Database Name
    DB_USERNAME=           // Your Database Username
    DB_PASSWORD=          // Your Database Password
    

    如果全部正确则.env编辑完成后,您可以使用以下工匠命令清除配置缓存:php artisan config:cache


    另外,签入config/database.php,检查旧的数据库名没有在上面使用过

    另外,如果您使用 PHP 的默认 Web 服务器(例如 php artisan serve),您需要在更改 .env 文件值后重新启动服务器

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-05
      • 2021-05-18
      • 2019-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多