Php “如何修复”;警告:mysqli::_construct():(HY000/1045):拒绝用户访问';用户'@';本地主机';(使用密码:是)";关于马科斯

Php “如何修复”;警告:mysqli::_construct():(HY000/1045):拒绝用户访问';用户'@';本地主机';(使用密码:是)";关于马科斯,php,mysql,xampp,atom-editor,Php,Mysql,Xampp,Atom Editor,当我尝试在XAMPP上连接到我的数据库时,会出现以下错误: 警告:mysqli::_construct():(HY000/1045):拒绝用户'user'@'localhost'的访问(使用密码:YES) 我已经创建了另一个用户,并用该用户登录到xampp。我使用Atom编辑器,现在在macOS Mojave上。这是我的密码- <?php $dbhost = "localhost"; $dbuser = "username"; $dbpass = "password"; $db =

当我尝试在XAMPP上连接到我的数据库时,会出现以下错误:

警告:mysqli::_construct():(HY000/1045):拒绝用户'user'@'localhost'的访问(使用密码:YES)

我已经创建了另一个用户,并用该用户登录到xampp。我使用Atom编辑器,现在在macOS Mojave上。这是我的密码-

<?php
 $dbhost = "localhost";
 $dbuser = "username";
 $dbpass = "password";
 $db = "dbname";


$conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n".mysqli_connect_error());
echo "Connected Successfully";
return $conn;

mysqli_connect_error();

?>


为了保密,我写了用户名和密码。在我的代码中,它被我的真实用户名和密码替换。这同样适用于错误消息中的'user'@localhost

转到您的phpadmin页面,检查存在于UserAccounts选项卡中的用户名和密码

我将使用以下用户作为示例user@localhost,密码为“password”

在MySQL中,用户由以下部分组成:

  • 用户名-“用户”
  • 密码-“密码”
  • 主机地址-“localhost”(通常是ip或主机名)
  • 使用这些凭据从localhost计算机连接将起作用,但如果从其他计算机连接,则不会连接

    我认为您应该对此进行进一步调试,看看如果从不同的机器(例如通过cli客户端)连接这些凭据,是否会得到一致的结果


    如果要从多台计算机连接,则需要创建具有不同主机地址的多个用户,或者需要具有通配符主机%的用户,例如user@%

    我已更新了问题。请检查2个可能的原因:密码错误或不允许此用户从本地主机连接<代码>127.0.0.1是另一回事。您需要
    'user'@'
    'user'@'localhost'
    这可能是因为我运行php代码和xampp的服务器是相同的吗?它们都在本地主机上运行:8080I检查过了。它显示相同的用户名和密码。它拥有授予您的所有特权在您的密码中使用特殊字符?不,它是大写和小写字母的混合体