我有一个问题,一个新的Laravel项目(5.8)将无法连接到一个非本地数据库。我继续得到“拒绝用户访问.”错误。我知道配置是正确的,因为我有另一个项目运行在5.6中,用相同的配置连接到同一个数据库,而且它可以工作。看来,一旦我使用了“localhost”以外的主机名,它就会中断。它在本地工作,直到我试图连接到另一个非本地数据库。
我相信Laravel没有正确地接受主机名。我已经把所有的东西都复习过了,没有运气。访问拒绝错误总是显示项目所在机器的相同本地主机名,而不是env中的远程主机名,因此我假设它正试图连接到该主机。关于如何解决这个问题,有什么想法吗?我不知所措,不知该去哪里。
提前感谢!
编辑:我知道肯定没有配置错误、IP访问错误或缓存错误,因为我已经排除了所有这些可能的问题(听起来像是这些问题之一)。我的env和错误在下面(任何以" My“开头的内容都是我为了安全而更改的正确信息):
DB_CONNECTION=mysql
DB_HOST=mysql.myURL.com
DB_PORT=3306
DB_DATABASE=myDbName
DB_USERNAME=myDbUsername
DB_PASSWORD=myDbPasswordSQLSTATE[HY000] [1045] Access denied for user 'myDbUsername'@'NOTmysql.myURL.com' (using password: YES) (SQL: select count(*) as aggregate from `myTable`)错误中的NOTmysql.myURL.com实际上是网站正在运行的服务器的本地主机名,但myDbUsername是我在配置中设置的用户名。
发布于 2019-05-29 05:53:42
1.转到.env文件并检查数据库配置。
DB_HOST=localhost
DB_DATABASE=laravelDb
DB_USERNAME=root
DB_PASSWORD=null2.然后重新启动apache服务器并刷新页面。
3.退出/关闭并重新运行命令
php artisan serve4.清除旧的配置缓存和配置文件。
php artisan config:clear
php artisan cache:clear现在你的错误应该消失了。
https://stackoverflow.com/questions/56353604
复制相似问题