Windows 安装 PostgreSQL18 超详细保姆级教程
🟦 Windows 安装 PostgreSQL18 超详细保姆级教程
适用于:Windows 10 / 11
PostgreSQL 版本:18(同样适用于 15、16、17 等版本)
包含内容:
✔ PostgreSQL Server
✔ pgAdmin 4(图形管理工具)
✔ Stack Builder(扩展安装器)
✔ pgAgent(定时任务,可选)
✔ pgBouncer(连接池,可选)
✔ 初次连接、切换中文、创建 DB/schema/user 全流程
PostgreSQL 是一款 免费、开源、稳定、支持事务的强大数据库,在工业自动化、MES、SCADA、设备数据采集、工控软件、企业应用等领域都有非常广泛的使用。
但 PostgreSQL 在 Windows 上的安装步骤较多,新手常常容易:
- 不知道怎么选安装组件
- 不确定哪个密码是数据库密码
- pgAdmin 启动后看不到服务器
- psql 命令不能用
- Stack Builder 里一堆扩展不会选
- Schema 和 Database 搞不清楚
- 权限设置不正确导致程序无法访问数据库
为此,我整理出这篇 最全面、最清晰、完全不踩坑的保姆级教程,
你只需要跟着本文一步步操作,就能在 Windows 上成功安装并使用 PostgreSQL。
无论你是后端开发、桌面软件开发、工业软件工程师,还是只是想学习 PostgreSQL,都可以把本文当作一份完整的安装指南。
🟩 1. 下载 PostgreSQL 安装包
打开官方 PostgreSQL 下载页面:
👉 https://www.postgresql.org/download/
进入后选择:
Windows → Download the installer
系统会跳转到 EDB 下载站点。
选择最新版本(如 PostgreSQL 18):
选择 Windows x86-64 下载。
下载得到一个安装程序,例如:
postgresql-18.x-windows-x64.exe



🟩 2. 运行安装程序(一步步安装)
双击运行安装程序,会看到 PostgreSQL 安装向导。
✔ 第 1 步:欢迎界面
直接 Next

✔ 第 2 步:选择安装目录
一般保持默认:
C:\Program Files\PostgreSQL\18\
也可自定义路径,例如 D 盘。

✔ 第 3 步:选择组件(建议全选)
- ✔ PostgreSQL Server(必须)
- ✔ pgAdmin 4(管理工具)
- ✔ Stack Builder(可选,但建议保留,用来装 pgAgent / pgBouncer)
- ✔ Command Line Tools(命令工具,建议勾选)
点击 Next

✔ 第 4 步:选择数据库数据目录
默认即可:
C:\Program Files\PostgreSQL\18\data\

✔ 第 5 步:设置数据库超级用户密码(非常重要)
这个密码就是用户:postgres 的密码
一定要记住!

✔ 第 6 步:设置端口号
默认 PostgreSQL 使用:
5432
建议保持不变。

✔ 第 7 步:选择 Locale(地区/语言)
选择:
DEFAULT
即可。

✔ 第 8 步:安装概要确认
点击 Next

✔ 第 9 步:开始安装
整个过程需要几分钟。
安装完成后会提示:
✔ 是否启动 Stack Builder(安装附加组件)
可以保留勾选,点 Finish。



📌 测试 PostgreSQL 是否正常工作
打开 CMD 或 PowerShell,输入:
& "C:\Program Files\PostgreSQL\18\bin\psql.exe" --version
& "C:\Program Files\PostgreSQL\18\bin\psql.exe" -U postgres

