通过本地主机连接到数据库时出现权限被拒绝错误
在尝试使用 PHP 连接到 MySQL 数据库时,用户经常会遇到可怕的情况执行时出现“错误:无法连接到 MySQL。调试 errno:2002 调试错误:权限被拒绝”问题尽管在命令行上成功执行,但仍在本地执行脚本。
深入研究问题
在调查这种令人费解的二分法后,发现 SELinux 安全策略是潜在的罪魁祸首。默认情况下,“httpd_can_network_connect_db”策略处于禁用状态,从而阻止 Web 服务器与远程数据库建立连接。
验证策略
要确认此假设,执行以下命令:
getsebool -a | grep httpd
如果“httpd_can_network_connect_db”设置为“关闭”,继续执行以下解决方案。
解决问题
要纠正这种情况,必须永久启用该策略。这是使用以下命令实现的:
setsebool -P httpd_can_network_connect_db 1
通过允许 Web 服务器与远程数据库通信,此修改解决了权限被拒绝错误,为 Web 应用程序内的无缝数据库连接铺平了道路。
以上是为什么在本地使用 PHP 连接到 MySQL 数据库时出现“权限被拒绝”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!