很多人对 SQLite 的印象只有一句话:
“轻量数据库,适合小项目。”
但说实话,这么理解它,太低估了。
SQLite 不是“玩具数据库”,
它是一个嵌入式数据库引擎,而且被广泛用于:
- 手机系统
- 浏览器
- IoT 设备
- 桌面应用
- 本地缓存系统
很多时候,你不需要 MySQL,也不需要 PostgreSQL。
![]()
截图引用官网
一个 .db 文件就够了。
下面是几个我觉得被严重低估的用法。
1️⃣ 本地数据分析临时仓库
很多人做数据分析,流程是:
CSV → pandas → 内存操作
但当数据一大,内存就顶不住了。
这时候你完全可以:
SQLite3 data.db.mode csv.import data.csv table_name然后直接:
SELECT col1, COUNT(*)FROM table_nameGROUP BY col1;优点很明显:
- 不用搭数据库服务
- 不用开端口
- 不用装一堆东西
- SQL 直接跑
单文件数据库,非常适合临时数据分析。
尤其在服务器上做脚本处理时,比起连远程数据库,SQLite 更干净。
2️⃣ 应用级缓存层
很多项目上 Redis 只是为了:
- 临时存储
- 缓存接口结果
- 存一些配置
但如果你是单机应用,完全可以用 SQLite。
优势:
- 持久化天然存在
- 无需单独部署
- 支持事务
- 查询能力远强于简单 KV
比如做一个本地 API 缓存:
CREATE TABLE cache ( key TEXT PRIMARY KEY, value TEXT, expired_at INTEGER);小工具、小系统,够用而且稳定。
3️⃣ 本地日志分析工具
很多人用文本文件记日志,然后用 grep 查。
但当日志变复杂后,可以直接导入 SQLite。
CREATE TABLE logs ( level TEXT, message TEXT, created_at DATETIME);然后:
SELECT level, COUNT(*)FROM logsGROUP BY level;统计效率比扫文件高得多。
尤其在调试阶段,SQLite 是一个非常好的“临时日志仓库”。
4️⃣ 单机 Web 应用数据库
很多人做小 Web 项目时第一反应是:
“要不要上 MySQL?”
其实你可以先问自己:
- 并发高吗?
- 有多实例吗?
- 要分布式吗?
如果答案都是“没有”,那 SQLite 完全够用。
很多现代框架都原生支持 SQLite:
- Django
- Flask
- Laravel
- Node ORM
- Go ORM
单机部署 + Docker 容器,SQLite 特别适合。
甚至备份都简单:
cp data.db backup.db结束。
5️⃣ 配置中心(轻量替代)
很多系统为了存配置:
- 搭一个数据库
- 或者写 JSON 文件
SQLite 其实是更优解。
你可以:
CREATE TABLE configs ( name TEXT PRIMARY KEY, value TEXT);支持:
- 查询
- 更新
- 事务
- 条件筛选
而且结构清晰,比散落 JSON 文件好维护。
6️⃣ 跨平台数据文件
SQLite 最大的优点:
数据库就是一个文件。
这意味着:
- 可直接打包进应用
- 可随应用发布
- 可跨系统迁移
- 不依赖数据库服务
在桌面工具开发、CLI 工具开发中,非常好用。
它什么时候不适合?
也要说清楚边界:
❌ 高并发写入
❌ 分布式部署
❌ 大规模数据(几十 GB 以上)
❌ 需要复杂权限体系
SQLite 是单机数据库,不是集群数据库。
一句话总结
SQLite 不是“小数据库”, 它是“单机场景下最优雅的数据库”。
很多项目上 MySQL,是因为“习惯”。
但在很多小系统里,SQLite 更简单、更干净、更省事。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.