Laravel使用不存在的数据库设置并使用PDOException失败(1045)。怎么样?为什么?

时间:2014-10-24 17:13:34

标签: laravel pdo eloquent

我正在启动一个需要连接到预先存在的数据库的aravel4项目 我将我的环境设置为'local' => array('*.dev'),并通过http://my.project.dev/products进入项目。

我的app/config/database.php故意不完整,看起来像完全

    'mysql' => array(
        'driver'   => 'mysql',
        'host'     => '192.168.1.250',
        'database' => '',
        'username' => '',
        'password' => '',
        'charset'  => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'   => 'm3_',
    ),

我的app/config/local/database.php看起来像这样:

    'mysql' => array(
        'driver'   => 'mysql',
        'host'     => '192.168.1.250',
        'database' => 'realDbName',
        'username' => 'realUserName',
        'password' => 'realPass',
        'charset'  => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'   => 'm3sandbox_',
    ),

然而,正在抛出错误,说该应用程序正在尝试连接到 我的 面向外部的IP(甚至不是localhost环回) www-data用户:

  

PDOException(1045)
  SQLSTATE [28000] [1045]访问被拒绝用户'www-data'@'192.168.1.175'(使用密码:否)

我完全被挡住了 它试图使用什么默认值,以及从哪里得到它? 更重要的是,我该如何纠正这个?

1 个答案:

答案 0 :(得分:0)

嗯,原来答案是环境 似乎很奇怪,后备是抛出一个引用'www-data'@'192.168.1.175'的异常,但唉,问题是由我app/config/database.php中的空凭据和配置错误的本地环境属性触发的。

如果它帮助其他人,请记住,环境与机器名称匹配 出于某种原因,我在脑海中得到了与请求的URL匹配的模式:|