📄 一句话概括
版本升级=在系统活着的时候换零件:补安全漏洞、修旧毛病——但升级本身有风险,所以纪律是先备份、再测试、后升级。
📝 本节和前面几节的关系
6-2 提过「补丁要跟上」,本节讲怎么做。它是全章的收束:场所(6-1)选好、账(6-3)算清、权限(6-4)配好、监控(6-5)盯着、备份(6-6)在手、迁移(6-7)会做、加密(6-8)上锁——这套体系齐了,你才有底气按下升级按钮。
一、为什么要升级
- 安全补丁:已知漏洞被公开后不修,等于门锁坏了还贴告示告诉小偷
- 错误修复:老版本的怪毛病,新版本可能已经治好
- 新特性:更好的性能、更多功能
二、升级的两层对象
| 对象 | 例子 | 与数据库的关系 |
|---|---|---|
| 操作系统 | Windows Server、Linux | 数据库跑在它上面,系统漏洞同样威胁数据 |
| 数据库软件本身 | MySQL 8.0 → 8.4 | 兼容性变化最要命(SQL 语法、默认值可能变) |
三、升级纪律三步
- 先备份(6-6):升级失败能退回原地——没有退路不动手
- 再测试:在测试环境先跑一遍新版本,确认应用的 SQL 都还兼容(尤其跨大版本)
- 后升级:选业务低峰期执行,升级后跑冒烟测试(建表、插数、查询各来一发)
四、动手 Demo:一次「纸面升级」的检查单
假设要把书评网站数据库从旧机器迁到新版本环境(结合 6-7 转储):
□ 1. 备份:全库 .dump 存档(6-6 全量 + 6-7 转储)
□ 2. 记录当前版本号与所用特性(用了哪些类型/约束——5-19 的 DDL 清单)
□ 3. 测试环境装新版本 → 还原转储 → 跑全部业务 SQL(3-7~3-22 各条)
□ 4. 确认查询结果一致、无报错
□ 5. 低峰期正式切换,旧环境保留一周再下线
【准备块】无——检查单本身就是交付物。
五、30 秒实验
回想你手机系统更新的提示:Wi-Fi 环境(怕断)、电量充足(怕死机)、可回退——数据库升级的三条纪律一模一样。问:为什么数据库升级比手机升级更谨慎?(数据是别人托付的资产,升级失败的业务代价按分钟计。)
六、常见误区
- 「升级是好习惯,越快越好」:不做测试直接上生产,是把生产环境当测试环境
- 「小版本升级肯定无风险」:小版本也可能修安全漏洞时改了默认行为;测试一步不能省
- 「升级失败大不了重来」:没有备份的失败=数据永久丢失——三步纪律里备份永远第一
自测三问
1. 升级纪律三步的顺序?(备份 → 测试 → 升级,一步不能倒) 2. 为什么要先在测试环境跑一遍?(确认应用的 SQL 与新版本兼容——语法、默认值可能变) 3. 升级与 6-6、6-7 各是什么关系?(升级前必须先做全量备份与转储,失败时靠还原退回)- ☑ 第六章 完结 —— 第七章 已开始:物理威胁-对系统产生恶劣影响的问题1-物理威胁示例与对策(三类威胁开篇)→ 7-7 索引 → SQL注入-从外部操作数据库的问题(本章收官)
相关笔记
- 备份、全量备份、差分备份、增量备份-定期记录当前的数据 —— 升级第一纪律「先备份」的出处
- 转储、还原-迁移数据 —— 升级失败的退路就是「还原转储」
- 电源、计算机病毒、成本-公司内部管理数据库服务器的注意事项 —— 「补丁要跟上」在本节展开成完整纪律
- 物理威胁-对系统产生恶劣影响的问题1-物理威胁示例与对策 —— 下一章起点:威胁三分类的目录页
- SQL注入-从外部操作数据库的问题 —— 下一章收官:权限最小化的实战意义
- 🗄️ 数据库基础 · 索引 —— 全课路线图