几年前,你在信创投标书里写"基于开源数据库",评审看到这两个字会点头。现在你再写这两个字,采购和合规会反过来问你一堆问题:代码谁在维护、出了问题谁兜底、许可证会不会传染。"开源"这两个字没变,它背着的账变了。
这篇文章不站开源,也不站闭源,只把这个标签在信创里身份失位的来龙去脉讲清楚,再说说这件事接下来会往哪走。

一、合规端先变了
先说最硬的变化,在合规这一头。
2021年9月施行的《关键信息基础设施安全保护条例》第十九条写得很清楚:运营者应当优先采购安全可信的网络产品和服务,采购可能影响国家安全的,还要按规定通过安全审查。2024年11月,两项国家标准正式实施,一项是 GB/T 43698《网络安全技术 软件供应链安全要求》,另一项是 GB/T 43848《网络安全技术 软件产品开源代码安全评价方法》。看名字就明白:开源代码已经被当成供应链风险,单独拎出来做安全评价了。
等保2.0也把开源组件从"软要求"变成了检查项。三级系统测评里,要能说清楚自己用了哪些开源组件、各是什么版本、有没有已知漏洞,最直接的形式就是一份结构化的软件物料清单(SBOM)。查出漏洞还有分级动作:评分9.0以上的高危组件立即停用,7.0到8.9的人工复核。
开源生态这边也不平静。2025年Oracle裁撤MySQL团队的消息,被不少做数据库的人当成转折点。那些基于MySQL二次开发的国产数据库,等于发现脚下这块地基随时可能被原厂抽走。同年,中国信通院一份统计被反复引用:超七成国产数据库基于开源数据库二次开发。
二、"开源"为什么开始变成风险项
先澄清一个词:信创里说的"可控",和"开源"是两个问题。开源解决的是代码能不能看到,可控说的是出了事你能不能兜住。 过去大家习惯把这两件事混在一起谈,现在政策把它们拆开了。
开源产品站在合规面前,有三个软肋。
第一是归属。代码在社区里,主干由谁维护、往哪个方向走、哪天会不会停更,使用方说了不算。
第二是责任。开源社区默认按"原样提供"(AS IS)给代码,不承担兜底责任,而金融、电信这类关键系统恰恰最需要有人能兜底、能背责。
第三是许可证。开源协议里有一类强传染性的,比如GPL和AGPL,你把受它约束的代码改了再分发,或者做成云服务对外提供,就可能触发把自研代码也开源的义务。MongoDB这类数据库就曾用AGPL,2018年干脆换成了更严的SSPL;连原本用宽松的BSD协议的Redis,也在2024年把许可换成了限制性更强的方案。不少企业干脆学谷歌,在内部直接禁用AGPL。
这三条加在一起,就解释了"开源"为什么会从一个能自动换取信任的标签,变成一个需要自证的对象。以前写"开源"两个字,信任关默认通过;现在这两个字本身,是被审查的起点。
三、这个词被用滥了
我更想说的是,"开源"这个词已经被用滥了,滥到它失去了区分度。
国产数据库里的"开源",形态五花八门。有的是真开放社区,商业版和开源版是同一套代码;有的是营销性开源,放一个功能不全的社区版出来赚声量,核心能力全锁在商业版里;还有的是在PostgreSQL、MySQL这类国外开源软件上套一层壳,社区里到底改了多少、改了什么,外人说不清楚。这三种"开源",在技术含量、自主程度、可控性上差着好几个量级,对外却都叫"开源"。
当合规端开始盘问"你的开源,代码是谁的、谁在维护、谁兜底",这个被用滥的标签就撑不住了。"开源"这个词失去了自我说明的能力:它要同时代表"透明可审计"和"归属不清、责任悬空",自己先跟自己打架。 于是你会看到,不少开源数据库厂商开始改口,不再强调"开源",改强调"内核自研""代码可控""社区治理"。他们自己也在急着和"开源"两个字拉开距离。
四、两种反应,都有代价
身份一旦失位,容易出现两种反应。
一种反应是把开源一律挡在门外。有些单位把"开源"当成风险代名词,采购清单里看到这两个字就划掉。这解决的是问责的焦虑,代价是丢掉了开源生态里真正值钱的东西:代码可审计、不锁死供应商、自己还能改。何况不少国产数据库本来就是从开源分支长出来的,把开源挡在门外等于把生态的地基也一起切掉。
另一种反应是无脑信开源,觉得代码都公开了,自己看一遍就安全。这低估了两件事:能看代码和能维护代码是两码事,多数使用方没有能力真正审查一个数据库内核;公开的代码也不保证没有供应链污染,许可证的问题不主动排查,不会自己消失。
两种反应背后是同一个问题,把"是否开源"当成了可控性的代名词。
五、往后看:"开源"正在被"可控"取代
我的判断是,"开源"这个词在信创里回不到从前一写就加分的地位了,它正在被"可控"这个提法取代。
合规端盘问的,已经不只是你有没有开放源代码,更是你能不能拿出一份说得清的开源组件清单、一个肯背责的商业主体、一条干净到不传染的许可证链。这三样全都落在"可控"上,跟"开源"本身没关系。厂商自己的话术已经在变,"内核自研""代码可控""社区治理"这些词,都是在回答同一个问题:我能不能被信任。外部风险还在加码,MySQL团队调整这件事提醒了所有人,把核心系统架在别人维护的代码上,主动权不在自己手里。
身份失位之后,一大批开源数据库要重新回答"我是谁"------是国外开源的分支,还是自己能做主的内核。回答不清的,会在一轮又一轮的合规盘问里被筛掉;回答得清的,开不开源反而退到了次要位置。
数据来源
- 《关键信息基础设施安全保护条例》第十九条:工信部转载全文
- GB/T 43698-2024、GB/T 43848-2024 及等保2.0开源组件要求:软件供应链安全法律法规与标准汇总
本文基于公开信息独立撰写,不代表任何厂商立场。
李白客,信创行业独立观察者。关注数据库、AI 基础设施与国产化替代。