🗄️ 第六章 运用数据库-旨在安全运用
📄 一句话概括

数据库装在哪台机器上,决定了谁替你操心它的死活——内部部署(On-Premises)=自己买服务器自己管,云服务=租别人的机房按月付钱。

📝 本节和前面几节的关系

第五章我们纸上谈兵:把书评网站的设计图(E-R 图、规范化、DDL)画完了。设计完的表总要找个地方住——这一章整章都在回答「住进去之后怎么让它安全地活着」。本节先选「住址」:自家机房还是云上;后面八节再谈水电(电源)、保安(权限)、监控、备份、搬家、保险柜(加密)、装修翻新(版本升级)。

一、两种放置方式

内部部署(On-Premises) 云服务(Cloud)
服务器在哪 自己公司的机房 云厂商(AWS、阿里云等)的机房
硬件谁买 自己买 厂商买,你租
谁负责维护 自己的 IT 团队 厂商管硬件,你管数据库本身
花钱方式 一次性大投入 按月/按用量付费
数据在哪 自己手里 厂商那里(合规要确认)

二、怎么选

三、本课的立场

我们课上的 SQLite 就是一个单机内部部署的极端简化版——数据库就是一个文件,住在自己电脑里,不用电、不用网、不花钱。云服务是「规模大了之后」的事。

四、动手 Demo:看清自己的数据库住哪

用前面章节建好的 school 数据库(3-3 创建),回答三个问题:

-- ① 数据库文件在哪?(SQLite 视角)
--   在线运行器里它在「浏览器内存/云端沙箱」;
--   本地 SQLite CLI 里它就是一个 .db 文件,躺在你的硬盘上

-- ② 谁在替你管理它?
--   SQLite:不用服务进程,程序直接读文件(无管理员可当)
--   MySQL 等商用 DBMS:有专门的服务进程 + DBA 角色

-- ③ 停电了会怎样?
--   本地笔记本:电池撑一会儿,没电就停(靠第四章的事务保证不写坏)
--   云机房:UPS 不间断电源 + 柴油发电机,停电不停机

【准备块】无——只是思考实验,连库都不用开也能答对一半。

五、30 秒实验

把「数据库住哪」想成「钱放哪」:内部部署=家里保险柜(自己管、丢了没人赔);云服务=银行(别人管、出了事有 SLA 赔付条款)。问自己:你现在手机相册的照片属于哪种?(答案:云服务——除非你从没开过自动备份。)

六、常见误区

自测三问 1. 内部部署和云服务最核心的一条区别是什么?(硬件归属与维护责任:自己买自己管 vs 租用厂商管) 2. 云服务模式下,数据库的**权限配置**该谁做?(使用方——也就是你,厂商只管基础设施) 3. SQLite 属于哪种?(极端简化的单机内部部署:数据库就是一个本地文件)

相关笔记