🟩 3. 使用 Stack Builder(可选)
安装 PostgreSQL 完成后,如果勾选了 “Stack Builder”,会自动启动一个附加组件安装器。
它可以帮助我们安装:
- 扩展工具(如 pgAgent 定时任务)
- 数据库驱动(ODBC/JDBC/Npgsql 安装包)
- 额外数据库/扩展(如 PostGIS)
- Web 开发环境等
👉 重点:Stack Builder 里的东西都不是必须装的,
本教程只是 演示安装了 pgAgent(用于定时任务),其他组件均保持不装或按需了解。
🔷 3.1 快速选择结论(适合工业自动化)
如果你的场景和我类似:本机开发 + 工控/设备数据采集 + C# 程序连接 PostgreSQL,
可按下表作为“懒人配置”参考:
| 分类 | 是否推荐安装(本教程场景) | 本教程示例选择 | 说明 |
|---|---|---|---|
| Add-ons, tools and utilities | 🟡 仅 pgAgent 可考虑 | ✅ 安装了 pgAgent | 只建议安装 pgAgent,其它一般不用 |
| Database Drivers | 🔴 一般不需要 | ❌ 全部不选 | .NET 用 NuGet 安装 Npgsql 即可 |
| Database Server | 🔴 不要选 | ❌ 不选 | 这里是再装其它版本 PostgreSQL,易混乱 |
| Registration-required and trial products | 🔴 不建议 | ❌ 不选 | 企业版/商业组件,需要注册/授权 |
| Spatial Extensions(PostGIS) | 🔴 工控场景基本不用 | ❌ 不选 | 做 GIS/地图/定位才需要 |
| Web Development | 🔴 不建议 | ❌ 不选 | 给 PHP/Apache 环境用,非 Web 开发可忽略 |
✅ 总结一句话:
普通 C# 桌面/工控项目:最多只装一个 pgAgent,其它一律可以跳过。
🔷 3.2 Add-ons, tools and utilities(附加工具与实用程序)
这一类里比较重要的两个名字:
🔹 pgAgent(定时任务调度器)
作用类似于:
- SQL Server Agent
- Windows 计划任务 + SQL 执行器
可以用来:
- 定时执行 SQL(清理历史数据、写入统计结果)
- 定时备份数据库
- 定时跑脚本(SQL/Bat/Python 等)
👉 如果你 有“定时执行脚本/SQL”的需求,非常推荐安装 pgAgent。
👉 本教程已经实际安装并使用 pgAgent。
安装 pgAgent 时会出现几个关键界面:
-
Welcome to pgAgent Setup Wizard

→ 直接 Next
-
Upgrade Mode(升级模式)

- 如果是第一次安装,保持默认即可(不要勾选 Upgrade)
- 如果是以前装过 pgAgent,可以勾选这个来升级
-
PostgreSQL 连接信息

一般这样填:
Host: localhost
User: postgres
Password: 你安装 PostgreSQL 时设置的密码
Port: 5432(默认端口)
-
pgAgent Service Account(Windows 服务账号)

这里是创建一个 Windows 本地服务账号,用于运行 pgAgent 服务。
⚠️ 非常重要:
- 这里的 用户名/密码是 Windows 账号,不是 PostgreSQL 密码
- 密码必须满足 Windows 复杂度(大小写 + 数字,最好再加符号)
可以参考这样填写:
Operating system username: postgres System user password: 自己设置一个复杂密码,例如 Pga@2025! Retype password: 再输一遍📌 注意两点:
- pgAgent 会在 Windows 里创建一个服务(类似
pgAgent - PostgreSQL Job Scheduler),需要此账号运行 - 这个账号仅用于服务,不会影响你日常登录 Windows
-
完成安装

