【发布时间】:2016-01-15 08:36:54
【问题描述】:
我正在使用 Laravel 5.1,试图在我的本地计算机上运行 php artisan migrate。我使用远程数据库的凭据设置了我的 .env 文件。
但是,在运行时,我得到一个错误(为了安全,替换了真实的细节):
Access denied for user 'user'@'44.55.66.77' to database 'db_laravel'
似乎出于某种原因,它正试图在我的本地 IP(44.55.66.77)上运行命令,而不是远程数据库。我已经尝试过允许从我的 IP 远程访问数据库,但是我仍然遇到同样的问题。
我也已经尝试使用其 IP 连接到数据库,但无济于事。
提前感谢您的帮助!
更新:好的,我阅读了一些主机的文档,并尝试使用 % 作为通配符来允许任何 IP 访问数据库。我现在得到Access denied for user 'user'@'%' to database 'db_laravel'。但是,仍然不确定发生了什么。
【问题讨论】:
-
用户是否允许远程访问?你用的是什么端口?数据库访问权限比拥有用户名、密码和数据库多一点
-
@EliasVanOotegem 是的,正如我提到的,我给了用户远程访问权限。我应该在 Laravel 的
.env文件中使用端口吗? -
您是否刷新了权限?是否暴露了默认的 MySQL 端口(3306)? PS:有一个 DBA 站点处理访问设置和 DB 配置...该站点可能更适合您的问题
-
@EliasVanOotegem MySQL 的一切都已按应有的方式设置。我不明白 Artisan 如何尝试连接到我的本地 IP 而不是我的数据库,情况应该如此。我认为它甚至无法尝试连接到数据库。
-
您是否在 env 文件中将
MYSQL_HOST设置为远程主机?
标签: php mysql laravel laravel-5.1 laravel-artisan