LAMP中的Laravel 5.3 - 迁移不起作用

时间:2017-01-09 07:13:46

标签: laravel laravel-5.3

我正在使用laravel 5.3

最近我在Ubuntu 14.04上设置了我的项目,并将项目移至LAMP,之前它已在WAMP上。

我的.env文件为:

APP_ENV=local
APP_DEBUG=true
APP_KEY=somebase64key
DB_HOST=localhost
DB_DATABASE="local.d2d.com"
DB_USERNAME=d2d
DB_PASSWORD=
CACHE_DRIVER=file
SESSION_DRIVER=file

是的,我有用户d2d并拥有local.d2d.com中数据库mysql的所有权限。

我的config/database.php如下:

<?php

return [
    'fetch' => PDO::FETCH_CLASS,
    'default' => 'mysql',
    'connections' => [
        'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST'),
            'database'  => env('DB_DATABASE'),
            'username'  => env('DB_USERNAME'),
            'password'  => env('DB_PASSWORD'),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ]
    ],

    'migrations' => 'migrations',
    'redis' => [
        'cluster' => false,
        'default' => [
            'host'     => '127.0.0.1',
            'port'     => 6379,
            'database' => 0,
        ]
    ]
];

在运行php artisan migrate时,我收到以下错误:

  

[Illuminate \ Database \ QueryException] SQLSTATE [HY000] [1045]访问   拒绝用户'root'@'localhost'(使用密码:NO)(SQL:select *   来自information_schema.tables,其中table_schema = local.d2d.com和   table_name =迁移)

     

[Doctrine \ DBAL \ Driver \ PDOException] SQLSTATE [HY000] [1045]访问权限   拒绝用户'root'@'localhost'(使用密码:否)                                                                                  [PDOException] SQLSTATE [HY000] [1045]拒绝用户访问   'root'@'localhost'(使用密码:NO)

您仍然可以在任何地方看到我不使用 root用户我仍然面临此问题。即使在连接错误中,您可能会发现数据库是information_schema而不是local.d2d.com

是的,我多次运行php artisan config:clearphp artisan cache:clearphp artisan view:clearphp artisan clear-compiledphp artisan optimize

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

像这样更改config/database.php

<?php
    ...
    'mysql' => [
        ...
        'host'      => env('DB_HOST', 'localhost'),
        'database'  => env('DB_DATABASE', 'example'),
        'username'  => env('DB_USERNAME', 'root'),
        'password'  => env('DB_PASSWORD', 'root'),
        ...
    ],
    ...

然后

php artisan cache:clear
php artisan config:cache