【发布时间】:2019-01-24 22:45:58
【问题描述】:
问题是我的本地 Laravel 项目无法连接到 MySQL,我收到以下错误:
拒绝用户“root”@“localhost”访问(使用密码:YES)
操作系统:macos high sierra 浏览器:Chrome; MySql 版本:8.0.12 Laravel 版本:5.6 宅基地版本:7.0
我试图解决的问题:
检查是否有一个 MySql 实例正在运行 - 它正在运行。
检查 .env 文件和 config/database.php 中的凭据 - 凭据正确(Mysql root 用户密码已更改为安装时生成的密码)
我检查了我是否可以通过终端连接以仔细检查凭据是否正确 - 我可以并且它们是正确的
尝试创建具有所有 root 权限的新 MySql 用户。 - 同样的错误。
我可以在终端中运行
php artisan migrate并创建表。由于该网站被拒绝,我认为这很奇怪。我完全删除了 MySql 3 次。 (按照本指南:https://gist.github.com/vitorbritto/0555879fe4414d18569d)-同样的错误
所以我从头开始销毁了 vagrant box 和 Laravel 项目并从头开始 - 同样的错误。
抑制了打我电脑的冲动。
.env(更新)
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
yaml:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/Sites
to: /home/vagrant/Sites
sites:
- map: site.test
to: /home/vagrant/Sites/sitetest/public
databases:
- homestead
/etc/hosts
##
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
127.0.0.1 site.test
【问题讨论】:
-
你有一个名为'root'的mysql用户并且密码匹配吗?和数据库名称?
-
如果您的凭据为真,请尝试将数据库名称更改为另一个名称。