第8章 备份恢复与安全


第8章 · 备份恢复与安全

章节摘要:机制讲完,本章解决交付问题:怎么备份不出错、怎么诊断有据可查、怎么加固不留暗门、怎么部署不留隐患。备份三招(backup API、VACUUM INTO、冷拷贝)各自的适用窗口,诊断工具箱从 CLI 到完整性校验的完整链路,安全加固的四个层面,以及嵌入部署从链接方式到升级策略的实战清单。本章与前七章的关系是"运维面":前面造好的机器,这里教你怎么安全地开、稳稳地修。

学习目标

读完本章,你应当能够:

  1. 在 backup API、VACUUM INTO、冷拷贝三种备份方式中为给定场景选型,并说明各自对并发、窗口、WAL 的要求。
  2. 用 CLI 与 PRAGMA 完成一次完整的健康检查:完整性校验、freelist 统计、WAL 状态核对。
  3. 列出 SQLite 安全加固的四个层面(注入面、文件权限、加密扩展、schema 纪律)及各自的落地手段。
  4. 对照三库的备份与权限模型,解释"文件即数据库"在运维上带来的独特简化与独特风险。
  5. 给出嵌入部署的完整清单:链接方式、线程模式、连接管理、升级策略、迁移预案。

核心概念速览

一句金句:SQLite 的运维哲学是"把服务端运维要建的平台,压缩成几条纪律"——没有守护进程可管理,管理的对象变成文件、语句与版本号。

子章节导航

8.1 备份三招:backup API 的分页复制原理、VACUUM INTO 的一步到位、冷拷贝的前提条件;对照 mysqldump 与 pg_dump 的定位差异,附恢复演练的三档方式与备份校验纪律。

8.2 诊断工具箱:CLI 的自省命令、integrity_check 家族、dbstat 空间统计、计划验证流程——从"感觉慢"到"证据链"的完整路径。

8.3 安全加固:SQL 注入面与参数绑定、文件权限即访问控制、SEE 与 SQLCipher 加密、schema 与 ATTACH 的纪律。

8.4 嵌入部署实录:amalgamation 的链接选择、线程模式与连接管理、升级与迁移预案、常见故障的排查顺序。

子章节之间的逻辑关系

四节按交付流程排列:先保数据(备份),再保健康(诊断),再保安全(加固),最后保交付(部署)。前三节分别依赖第 4 章的日志机制、第 5-6 章的计划知识与第 3 章的语句机制,第八节是全册的收拢——前七章的每个机制在部署清单里都有一个对应的"检查项":

8.1 备份 ──▶ 8.2 诊断 ──▶ 8.3 加固 ──▶ 8.4 部署 保数据 保健康 保安全 保交付 │ │ │ │ ▼ ▼ ▼ ▼ 第4章日志 第5-6章计划 第3章语句 全册机制清单 ​

前置知识与后续延伸

前置:第 4 章的 WAL 三件套(备份与部署都绕不开它);第 5 章的计划读法(诊断的核心技能)。

使用建议:本章适合两种读法。顺读适合首次搭建交付流程的团队——按备份、诊断、安全、部署的顺序把清单跑通一遍;查读适合已经上线、正在救火或做巡检的工程师——每节都是自足的速查单元,8.4 节末尾的六步排错顺序是全章的收拢点。

后续延伸:附录的 PRAGMA 速查表与三库决策卡是本章手段的浓缩。这是全册末章,延伸方向有两个:往深走,读 SQLite 官方文档的 file format 与 WAL 两篇规格书(本册第 1、4 章已为你铺好全部前置);往广走,把三库对照的框架迁移到其他嵌入式引擎的评估上。带着问题读:如果明早要上线,你的检查清单里有哪几项来自本章?

作者与出处
原作者:灏天文库
来源:平台策划编纂
整理人: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U