用户'homestead'@'localhost'的访问被拒绝(使用密码:是) [英] Access denied for user 'homestead'@'localhost' (using password: YES)

查看:114
本文介绍了用户'homestead'@'localhost'的访问被拒绝(使用密码:是)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在使用Laravel 5.0的Mac OS Yosemite上.

I'm on a Mac OS Yosemite using Laravel 5.0.

在我的本地环境中,我运行php artisan migrate我不断得到:

While in my local environment, I run php artisan migrate I keep getting :

拒绝用户'homestead'@'localhost'的访问(使用密码:是)

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

配置

这是我的 .env

APP_ENV=local
APP_DEBUG=true
APP_KEY=*****

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

app \ config \ database.php

   'mysql'       => [
    'driver'      => 'mysql',
    'host'        => env('DB_HOST', 'localhost'),
    'database'    => env('DB_DATABASE', 'homestead'),
    'username'    => env('DB_USERNAME', 'homestead'),
    'password'    => env('DB_PASSWORD', 'secret'),
    'unix_socket' => '/tmp/mysql.sock',
    'charset'     => 'utf8',
    'collation'   => 'utf8_unicode_ci',
    'prefix'      => '',
    'strict'      => false,
    ]

如何避免这种错误?

我已经尝试过:

app/database.php

127.0.0.1

'host'=> env('DB_HOST', 'localhost')-> 'host' => env('DB_HOST', '127.0.0.1')

此外,在 .env

DB_HOST=localhost-> DB_HOST=127.0.0.1

尝试指定环境

php artisan migrate --env=local

通过运行来查看MySQL是否正在运行

Check to see if the MySQL is running by run

mysqladmin -u homestead -p status Enter password: secret

我知道了

Uptime: 21281 Threads: 3 Questions: 274 Slow queries: 0 Opens: 327 Flush tables: 1 Open tables: 80 Queries per second avg: 0.012

这意味着它正在运行.

检查MySQL UNIX套接字(此步骤对我有用)

Check MySQL UNIX Socket (This step work for me)

推荐答案

检查MySQL UNIX套接字

使用MySQL查找 unix_socket 位置

mysql -u homestead -p

mysql> show variables like '%sock%';
+-----------------------------------------+-----------------------------+
| Variable_name                           | Value                       |
+-----------------------------------------+-----------------------------+
| performance_schema_max_socket_classes   | 10                          |
| performance_schema_max_socket_instances | 322                         |
| socket                                  | /var/run/mysqld/mysqld.sock |
+-----------------------------------------+-----------------------------+
3 rows in set (0.00 sec)

然后我转到 config/database.php

我更新此行:'unix_socket' => '/tmp/mysql.sock',

至:'unix_socket' => '/var/run/mysqld/mysqld.sock',

就是这样.这是我的第四次尝试.希望这些步骤对某人有所帮助. :D

That's it. It works for my as my 4th try.I hope these steps help someone. :D

这篇关于用户'homestead'@'localhost'的访问被拒绝(使用密码:是)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