pgAdmin 4连接远程PostgreSQL时出现'ServerManager'无'user_info'属性错误
解决pgAdmin 4连接远程PostgreSQL时出现
ServerManager' object has no attribute 'user_info'的问题 可行修复步骤
1. 核对连接配置细节
- 确认远程库的主机地址无拼写错误,是完整的IP或域名
- 检查端口号是否匹配(默认5432,部分课程库可能自定义端口)
- 验证目标数据库名称是否准确,部分课程库要求连接指定库而非默认的
postgres - 确保认证方式与网页bash/VSCode一致:如果用密码认证,pgAdmin里必须选“密码”,不要选“信任”或其他方式
2. 绕过pgAdmin的用户元数据检测
这个错误大概率是pgAdmin尝试读取远程服务器的用户权限元数据,但课程库权限不足导致的。可以:
- 创建连接时切换到**“高级”标签页,勾选“忽略用户缺失权限”**选项
- 若没有该选项,手动编辑连接配置文件:
- 找到pgAdmin存储目录:Windows是
%APPDATA%\pgAdmin,Linux是~/.pgadmin - 打开
servers.json,找到对应远程连接的配置项 - 添加
"ignore_user_missing_privileges": true到配置中,保存后重启pgAdmin
- 找到pgAdmin存储目录:Windows是
3. 使用DSN字符串直接连接
绕过图形界面的配置逻辑,直接用DSN创建连接:
- 在连接创建界面切换到**“DSN”**标签页
- 输入格式如下的DSN字符串:
postgresql://用户名:密码@主机地址:端口/数据库名 - 点击“测试连接”,成功后保存配置即可
4. 降级pgAdmin版本
若最新版pgAdmin和课程库的PostgreSQL版本存在兼容性问题:
- 卸载当前pgAdmin 4,下载安装稳定的旧版本(比如v6.x系列,而非最新的v7.x)
- 安装后不要恢复旧配置文件,重新手动创建远程连接
内容的提问来源于stack exchange,提问作者MIKKTTER
相关产品推荐
相关产品推荐

