2. 关系型数据库汇总
关系型数据库(Relational Database)是最常用的数据存储方式,使用结构化的表格组织数据,遵循 ACID 原则,适合强一致性需求的系统。
📌 主流 关系型数据库对比
数据库 | 类型 | 特点 | 典型场景 |
---|---|---|---|
MySQL | 开源 | 快速、轻量、生态完善 | Web 应用、CMS |
PostgreSQL | 开源 | 功能强大,支持地理数据 | 金融、电信、数据分析 |
MariaDB | 开源 | MySQL 分支,支持更多插件 | 替代 MySQL |
Oracle DB | 商用 | 企业级功能强,事务管理优 | 金融、电网、ERP |
SQL Server | 商用 | 与 .NET 整合紧密 | 企业内网系统、报表平台 |
SQLite | 开源 | 嵌入式、免安装 | 移动端、IoT、前端缓存 |
Amazon Aurora | 商用云 | 云原生优化,兼容 MySQL/PG | 微服务、SaaS 平台 |
🔄 不同数据库版本对比
MySQL 常用版本差异
版本 | 特性 |
---|---|
5.5 | 默认引擎切换到 InnoDB |
5.6 | 支持全文索引,性能提升 |
5.7 | JSON、虚拟列、GIS |
8.0 | CTE、窗口函数、安全增强 |
PostgreSQL 常用版本差异
版本 | 特性 |
---|---|
9.x | JSON/JSONB,索引优化 |
10 | 分区表、逻辑复制 |
11~15 | 并行处理、统计增强、支持存储过程 |
SQL Server 主要演进
版本 | 特性 |
---|---|
2012 | AlwaysOn、Columnstore |
2016 | JSON 支持 |
2017 | 支持 Linux |
2019/2022 | 混合云、图数据、Big Data Cluster |
🧠 选型建议
- 通用推荐
- 高级分析
- 大企业系统
tip
中小型项目优先考虑 MySQL,兼容性高、文档丰富,学习成本低。
info
PostgreSQL 提供更丰富的数据类型和查询优化能力,适合复杂场景。
caution
Oracle 和 SQL Server 提供完整企业级解决方案,但成本较高,需评估许可和维护开销。
💻 示例:连接 PostgreSQL
# 使用 psycopg2 连接 PostgreSQL
import psycopg2
conn = psycopg2.connect(
dbname="mydb",
user="admin",
password="secret",
host="localhost"
)
cursor = conn.cursor()
cursor.execute("SELECT * FROM users;")
rows = cursor.fetchall()
print(rows)