VSCode连接PostgreSQL必须安装SQLTools主体插件及SQLTools PostgreSQL Driver驱动,缺一不可;host须填127.0.0.1而非localhost,database必填有效库名,密码含特殊字符时用表单模式输入;连不上先验证pg_isready和pg_hba.conf配置,导出CSV前需设sqltools.resultsLimit为0并点击结果单元格激活导出按钮。

VSCode 本身不提供 PostgreSQL 连接能力,所谓“配置数据库环境”实际是装对扩展、填对参数、绕过几个默认陷阱的组合操作。直接上结论:用 SQLTools + SQLTools PostgreSQL Driver 是当前最可控、可复现、易排查的方案;其他单体插件(比如搜“PostgreSQL”排第一的那个)已停更或不支持导出全量结果,别碰。
必须装两个扩展,缺一不可
只装 SQLTools 主体,新建连接时会报 Driver not found: postgresql;只装驱动不装主插件,则根本没入口。两者关系是“运行时依赖”,不是可选组件。
- 在 VSCode 扩展市场搜
SQLTools,认准作者是mtxr(不是cweijan或其他同名插件) - 装完后,右下角状态栏会出现提示“Install Driver”,点它,选
PostgreSQL;或者按Ctrl+Shift+P输入SQLTools: Install Driver手动触发 - 装完驱动后务必重启 VSCode——否则侧边栏不会出现数据库图标,状态栏也不显示连接状态
host 填 127.0.0.1,不是 localhost
macOS 和 Linux 下 localhost 默认走 IPv6 的 ::1,而 PostgreSQL 服务若没显式监听 IPv6,就会卡在连接超时,错误里还看不到明确提示。Windows 虽然通常能通,但统一用 127.0.0.1 可避免跨平台协作时的配置漂移。
- 连接配置中
host字段填127.0.0.1,不是localhost -
port默认5432,改过就必须填对;database字段不能为空,哪怕只想连上看看有哪些库,也得填一个真实存在的库名(如postgres) - 密码含
@、/、:等字符时,别用 URL 格式连接(postgresql://...),老实用表单模式逐项填写
连不上?先查这三件事
报 Connection refused 或 password authentication failed,90% 不是密码错了,而是底层服务或权限没到位。
- 终端执行
pg_isready,返回accepting connections才算服务真在跑;Docker 用户记得docker ps看容器是否 up - 检查
pg_hba.conf是否有匹配本地连接的规则,例如:host all all 127.0.0.1/32 md5;改完要pg_ctl reload或重启服务 - 确认
psql -h 127.0.0.1 -U username -d dbname能在终端直连——如果命令行都连不上,插件肯定连不上,别浪费时间调配置
导出 CSV 前必做两件事
SQLTools 的“导出为 CSV”按钮默认只导当前加载的前 100 行,且字段不加引号、不转义换行符,真数据一导就乱。
- 进 VSCode 设置搜
sqltools.resultsLimit,设为0(表示不限制),否则导出永远只有前 100 行 - 导出前点进结果表格任意单元格,否则右上角的导出图标(向下箭头+表格)是灰色禁用状态
- 字段含逗号或换行时,别硬用 CSV——在导出弹窗里选
tsv(制表符分隔),更稳妥
最容易被忽略的是 pg_hba.conf 权限和 resultsLimit 设置:前者导致连都连不上,后者导致导出数据永远不对,但错误日志里都不报,只能靠经验排查。


















