gpt4 book ai didi

php - PHP与MYSQL连接拒绝权限问题

转载 作者:行者123 更新时间:2023-11-29 09:49:35 24 4
gpt4 key购买 nike

我正在尝试使用 PHP 连接 CRUD Simple,连接 MySQL 中的数据库。问题是,在 mysql_connect 函数中,在主机变量中,如果我传递字符串 localhost ,它会连接并显示数据库的信息。问题是当我输入MySQL数据库所在主机的IP时,它显示权限被拒绝。我已经使用以下命令将权限发送给用户 carlos:

GRANT ALL PRIVILEGES ON * . * TO 'carlos'@'%';

这是连接代码,其余代码不影响,因为这组是程序的第一行:

$link = mysqli_connect("192.168.0.18:3306", "carlos", "abc123", "distribuidos") or die ('Error. ' . mysqli_connect_error());

使用本地主机,连接工作:

$link = mysqli_connect("localhost", "carlos", "abc123", "distribuidos") or die ('Error. ' . mysqli_connect_error());

应该注意的是,我还使用已打开的端口配置了防火墙,在本例中为 3306,如果我使用命令 mysql -u carlos -h 192.168.来自另一台机器的 0.18 -p 连接我没有问题。

我使用的是 php 7.3 和 CentOS 7。

解决方案

我的解决方案是在 Linux 上执行下一个命令:sudo setebool -P httpd_can_network_connect 1

最佳答案

您可以检查的三件事

  1. 请检查您的端口是否打开

  • 删除/etc/mysql/my.cnf 中的绑定(bind)地址 127.0.0.1
  • apache 未配置为外部访问。尝试sudo setsebool -P httpd_can_network_connect 1
  • 关于php - PHP与MYSQL连接拒绝权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55036851/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com