0

我正在 MAMP 环境中处理 MAC。所以当我尝试连接到数据库时,我得到了这个错误

$this->db = mysqli_connect('localhost', 'root', '');

我可以以 root 用户身份使用 PhpMyAdmin 登录。

mysqli_connect(): (28000/1045): Access denied for user 'root'@'localhost' (使用密码: YES)

我的root用户是这样设置的

user: root
machine: localhost
password: no
global rights: ALL PRIVILEGES
grant: yes

有谁知道如何解决这个问题?

4

2 回答 2

1

此处的 PHP 手册介绍了密码字段:

如果未提供或为 NULL,MySQL 服务器将尝试根据那些没有密码的用户记录对用户进行身份验证。这允许以不同的权限使用一个用户名(取决于是否提供了密码)。

所以,要么做mysqli_connect($host, $user);要么mysqli_connect($host, $user, null);

于 2013-08-06T14:26:21.743 回答
0

您必须在没有密码参数的情况下调用 mysqli_connect,否则 php 会尝试使用空字符串作为密码对用户进行身份验证。尝试

mysqli_connect($host, $user);

只有,没有''.

于 2013-08-06T14:24:34.010 回答