问题是我的localhost laravel项目无法连接到mysql,出现以下错误:
拒绝访问用户“root”@“localhost”(使用密码:yes)
操作系统:macos浏览器:chrome;mysql版本:8.0.12 laravel版本:5.6 homestead版本:7.0
我试图解决的问题:
检查是否有一个mysql示例正在运行-它正在运行。
检查.env文件和config/database.php中的凭据-凭据是正确的(mysql root用户密码已更改为安装时生成的密码)
我检查了是否可以通过终端连接,以再次检查凭据是否正确-我可以,而且它们是正确的
尝试创建具有所有root权限的新mysql用户。-同样的错误。
我能跑 php artisan migrate
在终端和表中创建。我觉得很奇怪,因为网站被拒绝了。
我完全删除mysql三次(遵循本指南:https://gist.github.com/vitorbritto/0555879fe4414d18569d)-同样的错误
所以,我从一开始就摧毁了流浪者盒子和拉雷维尔项目,从一开始就开始——同样的错误。
与打我电脑的冲动作斗争。
.env(已更新)
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
亚马尔:
---
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/主机
##
##
# 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
5条答案
按热度按时间xxhby3vn1#
在hosts文件中,当运行homestead时,必须进行更改
127.0.0.1 site.test
至192.168.10.10 site.test
当然,只有在vagrant up
bprjcwpo2#
试试这个
mysql运行的第一个内部版本
sudo mysql -u root -p
下一步执行此命令:t30tvxxf3#
homestead的默认密码不是
something
.据拉威尔医生说是的
secret
.mysql和postgresql都配置了一个现成的homestead数据库。为了更加方便,laravel的.env文件将框架配置为使用这个现成的数据库。
要从主机的数据库客户端连接到mysql或postgresql数据库,您应该连接到127.0.0.1和端口33060(mysql)或54320(postgresql)。两个数据库的用户名和密码都是homestead/secret。
文档位于:https://laravel.com/docs/5.6/homestead
更新:
您还可以授予用户使用以下工具玩数据库的权限:
cczfrluj4#
您可以通过缓存配置来解决问题:
slhcrj9b5#
cd进入你的家园目录
跑
vagrant ssh
跑php artisan migrate