PostgreSQL
PostgreSQL 数据库简介与部署指南
一、PostgreSQL 简介
什么是 PostgreSQL
PostgreSQL(简称 PG)是一个开源的对象关系型数据库(ORDBMS),由 PostgreSQL Global Development Group 持续维护。
官方网站:
PostgreSQL 诞生于 1986 年,经过近 40 年的发展,已经成为全球最流行的开源数据库之一,被广泛应用于:
企业级业务系统
金融系统
ERP系统
数据分析平台
GIS地理信息系统
AI知识库
向量数据库场景
目前很多云厂商均提供 PostgreSQL 服务,例如:
AWS RDS PostgreSQL
阿里云 RDS PostgreSQL
腾讯云 PostgreSQL
Azure Database for PostgreSQL
二、PostgreSQL 的特点
1. 开源免费
PostgreSQL 使用 PostgreSQL License 开源协议,类似于 BSD 协议。
特点:
免费商用
无授权费用
无功能限制
无商业版与社区版差异
2. 高度兼容 SQL 标准
PostgreSQL 是目前最接近 ANSI SQL 标准的开源数据库之一。
支持:
视图(View)
物化视图(Materialized View)
窗口函数(Window Function)
CTE(WITH)
递归查询
存储过程
触发器
例如:
WITH employee_cte AS (
SELECT * FROM employee
)
SELECT * FROM employee_cte;
3. 强大的事务能力
PostgreSQL 完整支持 ACID 特性:
| 特性 | 支持 |
|---|---|
| 原子性(Atomicity) | √ |
| 一致性(Consistency) | √ |
| 隔离性(Isolation) | √ |
| 持久性(Durability) | √ |
支持多种事务隔离级别:
Read Committed(默认)
Repeatable Read
Serializable
4. 丰富的数据类型
除基础类型外,还支持:
JSON
JSONB
UUID
ARRAY
XML
HSTORE
INET
CIDR
POINT
POLYGON
例如:
CREATE TABLE user_profile (
id SERIAL PRIMARY KEY,
profile JSONB
);
5. JSON 支持优秀
PostgreSQL 的 JSONB 类型是其核心优势之一。
示例:
SELECT *
FROM user_profile
WHERE profile->>'name' = '张三';
支持:
JSON索引
JSON查询
JSON统计分析
非常适合:
配置中心
文档系统
AI知识库
6. 全文检索能力
PostgreSQL 自带全文搜索功能。
示例:
SELECT *
FROM article
WHERE to_tsvector(content)
@@ plainto_tsquery('docker');
适用于:
文档系统
知识库系统
Wiki系统
MinDoc
7. 向量数据库支持
通过 pgvector 插件支持 AI 场景。
支持:
OpenAI Embedding
DeepSeek Embedding
Qwen Embedding
BGE Embedding
示例:
CREATE EXTENSION vector;
创建向量字段:
CREATE TABLE document_embedding (
id BIGSERIAL PRIMARY KEY,
embedding VECTOR(1024)
);
适用于:
AI问答
RAG知识库
相似度检索
智能搜索
三、PostgreSQL 与 MySQL 对比
| 项目 | PostgreSQL | MySQL 8 |
|---|---|---|
| 开源协议 | PostgreSQL License | GPL |
| SQL标准支持 | 非常完善 | 良好 |
| JSON能力 | 优秀 | 良好 |
| 全文搜索 | 强 | 一般 |
| GIS支持 | 优秀(PostGIS) | 一般 |
| AI向量库 | pgvector | 生态较弱 |
| 运维复杂度 | 中等 | 较低 |
| 社区资料 | 丰富 | 非常丰富 |
| 学习成本 | 中等 | 较低 |
| 互联网业务 | 广泛使用 | 广泛使用 |
| 企业级业务 | 非常适合 | 适合 |
四、适用场景
PostgreSQL 推荐用于:
企业应用
OA系统
ERP系统
CRM系统
文档系统
MinDoc
Wiki
Confluence替代方案
数据分析
BI平台
报表平台
AI知识库
LangChain
Dify
RAGFlow
FastGPT
GIS平台
地图系统
轨迹分析
空间数据分析
五、PostgreSQL 版本选择建议
| 版本 | 状态 |
|---|---|
| PostgreSQL 14 | 长期支持 |
| PostgreSQL 15 | 长期支持 |
| PostgreSQL 16 | 当前推荐 |
| PostgreSQL 17 | 最新版本 |
对于生产环境推荐:
PostgreSQL 16
原因:
稳定成熟
社区活跃
插件兼容性最好
支持 pgvector
六、部署方式选择
| 方式 | 推荐程度 | 场景 |
|---|---|---|
| RPM安装 | ★★★★☆ | 传统服务器 |
| 二进制安装 | ★★★★★ | 生产环境 |
| Docker部署 | ★★★★★ | 云原生环境 |
| Docker Compose部署 | ★★★★★ | 中小型生产环境 |
| Kubernetes部署 | ★★★★★ | 大规模生产环境 |
推荐:
测试环境:Docker
中小型生产:Docker Compose
企业生产:二进制部署或 Kubernetes 部署
七、本文档内容
本文档将介绍以下两种 PostgreSQL 部署方式:
PostgreSQL 二进制部署
PostgreSQL Docker部署
包括:
数据库安装
用户创建
数据目录规划
Systemd配置
Docker Compose配置
远程访问配置
MinDoc数据库创建
备份与恢复
性能参数优化
最后编辑:zws 更新时间:2026-06-06 22:06