你问数据库是什么,其实可以把它想成一个专门给网站用的电子仓库。你打开网页看到的文章、商品、评论、用户头像,很多都不是写死在页面里的,而是从数据库里临时取出来拼上去的。数据库本身不直接给人看,它藏在服务器后面,负责存、查、改、删。比如你登录账号,网站会拿你输入的密码去数据库里比对;你发一条评论,数据库里就多一行记录;你搜“运动鞋”,数据库就翻出所有相关商品。
先说不怎么需要数据库的网站。如果你只做一个几页的介绍页,公司地址、电话、产品图片,所有内容都写在HTML文件里,改的时候直接改文件再上传,这种静态网站不需要数据库。个人作品集、活动宣传单页、简历页,也常不用。它们的特点是内容固定,不跟用户互动,不保存用户数据。你打开一百次,看到的东西都一样。
但只要网站开始“活”起来,就大概率需要数据库。比如博客。你写文章,如果每篇都手动做HTML,那叫静态博客,可以不用数据库。但如果你想要后台登录、在线写文章、选分类、传图片、读者评论、审核评论,这些都要存下来,数据库就跑不掉。WordPress就是典型,根据W3Techs的统计,它长期占全球网站四成左右,默认就要用MySQL或MariaDB。
企业官网也分情况。纯展示的公司简介、联系方式,不需要。但如果有新闻中心、产品库、招聘系统、留言板、在线客服工单,就需要数据库。因为新闻要按时间倒序,产品要分类筛选,留言要存起来给销售看。这些都不是写死页面能轻松搞定的。
电商网站更不用说。商品信息、价格、库存、用户账号、购物车、收货地址、订单状态、支付流水、优惠券,这些数据量大、关系复杂,还要保证多人同时下单不出错。没有数据库,电商根本转不起来。像淘宝、京东这种,背后是成千上万个数据库实例在支撑。

社区论坛、社交平台也离不开。你发帖子、回评论、点赞、关注、私信,每一样都是数据。用户资料、登录状态、权限,也要存。哪怕一个小型论坛,只要有人注册和发帖,就需要数据库。可以用SQLite这种轻量级的文件型数据库,适合小站;也可以用MySQL、PostgreSQL,适合大一点、并发高一点的场景。
在线教育、预订系统、SaaS工具、后台管理系统,全是数据库的重度用户。课程、学生、学习进度、考试记录;酒店房间、日期、订单;客户、合同、任务、日志。这些网站的核心就是数据,页面只是把数据展示出来。数据一乱,整个业务就乱。
那怎么判断自己的网站要不要数据库?你可以问自己几个问题。网站内容是不是经常变,而且希望非技术人员也能在后台改?用户能不能注册、登录、找回密码?有没有评论、留言、收藏、点赞?有没有商品、订单、支付、库存?需不需要按条件搜索、筛选、排序?只要有一个答案是“是”,基本就需要数据库。如果所有页面都是固定的,只给人看,不收集也不保存任何信息,那就不用。
数据库也不是越复杂越好。小网站用SQLite就够,一个文件,备份方便,不用单独装服务。流量大了再换MySQL或PostgreSQL。云服务商也提供托管数据库,按月付费,省去运维。但你要知道,数据库一旦用上,就要考虑备份、安全、权限。用户密码不能明文存,要加密哈希;重要数据要定期备份,不然服务器坏了就麻烦。
总结一下,数据库是动态网站的记忆。没有它,网站只能展示死内容;有了它,网站才能记住用户、保存内容、处理交易。静态展示页可以不用,但凡涉及用户、内容管理、交易、搜索、后台的网站,几乎都要用。你不懂数据库没关系,建站时告诉开发或者用现成系统,它们会帮你把数据库这层处理好。你只需要想清楚:你的网站要不要“记住”东西。要,就离不开数据库。