安装完成后,pgAgent 会在你的数据库中创建一个
pgagentschema,用来存放作业配置、日志等。之后你就可以在 pgAdmin 中看到:
Servers └ PostgreSQL 18 └ pgAgent Jobs通过它来创建定时任务。
🔹 pgBouncer(连接池工具)
- 这是一个 连接池中间件,用于高并发网站/API,减少与数据库的物理连接开销。
- 一般部署在服务器上,与 Web 服务配合使用。
对于:
- 本地开发
- 工业自动化系统
- C# 桌面程序
- 采集软件
👉 通常 完全不需要 pgBouncer,直接让程序连 PostgreSQL 就可以了。
建议:
💡 如果你不是在做高并发 Web 服务,不要勾选 pgBouncer,以免增加不必要的复杂度。
🔷 3.3 Database Drivers(数据库驱动)
这一类包括:
- Npgsql(.NET 用的 PostgreSQL 驱动)
- pgJDBC(Java 驱动)
- psqlODBC(ODBC 驱动,32/64 位)
在我们的场景中:
⭐ Npgsql(C#/.NET 场景)
-
虽然这里有一个 Npgsql 选项,但 不建议通过 Stack Builder 安装。
-
.NET 世界推荐的标准做法是:
👉 在 Visual Studio / Rider 里通过 NuGet 安装:
Install-Package Npgsql或在 .csproj 中引用
Npgsql包。
pgJDBC
- Java 用,只做 .NET / 工控软件可以忽略。
psqlODBC
- 用于 Excel / BI 工具 / 通过 ODBC 直连 PostgreSQL。
- 一般桌面软件更推荐用专用驱动(如 Npgsql),不需要额外装 ODBC。
结论:
🔴 本教程场景下,Database Drivers 这一整类都可以不选。

🔷 3.4 Database Server(数据库服务)
这一类会列出:
- PostgreSQL v13
- PostgreSQL v14
- PostgreSQL v15
- PostgreSQL v16
- PostgreSQL v17
- PostgreSQL v18(当前已安装)
它的作用是:再次安装不同版本的 PostgreSQL,而不是为现有版本加插件。
⚠️ 一台机器装多个版本 PostgreSQL:
- 需要不同端口
- 服务名不同
- 管理上更复杂,很容易搞混
结论:
🔴 正常情况下不要在这里再勾选任何 Database Server 项。

🔷 3.5 Registration-required and trial products(商业产品)
这一类包括:
- Migration Toolkit
- Enterprise Manager
- Replication Server
- 其他 EDB 商业组件
这些是 EnterpriseDB 提供的 商业/企业级产品,通常需要:
- 付费授权 或
- 注册试用
用途包括:
- 数据库集群
- 企业监控
- 高级复制方案
- 自动化迁移工具
对于个人开发者 / 中小项目 / 工控软件来说:
🔴 完全用不到,建议全部不选。

🔷 3.6 Spatial Extensions(空间扩展)
代表性组件:PostGIS 3.6
PostGIS 是 PostgreSQL 的 GIS 空间扩展,主要用于:
- 地图数据存储(点/线/面)
- 经纬度、坐标计算
- 空间查询、缓冲区分析
- GPS/北斗定位、地理围栏
适用场景:
- 地理信息系统(GIS)
- 地图服务平台
- 轨迹分析
- 空间统计
如果你的业务不是地图/GIS,而是工业自动化、视觉检测、普通业务系统:
🔴 可以完全不装 PostGIS。

🔷 3.7 Web Development(Web 开发组件)
典型组件:PEM-HTTPD(Apache)
主要用途:
- 搭建基于 Apache 的 Web 环境
- 提供 Web 管理界面或与 PostgreSQL 集成的 Web 服务
如果你:
- 不是做 PHP / Apache 网站
- 主要用的是 C# / 桌面应用 / 工控软件
那么:
🔴 这部分可以全部忽略,不建议安装。

🔷 3.8 本节小结
-
Stack Builder 是“附加组件商店”,不是 PostgreSQL 必需步骤
-
本教程实际场景(工业自动化 + C#)下:
- ✅ 推荐:pgAgent(定时任务)
- 🟡 了解:pgBouncer(高并发时可考虑,通常不必)
- 🔴 其余种类(Database Drivers / Database Server / Registration / Spatial / Web)全部可以不装
-
安装 pgAgent 时要特别注意:
- Windows 服务账号密码 ≠ PostgreSQL 数据库密码
- 密码要符合 Windows 策略(大小写 + 数字)
🟩 4. 首次启动 pgAdmin 4
安装完成后在 Windows 菜单可以看到:
PostgreSQL 18
├ Application Stack Builder
├ pgAdmin 4
├ SQL Shell (psql)
├ Release notes
├ Documentation
点击 pgAdmin 4 启动。
🟩 5. 连接 PostgreSQL 数据库
pgAdmin 左侧会看到:
Servers
└ PostgreSQL 18
第一次连接会弹出密码输入框:
👉 输入在安装数据库时设置的 postgres 密码
可以勾选:
✔ Save Password
之后 pgAdmin 会成功连接数据库。


🟩 6. 设置 pgAdmin4 为中文界面(推荐)
pgAdmin 启动后:
顶部菜单:
File → Preferences
左侧找到:
Miscellaneous → User Interface
右侧 Language 选择:
Chinese (Simplified)
保存 → 重启 pgAdmin
界面即变为中文。


🟩 7. 创建第一个例子
安装好 PostgreSQL 并成功进入 pgAdmin 后,我们来创建自己的第一个数据库与用户账号,并为后续程序运行做好结构化准备。很多第一次接触 PostgreSQL 时会把 数据库(Database)、模式(Schema)、表(Table) 混在一起。这里我们会一步一步教你:创建数据库 → 创建用户 → 创建 Schema → 分配权限。
① 创建数据库
数据库名:dh_pecvd_db
CREATE DATABASE dh_pecvd_db;
② 创建用户 Program
CREATE USER Program WITH PASSWORD '123456';
可以改为更安全的密码。
③ 给用户 Program 权限(很重要)
让 Program 能连接该数据库:
GRANT CONNECT ON DATABASE dh_pecvd_db TO Program;
④ 切换到这个数据库
pgAdmin 左侧选中数据库 → 打开查询工具
或使用:
\c dh_pecvd_db
⑤ 创建 Schema:iorecord
CREATE SCHEMA iorecord AUTHORIZATION Program;
这句的意思:
- 创建 Schema:iorecord
- 该 Schema 的所有者 = Program(更安全)
⑥ 授权 Program 使用 Schema
如果上一步已经 AUTHORIZATION Program,就不用了。
如果不是 Program 创建的 Schema,则需要:
GRANT USAGE ON SCHEMA iorecord TO Program;
GRANT CREATE ON SCHEMA iorecord TO Program;
⑦ 给 Program 权限管理 Schema 中所有对象
让 Program 可以增删查改(普通权限,不是超级权限):
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA iorecord TO Program;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA iorecord TO Program;

🟩 8. 验证数据库是否可用
右键你的数据库:
查询工具(Query Tool)
输入 SQL 测试:
SELECT version();
能正常返回 PostgreSQL 版本,即表示安装成功!

🟩 9. 创建完后的最终结构
PostgreSQL 服务器
└── Database:dh_pecvd_db
└── Schema:iorecord(Program 拥有)
├── Tables(机器数据、记录等)
├── Views
├── Functions
└── Sequences
用户:
└── Program(只能访问自己数据库和自己 Schema,更安全)

🟦 全文总结
恭喜你!看到这里,你已经从零完成了 Windows 上 PostgreSQL 的完整安装流程,并成功掌握以下能力:
🎯 成功安装 PostgreSQL
你已经学会:
- 从官网下载安装包
- 一步步完成安装向导
- 选择正确的组件
- 设置数据库密码、端口、路径
- 通过 pgAdmin4 连接 PostgreSQL
🎯 可选组件如 Stack Builder / pgAgent / pgBouncer 的使用场景
你清楚了解:
- pgAgent:可用于未来的定时任务(如自动备份、统计任务)
- pgBouncer:高并发应用的连接池工具(可选)
- PostGIS 等扩展:必要时可安装
🎯 初次使用 PostgreSQL 的全部基础操作
文章已经带你完成:
- 设置 pgAdmin 中文界面
- 查看服务器
- 创建数据库
- 创建用户
- 了解 Database 与 Schema 的区别
- 创建自定义 Schema
- 分配权限
- 测试 SQL
- 验证安装成功
🎯 完成完整的业务数据库结构初始化
你已经拥有一个生产级的初始化结构:
数据库:dh_pecvd_db
Schema:iorecord(Program 拥有)
用户:Program(最安全的业务账号)
这为你的软件开发(特别是 C#、工业自动化、PLC 集成)打下非常稳固的基础。
🎯 后续你可以继续做的事情
如果你继续深入 PostgreSQL,你可以进一步学习:
- 如何创建表(表结构设计)
- 如何进行增删改查(CRUD)
- 如何备份与恢复数据库
- 如何优化查询效率
- 如何用 pgAgent 做自动化任务
- 如何用 C#(Npgsql)连接 PostgreSQL
- 如何创建视图、函数、触发器
- 如何设计生产级数据库架构
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)