Apache,PHP,MySQL,PDO,权限被拒绝,laravel

Posted

技术标签:

【中文标题】Apache,PHP,MySQL,PDO,权限被拒绝,laravel【英文标题】:Apache, PHP, MySQL, PDO, Permission denied , laravel 【发布时间】:2016-04-13 01:13:24 【问题描述】:

我正在开发一个有趣的小型 php Web 应用程序(我的重复日常任务的管理器),主要用于练习。 “生产”服务器有点限制,我无法在那里查看 httpd(Apache)的错误日志,所以我将自己的本地 httpd 设置为开发服务器(很有意义)。但是,我的 Web 应用程序使用 mysql 数据库。我最终会创建一个本地的,但我想,为了让事情更容易开始,我会使用远程的。 SQLSTATE[HY000] [2002] Permission denied

这是每次我尝试从本地 httpd 运行 Web 应用程序时返回的结果。我正在使用 PHP 的 PDO 数据库接口和它的 mysql 驱动程序,它在部署在远程服务器上时可以工作。我确保我的远程服务器对我的本地用户具有权限。我测试了从我的本地机器从 mysql 客户端进行的连接,它工作正常。我从命令行测试了 PHP 连接语句并且......它工作了。它只会在 Web 应用程序中运行时引起问题。

请告诉我如何解决这个问题。这是我遇到错误的网站pickprogress.com

【问题讨论】:

也许在 localhost 你有 "user: root; password: ;"在生产中你有“用户:普通用户;密码:asdlk2423dgfgklkl”,你不改变这些参数?显示更多代码以提供帮助 能否包含返回错误的代码? 不,我正在尝试解决这个问题,因为过去 6 小时检查了每一件事。将主机名更改为 127.0.0.1 检查用户名和密码。如果用户名和密码错误,那么它会给出另一个异常,而不是这个 您是否转发过此链接? ***.com/questions/20723803/… 登录到您的 mysql 实例,并检查您尝试连接的用户所授予的权限。我认为用户可能仅限于来自特定 IP 的连接,因此不会接受来自本地的连接。 【参考方案1】:

一些不同的服务器提供商为我们提供了他们的数据库服务器名称。而不是写 localhost127.0.0.1 我们必须写他们给定的服务器名称。

自从过去 8 小时以来,我一直在尝试解决这个问题,但没有找到单一的解决方案,但无论如何我现在已经解决了。

【讨论】:

以上是关于Apache,PHP,MySQL,PDO,权限被拒绝,laravel的主要内容,如果未能解决你的问题,请参考以下文章

CentOS8 安装部署Apache+Php+MariaDB(pdo扩展)

使用 PDO 连接 Mysql 数据库不起作用

PHP系列数据库抽象层pdo

PHP中PDO_MYSQL扩展安装问题error: mysql configure failed.

ubuntu 上php-7.0.7怎么添加pdo扩展

已加载 PDO 和 pdo_mysql 但未找到类