SQLSTATE[HY000] [1045] Access denied for user ' forget &


In Laravel 4 - SQLSTATE[HY000] [1045] Access denied for user 'forge'@'localhost' (using password: NO)

我在Laravel 4中得到这个错误。我的config/database。php文件说,

'connections' => array(
    'mysql' => array(
        'driver'    => 'mysql',
        'host'      => '127.0.0.1',
        'database'  => 'my-site-name',
        'username'  => 'my-site-name',
        'password'  => 'my-password',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
    ),

早先我把环境改成了生产环境,现在改成了本地环境。

如果您将环境更改为local,则应该检查'app'config'local'文件夹中是否有database.php文件。您的环境特定配置将覆盖'app'config'文件夹中的全局配置。

看到您的连接正试图使用forge用户名localhost,似乎你刚刚发布的配置被另一个配置文件覆盖。

In database.php

'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'your_db_name'),
            'username' => env('DB_USERNAME', 'your_db_user_name'),
            'password' => env('DB_PASSWORD', 'your_db_password'),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],
在.env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_db_name
DB_USERNAME=your_db_user_name
DB_PASSWORD=your_db_password

希望,这可能会成功。谢谢。