跳到主要内容

数据库基础知识体系概览

什么是数据库?

数据库(Database) 是一个有组织地存储、管理和检索数据的系统。你可以把它想象成一个超级强大的 Excel 表格——但它能处理数百万行数据、支持多人同时读写、保证数据不会丢失。

在日常开发中,几乎所有的应用程序都需要数据库:

  • 电商网站需要存储商品信息、用户订单
  • 社交媒体需要存储帖子、评论、点赞
  • 银行系统需要存储账户余额、交易记录
一句话理解

数据库 = 数据 + 管理系统。数据是"内容",管理系统(DBMS)是帮你增删改查的"工具"。


为什么要学数据库?

无论你做什么方向的开发,数据库都是绕不开的核心技能:

角色为什么需要数据库知识
后端开发每天和数据库打交道,设计表结构、写 SQL、优化查询
前端开发理解数据结构有助于设计更好的 API、排查数据问题
数据分析师SQL 是吃饭的工具,数据仓库、ETL 都建立在数据库之上
运维/DBA数据库运维、监控、备份、性能调优是核心职责

在面试中,数据库相关的问题频率极高:


数据库的分类

按数据模型分

类型代表产品数据模型适用场景
关系型数据库(RDBMS)MySQL、PostgreSQL、Oracle二维表格(行+列)结构化数据、事务场景
文档数据库MongoDB、CouchDBJSON/BSON 文档灵活 Schema、内容管理
键值数据库Redis、MemcachedKey-Value 对缓存、会话管理
列式数据库ClickHouse、HBase列族存储OLAP 分析、大数据
图数据库Neo4j、ArangoDB节点+边社交网络、知识图谱
时序数据库InfluxDB、TimescaleDB时间戳+指标IoT、监控数据
向量数据库Milvus、Pinecone向量 EmbeddingAI 搜索、RAG

关系型 vs 非关系型

怎么选?
  • 需要事务保证(如转账、下单)→ 关系型数据库
  • 数据结构不固定、需要快速迭代 → 文档数据库
  • 需要极高读写速度 → 键值数据库(Redis)
  • 需要复杂分析查询 → 列式数据库

核心知识导航

本分类涵盖数据库的基础入门知识,帮你建立扎实的理论基础:

主题说明重要程度
关系模型表、行、列、主键、外键——关系型数据库的核心概念⭐⭐⭐⭐⭐
SQL 语法基础SELECT、INSERT、UPDATE、DELETE——数据操作的基本功⭐⭐⭐⭐⭐
数据类型整数、字符串、日期、JSON——选对类型很重要⭐⭐⭐⭐
数据库范式1NF/2NF/3NF/BCNF——如何设计不冗余的表结构⭐⭐⭐⭐⭐
ER 模型实体-关系图——数据库设计的可视化工具⭐⭐⭐⭐
约束与完整性主键、外键、唯一、非空——数据质量的守护者⭐⭐⭐⭐

面试考察重点

面试中数据库基础通常考查以下几个方面:

  1. 概念理解:什么是关系模型?什么是范式?ACID 是什么?
  2. SQL 能力:能否写出正确的查询语句?
  3. 设计能力:给你一个业务场景,你怎么设计表?
  4. 对比分析:MySQL vs PostgreSQL?SQL vs NoSQL?
面试高频

"数据库范式"和"关系模型"是面试中最基础也最常考的知识点。如果你说不清第三范式是什么,面试官会认为你基础不扎实。

相关链接