用户访问被拒绝';宅地'@';localhost';(使用密码:YES)pdo异常


Access denied for user 'homestead'@'localhost' (using password: YES) pdo exception

我为这个问题找到了很多解决方案,但都不起作用。

这是我的控制器

   <?php
namespace App'Http'Controllers;
use Illuminate'Http'Request;
use App'Http'Requests;
use App'Doctor;
 class DoctorController extends Controller
 {
   public function index(){
     $doctors = Doctor::all();
     return $doctors;
     return "this is a doctorController";
   }
  }

这是我的型号

    <?php
 namespace App;
 use Illuminate'Database'Eloquent'Model;
class Doctor extends Model
 {
 //
}

这是我的Route.php

 Route::resource("doctor","DoctorController");

这是我的.env文件

  APP_ENV=local
  APP_DEBUG=true
  APP_KEY=SomeRandomString
  APP_URL=http://localhost
 DB_CONNECTION=mysql
 DB_HOST=localhost
 DB_PORT=3306
 DB_DATABASE=medical
 DB_USERNAME=root
 DB_PASSWORD=
 CACHE_DRIVER=file
 SESSION_DRIVER=file
 QUEUE_DRIVER=sync
 REDIS_HOST=127.0.0.1
 REDIS_PASSWORD=null
 REDIS_PORT=6379
 MAIL_DRIVER=smtp
 MAIL_HOST=mailtrap.io
 MAIL_PORT=2525
 MAIL_USERNAME=null
 MAIL_PASSWORD=null
 MAIL_ENCRYPTION=null

我遵循了这个解决方案http://tutsnare.com/access-denied-for-user-homesteadlocalhost-laravel-5/和Laravel 5.2:Connector.php中的PDOException第55行:SQLSTATE[HY000][1045]用户访问被拒绝';宅地'@';localhost';(使用密码:是)

但他们都不工作。我该怎么办?

其数据库连接错误,表示其密码受保护。如果以前从未分配过不同的密码,则不能将其留空,然后(DB_PASSWORD=?)尝试使用"root"作为密码。

如果可能,请提供您的config/database.php文件。或者转到config/database.php文件并将其更改为:

'mysql' => [
            'driver'    => 'mysql',
            'host'      => env('DB_HOST', 'YOUR_DB_HOST'),
            'database'  => env('DB_DATABASE', 'YOUR_DB_DATABASE'),
            'username'  => env('DB_USERNAME', 'YOUR_DB_USERNAME'),
            'password'  => env('DB_PASSWORD', 'YOUR_DB_PASSWORD'),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
            'strict'    => false,
        ],

如果数据库没有密码,请从.env文件中删除DB_PASSWORD=。看看这是否能解决你的问题。