警告:mysqli::__construct(): (HY000/1045): 用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)
Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES)
当我开始使用 xampp 连接到我的数据库时,它不起作用并显示此错误:
警告:mysqli::__construct(): (HY000/1045):用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)
有人可以帮忙吗?
您可以通过命令行(或其他一些实用程序,例如 MySQL Developer)连接吗?
有几种可能性(可能更多,但为了时间的缘故):
- 您正在尝试输入错误的密码(MySQL 提供了关于如何重设密码的重要参考指南:https://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.html)
- 'root' 用户只允许使用 unix_socket 进行连接(这里是来自 MariaDB [MySQL 的一个分支] 的文档,描述了如何切换到本机密码身份验证而不是 unix_socket: https://mariadb.com/kb/en/library/authentication-plugin-unix-socket/#switching-to-password-based-authentication)
- 不允许 'root' 用户从 'localhost' 连接,并且必须来自其他 IP 地址(或套接字)(这里有一个很好的 SO 答案,关于如何允许 root 来自超过本地主机:MySQL root access from all hosts)
当我开始使用 xampp 连接到我的数据库时,它不起作用并显示此错误:
警告:mysqli::__construct(): (HY000/1045):用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)
有人可以帮忙吗?
您可以通过命令行(或其他一些实用程序,例如 MySQL Developer)连接吗?
有几种可能性(可能更多,但为了时间的缘故):
- 您正在尝试输入错误的密码(MySQL 提供了关于如何重设密码的重要参考指南:https://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.html)
- 'root' 用户只允许使用 unix_socket 进行连接(这里是来自 MariaDB [MySQL 的一个分支] 的文档,描述了如何切换到本机密码身份验证而不是 unix_socket: https://mariadb.com/kb/en/library/authentication-plugin-unix-socket/#switching-to-password-based-authentication)
- 不允许 'root' 用户从 'localhost' 连接,并且必须来自其他 IP 地址(或套接字)(这里有一个很好的 SO 答案,关于如何允许 root 来自超过本地主机:MySQL root access from all hosts)