首页 > 解决方案 > Php致命错误:未捕获的PDOException:SQLSTATE [HY000] [1045]用户'fobos'@'localhost'的访问被拒绝(使用密码:是)

问题描述

我在连接到 Mysql 数据库(v5 和 v8)时遇到问题。如果用户是 root 没关系,但如果我创建用户 'fobos' 我有连接错误 1045(错误消息PDOException: SQLSTATE[HY000] [1045] Access denied for user 'fobos'@'localhost' (using password: YES) in vms\public\staff\visitors\vms.php on line 14)。我不知道为什么会这样。

Mysql -> 创建用户 fobos

SELECT user, host FROM mysql.user

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| debian-sys-maint | localhost |
| fobos            | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

 CREATE USER 'fobos'@'localhost' IDENTIFIED BY '$zP_jaGA5xAE@"8~7TpdM';
    
 GRANT ALL PRIVILEGES ON visitor_managment_system.*
        TO 'fobos'@'localhost'
        IDENTIFIED BY '$zP_jaGA5xAE@"8~7TpdM';

php

   public function __construct() {
    
        $this->connect = new PDO("mysql:host = localhost; dbname = visitor_managment_system","fobos", '$zP_jaGA5xAE@\"8~7TpdM');
    }

标签: phpmysql

解决方案


在 mysql cli 中尝试 FLUSH PRIVILEGES 命令


推荐阅读