PHP mysqli访问被拒绝,使用IP而不是计算机名

PHP mysqli访问被拒绝,使用IP而不是计算机名,php,mysql,mysqli,Php,Mysql,Mysqli,我是mysql和PHP新手 我正在尝试使用以下方式连接到mysql服务器: define("USER", "mghandi"); define("HOST", "mysql-host"); define("DATABASE", "dbnam"); define("PASSWORD", "pass"); $mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE); 我收到以下拒绝访问错误: Access denied for user 'mghand

我是mysql和PHP新手

我正在尝试使用以下方式连接到mysql服务器:

define("USER", "mghandi");
define("HOST", "mysql-host");
define("DATABASE", "dbnam");
define("PASSWORD", "pass");
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
我收到以下拒绝访问错误:

Access denied for user 'mghandi'@'abc12-345.mycompany.org' (using password: YES)
abc12-345是我的计算机名

我使用show GRANTS检查了mysql服务器上的访问

已为用户授予访问权限mghandi@67.890.%.%

我的计算机IP是67.890.127.100,因此我假设问题在于mysqli使用的是我的计算机名而不是我的计算机IP地址(例如mghandi@67.890.127.100可能会起作用,但它正在尝试连接mghandi@abc12-345.mycompany.org)。我如何解决这个问题

编辑:

连接是通过局域网进行的。mysql服务器位于我们公司网络上的服务器(称为“mysql主机”)上

用户设置为服务器名称 例如localhost。主机名是承载数据库的服务器的名称。如果您的数据库是本地托管的,请使用localhost

用户设置为服务器名称
例如localhost。主机名是承载数据库的服务器的名称。如果您的数据库是本地托管的,那么使用localhost

您不会显示正在定义的
HOST
,但我会使用127.0.0.1或localhost.no,使用
localhost
而不是127.0.0.1(尽管它们通常是相同的),我们需要了解一下您与mysql服务器之间的连接。它是在局域网上还是在互联网上?如果它在局域网上,你需要使用你主机的内部IP,而不是面向internet的IP,反之亦然。我要做的第一件事就是刷新特权。如果它们是由访问表的直接dml设置的,则服务器将忽略它们,直到重新加载特权。如果允许,我还会检查从本地主机会话登录,并确保密码匹配。您不会显示正在定义的
host
,但我会使用127.0.0.1或localhost。不,使用
localhost
而不是127.0.0.1(尽管它们通常是相同的)我们需要了解一下您与mysql服务器之间的连接。它是在局域网上还是在互联网上?如果它在局域网上,你需要使用你主机的内部IP,而不是面向internet的IP,反之亦然。我要做的第一件事就是刷新特权。如果它们是由访问表的直接dml设置的,则服务器将忽略它们,直到重新加载特权。如果允许的话,我也会检查从本地主机会话登录的情况,并确保密码匹配。你能进一步详细说明吗。