Mysql SQLSTATE[HY000][2002]连接被拒绝(SQL:select*from`posts`)
当我试图从数据库Mysql SQLSTATE[HY000][2002]连接被拒绝(SQL:select*from`posts`),mysql,laravel,laravel-5,Mysql,Laravel,Laravel 5,当我试图从数据库(Post::all())获取数据时,在laravel中获取此错误。迁移效果很好 它创建表列,但不起作用。您必须使用这些模板默认变量。对于mysql DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=yourdatabasename DB_USERNAME=root DB_PASSWORD=null 无论何时对.env文件进行任何更改,都必须使用“php artisan serve”命令重新启动服务器
(Post::all())
获取数据时,在laravel中获取此错误。迁移效果很好 它创建表列,但不起作用。您必须使用这些模板默认变量。对于mysql
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=yourdatabasename
DB_USERNAME=root
DB_PASSWORD=null
无论何时对.env文件进行任何更改,都必须使用“php artisan serve”命令重新启动服务器。否则更改将不会反映出来。是否正确.env文件?是的,这就是迁移工作的原因。将
DB_HOST
从127.0.0.1
更改为localhost
尝试dd($\u server)
并确认您的环境变量都在其中。确保您在与问题所在环境相同的环境中运行该命令,例如,如果问题发生在web请求上,请尝试在web请求中运行该命令,以确认.env设置已正确导出显示您的.env
设置超出此限制,不起作用。我在.env文件中添加了DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
,现在我得到了一个错误SQLSTATE[HY000][1045]拒绝用户'homestead'@'localhost(使用密码:YES)(SQL:select*from'posts')
。我不知道从何处获得homestead用户。这些是laravel默认值。但您需要创建自己的数据库。之后,这些信息将更新。你为你工作了吗?如果你做了php artisan迁移并且它工作了,你的env变量就可以了,但是拒绝用户访问使我相信你有不正确的凭据来访问数据库。通过重新启动服务器php artisan serve
解决了这个问题。谢谢