Skip to content

无法使用含@符号的密码连接到数据库 #51

@jianguyuxing

Description

@jianguyuxing

我的数据库密码中含有特殊字符,如!@&三个符号。连接到mcp server后,执行sql查询时,提示
比如用户名是read_user,密码使用的是 1!C11@kZ&aFZ7JFD

ERROR:mysql_mcp_server_pro.utils.execute_sql_util:未知错误: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'kZ&aFZ7JFD@172.16.152.19' ([Errno 11003] getaddrinfo failed)")

(用相同的用户名密码在navicat等工具是可以正常连接查询数据库的。)

目前怀疑是无法正确处理含@符号的env文件中的密码.(在MYSQL_PASSWORD=后面加单引号或双引号包裹或者不用引号包裹都不行)

因为当我换了一个无特殊字符的错误密码时,提示的是其他错误,但在@面前正确的展示了用户名read_user。
(ERROR:mysql_mcp_server_pro.utils.database_pool:Failed to acquire database connection: (pymysql.err.OperationalError) (1045, "Access denied for user 'read_user'@'192.168.1.1' (using password: YES)")
(Background on this error at: https://sqlalche.me/e/20/e3q8)
ERROR:mysql_mcp_server_pro.utils.execute_sql_util:从连接池获取数据库连接失败: (pymysql.err.OperationalError) (1045, "Access denied for user 'read_user'@'192.168.1.1' (using password: YES)")
(Background on this error at: https://sqlalche.me/e/20/e3q8))

暂时换了一个密码用着,含有*,可以连接查询

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions