2026年1月

前言

在上一篇文章中,我们探讨了组件内部以及深层嵌套对象的状态管理。但当我们把视角拉高,俯瞰整个应用时,会发现一个新的挑战:数据孤岛。

用户在“我的”页面修改了头像,首页的左上角是不是也得跟着变?用户在“设置”里开启了夜间模式,是不是所有的页面都要瞬间切换颜色?如果只靠组件之间的父子传递(Props),我们需要把这些状态一路从根节点透传下去,这种属性钻取简直是代码维护的噩梦。

更棘手的是,当用户划掉后台进程,杀掉应用,再次打开时,我们希望他上次设置的“夜间模式”依然生效。这就涉及到了内存数据与磁盘数据的同步问题。

在鸿蒙 HarmonyOS 6 (API 20) 中,ArkUI 给出了一套完整的应用级状态管理方案:AppStorage全局内存、LocalStorage页面级内存以及 PersistentStorage持久化存储。

今天,我们就来聊聊如何打通这三条数据流,构建一个数据互通且能记住用户习惯的应用。

这份优化后的文案去除了口语化的比喻和非必要的符号,采用了更专业、精准的技术语言,强调了核心概念与运行机制。


一、 AppStorage 应用内存状态的全局管理

AppStorage 是应用在内存中的全局状态容器。一旦在其中存入属性,应用内的任意 Ability、Page 或自定义组件均可访问和修改。

在声明式 UI 开发中,不建议在 build 函数中频繁直接调用 API。ArkUI 提供了两个专用的装饰器:

  • @StorageLink:建立双向同步。组件内状态的修改会同步至全局,并驱动其他订阅该状态的组件更新。
  • @StorageProp:建立单向订阅。仅接收全局状态的更新,组件内的修改不会同步回全局。

例如,将“当前用户 Token”存储在 AppStorage 中。在任意页面声明 @StorageLink('userToken'),该变量即可与全局状态联通。无论何处更新了 Token,所有页面的对应变量均会实时刷新。

二、 PersistentStorage 持久化数据同步

AppStorage 仅存在于内存中,应用退出后数据会被清除。PersistentStorage 的作用是将 AppStorage 中的特定属性写入磁盘文件,实现持久化。

PersistentStorage 并非独立的数据库,而是 AppStorage 与文件系统之间的同步机制。通常在应用启动早期(如 EntryAbility 或页面加载前)调用 PersistentStorage.persistProp('key', defaultValue)。系统会检查磁盘中是否存在该键值:若存在,则读取并覆盖 AppStorage 中的值;若不存在,则使用默认值初始化,并建立磁盘映射。

连接建立后,开发者只需通过 @StorageLink 修改 AppStorage 中的数据,框架会自动监听变化并将新值写入磁盘,无需手动处理文件读写或 JSON 序列化。

三、 LocalStorage 模块化状态隔离

与全局的 AppStorage 不同,LocalStorage 用于解决模块化和多实例场景下的状态共享问题(如多窗口应用或独立模块)。

LocalStorage 的生命周期绑定在 Ability 或 UIAbility 上下文中,创建了一个隔离的状态容器。在页面加载时,可传入独立的 LocalStorage 实例,组件内部则使用 @LocalStorageLink 进行对接。这种机制能有效保证状态的封装性与安全性,防止因全局变量过多导致的状态污染。

四、 最佳实践 全局主题切换功能实现

以下通过“全局主题切换”功能(支持深色模式与字体大小调整)演示三者的协同工作。需求包括:设置在所有页面生效,且应用重启后配置依然保留。

实现时需遵循严格的初始化顺序:先持久化,再 UI 绑定。务必在 Ability 或文件顶层执行 PersistentStorage.persistProp,切勿在组件的 build 函数中执行持久化初始化,以免引发逻辑错误。

import { promptAction } from '@kit.ArkUI';

// =============================================================
// 1. 初始化持久化数据 (必须在 @Entry 之前执行)
// =============================================================
// 这里的逻辑是:
// 1. 检查磁盘是否有 'appThemeMode'。
// 2. 如果有,将其加载到 AppStorage 中。
// 3. 如果没有,则使用默认值 'light' 初始化 AppStorage,并写入磁盘。
PersistentStorage.persistProp('appThemeMode', 'light');
PersistentStorage.persistProp('appFontSize', 16);

@Entry
@Component
struct GlobalStatePage {
  // =============================================================
  // 2. UI 绑定全局状态 (@StorageLink)
  // =============================================================
  // @StorageLink 与 AppStorage 建立双向同步:
  // 读取:初始化时从 AppStorage 获取值。
  // 写入:当 this.themeMode 改变 -> AppStorage 更新 -> PersistentStorage 写入磁盘。
  @StorageLink('appThemeMode') themeMode: string = 'light';
  @StorageLink('appFontSize') fontSize: number = 16;

  build() {
    // 根容器:背景色根据主题动态变化
    Column() {
      // --- 顶部标题栏 ---
      Text('全局设置中心')
        .fontSize(24)
        .fontWeight(FontWeight.Bold)
        // 动态适配字体颜色
        .fontColor(this.themeMode === 'light' ? '#333333' : '#FFFFFF')
        .margin({ top: 40, bottom: 40 })

      // --- 设置选项卡片区域 ---
      Column({ space: 20 }) {

        // -----------------------------------------------------
        // 选项 1:字体大小调节
        // -----------------------------------------------------
        Row() {
          Text('全局字号')
            .fontSize(this.fontSize) // 【关键点】应用动态字号
            .fontColor(this.themeMode === 'light' ? '#333' : '#FFF')
            .fontWeight(FontWeight.Medium)

          // 调节按钮组
          Row() {
            Button('A-')
              .onClick(() => {
                if (this.fontSize > 12) {
                  this.fontSize -= 2; // 修改状态 -> 自动触发持久化保存
                } else {
                  promptAction.showToast({ message: '已经是最小字体了' })
                }
              })
              .backgroundColor(this.themeMode === 'light' ? '#F0F0F0' : '#444')
              .fontColor(this.themeMode === 'light' ? '#333' : '#FFF')
              .margin({ right: 10 })
              .width(40)
              .height(32)

            Button('A+')
              .onClick(() => {
                if (this.fontSize < 30) {
                  this.fontSize += 2; // 修改状态 -> 自动触发持久化保存
                } else {
                  promptAction.showToast({ message: '已经是最大字体了' })
                }
              })
              .backgroundColor(this.themeMode === 'light' ? '#F0F0F0' : '#444')
              .fontColor(this.themeMode === 'light' ? '#333' : '#FFF')
              .width(40)
              .height(32)
          }
        }
        .width('100%')
        .justifyContent(FlexAlign.SpaceBetween)
        .padding(16)
        .backgroundColor(this.themeMode === 'light' ? '#FFFFFF' : '#2C2C2C')
        .borderRadius(16)
        .shadow({ radius: 8, color: this.themeMode === 'light' ? '#10000000' : '#00000000', offsetY: 2 })

        // -----------------------------------------------------
        // 选项 2:主题模式切换
        // -----------------------------------------------------
        Row() {
          Column() {
            Text('夜间模式')
              .fontSize(this.fontSize)
              .fontColor(this.themeMode === 'light' ? '#333' : '#FFF')
            Text(this.themeMode === 'light' ? '当前:日间' : '当前:深色')
              .fontSize(12)
              .fontColor('#888')
              .margin({ top: 4 })
          }
          .alignItems(HorizontalAlign.Start)

          // 开关组件
          Toggle({ type: ToggleType.Switch, isOn: this.themeMode === 'dark' })
            .selectedColor('#0A59F7')
            .onChange((isOn: boolean) => {
              // 【关键点】修改状态
              // 这一步会瞬间触发:
              // 1. 本页面 UI 刷新(背景变黑/白)
              // 2. AppStorage 全局变量更新
              // 3. 磁盘文件写入
              this.themeMode = isOn ? 'dark' : 'light';

              promptAction.showToast({
                message: `已切换至${isOn ? '深色' : '日间'}模式,设置已自动保存`,
                duration: 2000
              });
            })
        }
        .width('100%')
        .justifyContent(FlexAlign.SpaceBetween)
        .padding(16)
        .backgroundColor(this.themeMode === 'light' ? '#FFFFFF' : '#2C2C2C')
        .borderRadius(16)
        .shadow({ radius: 8, color: this.themeMode === 'light' ? '#10000000' : '#00000000', offsetY: 2 })

        // --- 底部提示 ---
        Text('提示:该设置已持久化存储。您可以尝试彻底关闭应用(杀后台),再次打开时,上述设置依然生效。')
          .fontSize(12)
          .fontColor('#999')
          .margin({ top: 20 })
          .padding({ left: 10, right: 10 })
          .textAlign(TextAlign.Center)
          .lineHeight(18)

      }
      .padding(16)
    }
    .width('100%')
    .height('100%')
    // 全局背景色
    .backgroundColor(this.themeMode === 'light' ? '#F1F3F5' : '#121212')
    // 添加过渡动画,让主题切换更丝滑
    .animation({ duration: 300, curve: Curve.EaseInOut })
  }
}

总结

掌握了 AppStoragePersistentStorage,你就掌握了鸿蒙应用数据流动的“任督二脉”。AppStorage 打通了页面间的隔阂,让数据在内存中自由穿梭;PersistentStorage 则打通了内存与磁盘的界限,让关键数据得以长久保存。
在实际开发中,建议将所有的 Keys 定义为一个常量文件,避免魔术字符串满天飞。同时,虽然全局状态很好用,但也要克制,不要把所有数据都往里塞,只存放那些真正需要全局共享和持久化的“配置级”或“用户级”数据,保持应用内存的纯净与高效。

Clawdbot(现改名Moltbot)一夜爆火全球,这个能读文件、跑命令、写代码、管系统的开源 AI 智能体,现已正式登陆京东云,无需手动配置环境,一键即可开启,让你的 AI 助手秒级上线、全天候待命。

Moltbot是少数真正具备系统级操作能力的个人智能助理:

  • 本地长期记忆(对话数据自主可控)
  • 跨平台推送(支持对接通讯类软件)
  • 真实任务执行(文件整理、表单提交、代码生成)

这样一个强大又敏感的 AI 助手,该运行在哪里?更安全、更稳定的方式,是将其部署在独立、隔离的云端环境中。

京东云全面上线 Moltbot!京东云轻量云主机现已预置 Moltbot 应用镜像,无需手动配置环境,三步即可完成部署,让你的 AI 助手秒级上线、全天候待命。

第一步:一键创建实例

在京东云控制台创建轻量云主机,选择:

镜像名称:Moltbot

规格建议:2 核 2G 起(推荐 2 核 4G 以获得更佳体验)
在这里插入图片描述

第二步:获取API-Key

登录JoyBuilder 模型开发平台 2.0,进入API-KEY 管理页面:

1、点击「创建」按钮,生成新的 API-Key;

2、在“修改 API-KEY”页面中,为该 Key 配置可访问的模型服务,必须包含以下模型:DeepSeek-V3-0324、DeepSeek-V3.2、DeepSeek-v3、Qwen3-235B-A22B、Kimi-K2-0905-jcloud

在这里插入图片描述
在这里插入图片描述

第三步:初始化与启动服务

通过控制台或者终端工具登轻量云主机。首次登陆需要执行脚本命令配置京东云模型服务:

bash init-clawdbot.sh pk-xxxxx # 替换为你的 API-Key

执行初始化命令:

clawdbot onboard

按引导完成相关配置:

风险确认

聊天渠道绑定(如 Discord、飞书机器人等)

……

以上配置完成后,即可上手使用。快上京东云开启一键部署,让 Moltbot 成为你专属的 24 小时数字员工!

简介
Active Directory中的组策略是企业安全设置、软件部署和操作配置的基石工具。然而,即使是微小的组策略对象(GPO)配置错误——如权限过度开放、安全组分配错误或未监控的变更——都可能引入严重且隐蔽的企业风险。本文将通过具体场景分析GPO错误配置的七大潜在威胁,并提供切实可行的缓解策略,帮助企业建立主动防御体系。
关键词
组策略配置,GPO安全风险,权限提升,勒索软件防护,合规性审计,Active Directory安全,策略冲突管理

一、为什么组策略错误配置是“沉默的杀手锏”?
大规模配置的单点故障
组策略对象管理着整个组织的海量配置,单个错误即可引发大规模安全事件。GPO控制着Active Directory域中超过5000项独立设置——从密码策略到软件限制。一旦配置不当(例如过多人员拥有编辑权限),攻击者就能利用这一漏洞创建域级后门,在组织毫无察觉的情况下获得完全控制。
真实案例:某金融机构因一个权限过宽的GPO配置,导致攻击者通过组策略部署勒索软件,在24小时内加密了超过80%的终端设备。

复杂的策略层级结构
GPO通过域、站点和组织单元(OU)的多级继承进行分发,安全筛选和优先覆盖规则进一步增加了复杂性。策略冲突可能导致意外的权限设置,包括增加安全风险的过度许可配置。那些仍然链接的陈旧或维护不善的GPO,可能在不知不觉中应用过时的设置(如弱审计策略)。
技术挑战:缺乏有效策略查看工具的管理员,往往在正常操作中持续忽略这些问题。

审计与监控的天然盲区
Windows默认审计对GPO变更“视而不见”,未经授权的编辑(如在GPO中插入恶意脚本)可能长期累积而无人察觉。没有实时监控工具,这些变更看起来就像合法管理员的操作,攻击者因此可以潜伏数月甚至数年,直到安全事故或合规审计暴露其存在。

二、不可忽视的七大隐性企业风险
1.勒索软件传播风险加剧
勒索软件攻击依赖于网络中的漏洞,使其能够快速隐秘地传播。
高风险配置场景:

  • SMB/PowerShell策略配置不当:错误的SMB协议设置可能使勒索软件无需黑客额外操作即可在网络中自由传播。过度宽松的PowerShell策略则可能被用于远程执行恶意代码。
  • 安全控制被禁用:在GPO中禁用关键防御(如防火墙规则),相当于为入侵者敞开大门,使其能够悄无声息地传播病毒和勒索软件。
    缓解策略:
  • 实施安全基线GPO:采用微软推荐配置、DISA STIG或CIS等公认安全标准,确保SMB、PowerShell和工作站策略设置安全。
  • 定期GPO安全审查:使用审计监控工具定期检查GPO的错误配置、未授权变更或策略偏移。
  • 监控基线偏离:持续监控环境,及时发现并修复安全基线的任何偏离。

2.意外权限提升
GPO配置不当可能导致系统或用户意外获得更高级别的权限。
典型问题:

  • GPO授予不必要权限:例如“将工作站添加到域”、“调试程序”或授予本地管理员权限,过度分配这些权限增加了滥用风险。
  • 安全筛选配置错误:当GPO错误地应用于非管理用户时,可能意外授予管理级权限,绕过安全检查点。
    缓解策略:
  • 遵循最小权限原则:精确控制GPO授权,确保用户或组仅获得完成工作所必需的权限。
  • 定期审查GPO筛选和权限:通过审计发现过度授权或错误应用的策略。
  • 设置自动化警报:部署监控设备,在GPO权限或安全筛选发生变更时立即通知安全团队。

3.敏感数据暴露
配置不当的访问限制或加密规则可能导致敏感数据无意中暴露。
常见漏洞:

  • 驱动器映射设置错误:错误配置的驱动器映射GPO可能将敏感共享文件夹暴露给未授权用户。
  • 加密策略执行不力:BitLocker或DLP策略配置不当,导致设备丢失或被盗时数据无保护。
    缓解策略:
  • 定期访问审计:重点审计GPO驱动的权限,确保只有授权用户能访问敏感文件。
  • 验证加密策略:确保所有BitLocker和其他加密策略在所有终端上得到一致执行。
  • 使用专业检测工具:利用专用工具持续监控权限,检测错误配置和过度访问权限。

4.合规性违规
企业常在审计时才意识到GPO相关的重大合规风险。
主要违规点:

  • 弱密码策略:违反GDPR、HIPAA、PCI DSS和ISO 27001等法规要求。
  • 审计和日志策略不足:导致用户活动和访问控制监控不足,难以识别内部威胁或数据泄露。
    缓解策略:
  • 对齐GPO基线:确保GPO设置符合或严于相关法规的最低要求。
  • 建立GPO合规仪表板:使用集中监控工具持续评估GPO设置和合规状态。
  • 实施持续监控:定期发现GPO中的未授权或计划外变更,防止策略偏移导致合规缺口。

5.策略冲突导致的业务中断
相互冲突的GPO可能对业务运营造成严重影响。
潜在影响:

  • 关键应用程序中断
  • 必要网络访问被阻止
  • 打印机无法使用
  • 大规模登录失败
    缓解策略:
  • 标准化GPO管理:制定清晰的GPO命名规范,使用版本控制跟踪变更。
  • 实施变更管理环境:严格遵守变更管理流程,GPO修改前必须获得确认。
  • 在预演环境中测试:新修改的GPO必须在类似生产的预演环境中充分测试。
  • 使用报告工具:部署专业报告分析工具,主动识别策略冲突。

6.攻击面扩大
陈旧但仍在使用的GPO可能包含过时的安全设置。
风险示例:

  • 允许使用废弃的加密协议
  • 维持弱密码策略
  • 为不需要的服务授予不必要的权限
    缓解策略:
  • 年度GPO生命周期审查:定期审计所有GPO,确保其符合当前安全策略和业务需求。
  • 维护集中存储库:建立完整的GPO文档化清单,记录策略目的和责任人。
  • 停用无用GPO:主动识别并删除不再具有业务功能的GPO。

7.隐蔽的内部威胁路径
配置不当的GPO可能成为内部威胁的隐蔽通道。
独特挑战:

  • 内部威胁者已具备一定访问权限和知识
  • 非法活动通常不会触发明显警报
  • 可能长期潜伏未被发现
    缓解策略:
  • 强制实施最小权限:严格按角色配置GPO访问权限。
  • 跟踪每项变更:使用GPO变更审计工具记录所有关键修改。
  • 检测访问模式异常:投资部署能够识别异常访问模式的系统,如权限突然提升或意外GPO分配。

三、艾体宝Lepide如何帮助企业保护组策略安全
艾体宝Lepide Active Directory审计解决方案提供全面的实时GPO监控系统,能够:

  • 深度记录每项变更:在复杂的层次结构中精确定位错误配置、权限提升和内部威胁
  • 内置异常检测:自动识别可疑活动模式
  • 合规报告就绪:提供符合GDPR、HIPAA和CIS标准的现成报告
  • 自动化警报:对SMB、PowerShell或加密策略等关键设置的变更即时告警

免费工具推荐:Lepide Change Reporter for Group Policy作为补充工具,将原始日志转换为智能审计数据,通过可视化雷达界面即时展示变更的“谁、什么、何时、何地”,是了解GPO变更情况的理想起点。

结论
组策略错误配置的威胁之所以危险,正因为其隐蔽性和延迟性。企业必须从被动响应转向主动防御,通过持续监控、定期审计和自动化工具,将GPO安全纳入整体安全治理框架。记住:看不见的风险往往是最致命的,而今天在GPO安全上的投资,明天可能就成为阻止灾难的最后防线。

学生党打算买台 mini 自用,周日看百亿补贴丐版才 2999 ,今天打开看百补已经没货了,能找到最低价甚至是教育优惠
两天之内涨了 1000 块,我记得 12 月还 28**来着,现在看来有点小难受啊
大家怎么看这次由 clawdbot 引起的硬件销售潮

97 年男生,周末朋友组了个饭局,我、朋友以及一位女生一起吃饭聊天。
女生是朋友介绍的,95 年,硕士,在银行工作,和我是同一个老家人,目前都在杭州。
这次见面不算相亲,更像是朋友一起吃饭,顺便先认识一下。
但我平时生活比较简单,基本就是上班和宅在家里,也不太擅长主动找话题,有点担心聊天会尴尬或者冷场。
像这种朋友局的场合,一般聊哪些内容会比较自然、不刻意?
是随便聊点工作、生活、城市这些,还是更多偏轻松日常就好?
V 友们有没有类似经历,或者有什么比较稳妥、不容易翻车的话题建议?感谢 🙏

Google Gemini 免费学生优惠 美区的活动延期到 26 年 1 月 31 日,其他区免费一年活动已停止。
能白嫖的抓紧白嫖啦
没有办法找万能的咸鱼,3 块以内搞定(bushi
https://gemini.google/students/

如果确定优惠到期后不再续订,可现在直接取消订阅,取消后还可一直使用到优惠到期。
访问: https://play.google.com/store/account/subscriptions 管理 - 取消订阅

现在加入还可以白嫖 Antigravity,家庭 5 人共享套装(管理员+5 人,需账号在一个区)和 Google one 送的 Google Cloud 的赠金一个月 10 刀(小心被刀)
https://developers.google.com/program/my-benefits?hl=zh-cn

现在只有美区,图片地址在这
https://gemini.google/us/students/?hl=en#:~:text=Who%20can%20get%20this%20free%20trial%20offer ?

image

1/31 是學生資格的活動
4/30 則是認證完成後的最後訂閱時間

作者:傅榕锋,OceanBase 高级技术专家

AI 开发者需要什么样的数据库

在开始正式话题前,我们不妨先思考一个问题: AI 时代下开发者需要什么样的数据库?

自本世纪初以来数据库需求的演变历程。Web 2.0及业务在线化的时代,强调的是一个可靠、精确的记录系统,能够精准地记录每一笔交易数据,满足典型的事务处理(TP)需求。进入移动互联网和数据智能化时代后,随着数据量的爆发式增长,海量数据分析的需求成为主流。这时,分析型(AP)数据库开始占据重要位置。AI 时代的真正到来,驱动数据库不仅要支持查询和分析功能,更需具备理解和推理的能力。

快来关注我,获取 OceanBase 第一手的产品信息和技术资源,与行业大咖 “唠” 出真知!

AI 时代开发者的痛点

作为数据库从业者,我们需要深入分析 AI 时代下开发者对数据库的具体需求。

数据类型的多维化:在传统数据库中,图片、视频、音频仅能被存储而难以有效利用。借助 AI 模型的帮助,这些非结构化数据可以转化为可检索的形式,如通过嵌入模型转换为向量,或使用大语言模型提取文本描述和标签,从而将非结构化数据转变为结构化或半结构化数据以实现高效检索。

性能与规模的极致化:鉴于向量数据对内存和磁盘资源的高占用特性,在成本与性能之间寻求最佳平衡显得尤为关键。为此,亟需采用高效的算法,以优化召回率与资源成本之间的权衡关系。

智能处理的内生化:例如,在 RAG 场景中,文档需先进行切片并生成向量,这通常涉及向量数据库、文档型数据库以及事务型数据库的联合使用。为了简化这一流程,理想的解决方案是让数据库自身承担更多的标准化数据处理任务,减少开发者的负担。

开发流程的敏捷化:目标是让开发者更加专注于业务逻辑本身,而非陷入复杂的数据处理流程之中。

AI 时代的理想数据库

基于上述痛点,AI 时代的理想数据库应具备以下四个特征。

  • 多模态支持:提供统一的平台,支持多种数据类型,包括但不限于向量、全文、标量、 JSON 格式。
  • 高性能引擎:针对 AI 工作负载进行优化,确保在控制成本的前提下实现最优性能表现。
  • 智能化集成:内置 AI 运行时环境,使数据库可以直接执行复杂的智能处理任务,减少对外部系统的依赖。
  • 简易操作:设计直观易用的界面和工具,降低非专业开发者的使用门槛,促进更多领域专家参与到数据处理工作中。

综上所述, AI 时代我们期待的数据库应该是强大、智能、一体化的,是数据与 AI 融合的平台。

AI原生的一体化数据库是否存在

正所谓“需求决定市场”,契合AI时代理想数据库特质的产品必然会出现。而就目前来看,OceanBase 新发布的 seekdb 已率先落地,不仅具备了相关核心能力,更在快速迭代中持续进化。

混搜架构的轻量级、多模态的AI原生数据库

OceanBase seekdb 是一款面向 AI 场景的轻量级、多模态的原生数据库,专为支持混合搜索、上下文理解与智能数据处理而设计。其整体架构分为五个核心层级,实现从数据存储到查询执行的全链路优化。

1. 统一应用接口层。

seekdb提供基于 SQL 的统一查询语言,兼容标准 SQL 语法,支持多模态数据的联合查询。同时,提供面向开发者的 Python SDK,具备简洁易用的 API 接口,支持 skip-by-list 等高效检索模式,显著降低开发者使用门槛。

2. 支持混合负载的多模计算层。

继承自 OceanBase 的成熟优化器体系,seekdb具备强大的查询规划与执行能力,在混合检索场景中,会自动进行自适应执行和查询优化,能够根据查询条件自动选择最优执行路径。同时,支持混合负载自适应执行、AI 函数调用、ACID 事务保障及灵活 UDF 扩展,满足复杂业务需求。

3. 多模数据层。

支持多种数据类型统一存储,实现“存即能检”,打破传统系统中不同数据类型需分库管理的局限。包括:

  • 关系表(传统结构化数据)
  • 向量(Embedding 向量)
  • 文本(原始文本内容)
  • JSON(半结构化数据)
  • GIS(地理空间数据)
  • 数组、位图等扩展类型

4. 多模索引层。

构建业界领先的多模索引体系,支持的索引类型如下。

  • 向量索引:高效支持近邻搜索(ANN),兼顾精度与性能。
  • 全文索引:支持中文分词与语义匹配。
  • 混合索引:结合向量与标量条件进行联合检索。
  • JSON 索引:加速嵌套字段查询。
  • 二级索引、GIS 索引:满足多样化查询需求。

支持多索引协同查询,在一次请求中完成跨模态数据的融合检索。

5. 部署模式层。

  • 服务器模式:传统集群部署,适用于高并发、大规模生产环境。
  • 嵌入式模式:以库的形式内嵌于应用程序中,生命周期与应用一致,适合边缘计算、AI 应用快速构建等轻量化场景。

OceanBase seekdb 通过“统一接口 + 多模存储 + 智能索引 + 灵活部署”的一体化设计,实现了对 AI 工作负载的端到端支持,真正做到了“一个数据库,搞定所有数据”。

快速构建:更灵活、更轻量、不止于 SQL

OceanBase seekdb 不仅具备强大的功能,更在易用性和部署灵活性上进行了深度优化,助力开发者快速构建 AI 应用。

1. 更灵活:双运行模式,适配多样场景。

  • 服务器模式:适用于企业级、高可用、分布式部署。
  • 嵌入式模式:直接集成到 #Python 应用中,无需独立部署数据库服务,极大简化开发流程,特别适合 RAG、Agent、智能问答等轻量级 AI 应用。

2. 更轻量:极简资源占用,轻松跑起基准测试。

单实例仅需 1C2G 内存即可运行 VectorDBBench 基准测试,相比传统数据库,资源消耗更低,启动更快,非常适合本地调试、原型验证和边缘部署。

3. 不止于 SQL:引入 Schemaless SDK。

引入 Schemaless SDK,开发者无需定义表结构即可直接插入和查询数据,提升开发灵活性。

使用seekdb快速创建RAG应用

下面我们演示一下如何使用 seekdb 快使创建一个 RAG 应用。

第一步:三行代码快速创建一个知识库(SETUP)

  1. 导入 pyseekdb 模块,启用 seekdb 的 Python SDK。
  2. 初始化客户端实例,参数为空表示采用嵌入式模式,数据库生命周期与应用绑定,无需独立部署服务。
  3. 创建知识库并定义为 Collection。

第二步:批量插入文档片段(INSERT)

功能说明:

  • 调用 upsert() 函数批量插入文档内容(documents)。
  • 同时关联元数据(metadatas),包括分类、内存、存储、价格等结构化信息。
  • 显式指定文档 ID(ids),便于后续检索与更新。

关键特性:

  • 用户仅需提供原始文本和元数据,无需手动调用嵌入模型生成向量。
  • 数据库内部自动调用内置的嵌入模型,将文本转换为向量并存储。

AI 能力下沉至数据库,开发者无需关注向量化过程,seekdb 自动完成文本 → 向量的转换,实现“透明化”处理。

第三步:混合检索,精准召回(QUERY)

查询维度分析:

  • query_texts:输入自然语言文本,触发向量检索,用于语义匹配。
  • where:设置关系型过滤条件,如 category == laptop 和 ram >= 16,实现精确筛选。
  • where_document:基于全文索引进行关键词匹配,要求文档内容包含 “RAM”。
  • n_results:限制返回结果数量为 2 条。

实现机制:

  • 查询时,seekdb 内部自动将 query_texts 输入传递给嵌入模型,生成查询向量。
  • 结合向量索引、全文索引、二级索引等多种索引执行混合检索。
  • 最终返回满足所有条件的最相关结果。

第四步:效果展示

输入检索条件为:需要一个 12 GB 内存以上的高性能笔记本。运行后输出结果如下图所示,

召回结果分析如下。

  • 第一条:16GB 内存、512GB 固态的专业笔记本,完全满足“高性能 + 16GB 以上内存”的要求。
  • 第二条:32GB 内存、1TB 固态的游戏本,虽非专业用途但性能卓越,符合语义意图。

该案例模拟了典型的 RAG 场景,用户只需输入自然语言问题,系统即可自动完成文本向量化、多条件联合检索、高精度召回。全流程由数据库内核统一处理,极大简化了开发复杂度,真正实现“让开发者专注于业务,而非数据处理”。

欢迎亲自上手试用:https://github.com/oceanbase/seekdb。当前版本支持 Linux 平台下的嵌入式模式运行,Windows 和 macOS 版本将在近期和大家见面。可访问 oceanbase.ai 获取样例代码,支持本地测试与快速验证。

SQL 直接调用 AI 的原生体验

OceanBase seekdb 不仅是一个支持多模态数据存储与混合检索的数据库,更致力于将 AI 能力深度集成于数据库内核,实现“SQL 直接调用 AI”的原生体验。

seekdb AI Inside 的内置处理除了 AI_EMBED 方法外,还引入 AI_RERANK 和 AI_COMPLETE,可以实现数据分析自动化、特征提取、智能内容生成、语义搜索增强、结果优化等效果。在 seekdb 中使用可以构建从粗排到精排的高效分层混合检索处理流程。该流程分为四个阶段。

阶段1:标量过滤(Scalar Filtering)。在全量数据集上首先执行关系型条件过滤(如 category = 'laptop', ram >= 16),缩小候选集过滤范围。

阶段2:向量搜索(Vector Search)。对过滤后的候选集执行向量相似度检索,基于语义匹配找出最相关的文档,使用近邻搜索算法(ANN)高效完成高维向量比对。

阶段3:全文搜索(Full-text Search)。在候选集中进一步执行关键词匹配,确保结果包含用户关心的关键信息(如 "RAM"),支持中文分词与模糊匹配,提升召回精度。其中标量、向量、全文的过滤顺序取决于优化器。

阶段4:粗排 → 精排 → 大模型重排。经过以上过滤后得到粗排的结果,此时再去调用 AI_RERANK,数据库会直接调用 RERANK 模型进行精排,精排结束后,通过调用 AI_COMPLETE 即可调用大模型,大模型会直接进行回答。以上所有的 AI 标准操作流程都在数据库中进行,开发者只需在查询中添加相应函数,即可让数据库自动调用大模型对数据进行处理,显著提升用户体验。

OceanBase seekdb 适用场景

OceanBase seekdb 作为一款轻量级、多模态、AI 原生的数据库,凭借其统一存储、混合检索、内嵌 AI 能力 和嵌入式部署支持,在多个新兴与传统智能化场景中展现出显著优势。以下是其典型的适用场景。

1.替代“三库并行”,降本增效

在 RAG 架构中,传统方案通常需要同时维护三类数据库。

  • 向量数据库存储文本嵌入向量。
  • 文档数据库保存原始文本内容。
  • 关系型数据库管理元数据(如分类、时间、权限等)。

这种“三库并行”模式不仅带来高昂的运维复杂度,还导致资源重复占用(三份独立实例),难以在资源受限的本地或边缘环境中落地。seekdb 通过单一数据库统一承载向量、文本与结构化元数据,实现一次写入,多路索引(向量索引 + 全文索引 + 二级索引)、统一查询接口,支持混合条件过滤、极低资源开销(1C2G 即可运行),适合个人本地知识库、中小企业内部知识管理系统、边缘侧智能问答应用等。

2.语义搜索引擎,打破模态壁垒

seekdb 的多模态能力使其天然适配跨模态语义搜索场景。无论是文本、图片、音频还是视频,均可通过嵌入模型转化为统一的向量表示,并结合元数据进行联合检索,通过统一向量 + 元数据 + 全文的混合检索框架,打破模态壁垒。典型应用包括:以图搜图、音频内容检、视频片段语义匹配、多媒体资产管理系统。

3.Agentic AI 应用,保证数据一致性

在 Agentic AI(智能体)场景中,Agent 需要频繁执行上下文感知的混合检索,比如结合用户历史行为(标量过滤)、匹配任务目标语义(向量搜索)、检索相关文档片段(全文匹配)。seekdb 的原生混合检索引擎与内嵌 AI 函数能够高效支撑此类复杂查询,避免外部服务调用带来的延迟与一致性问题。适用于任务型对话系统、自主决策机器人、智能工作流引擎等应用场景。

4.AI 辅助编程,提升质量,降低成本

AI 编程助手存在云端 + 客户端双端检索需求,传统方案面临两大挑战。

  • 架构割裂:云端使用多源召回(向量+全文+语法树),客户端依赖轻量插件(如 SQLite + 向量扩展),两套系统逻辑不一致。
  • 性能瓶颈:通用数据库缺乏专业向量索引与优化器,召回效果与效率受限。

seekdb 提供统一的 SDK 与查询接口,可使云端与客户端使用同一套 API,且客户端在嵌入式模式下仍具备专业级向量检索能力。seekdb还支持代码语义搜索、API 推荐、错误修复建议等高级功能。通过这些能力统一技术栈,提升召回质量,降低双端开发与维护成本。

5.企业应用智能化丝滑升级

对于大量仍在使用 MySQL 的传统企业应用,seekdb 提供了一条平滑演进路径:

  • 高度兼容 MySQL 协议,现有应用可无缝迁移。
  • 迁移后即可获得 向量检索、全文搜索、JSON 支持等 AI 原生能力。
  • 为未来引入 RAG、智能报表、自动化分析等 AI 功能奠定数据基础。

因此,MySQL 到 OceanBase 的迁移是“最丝滑”的路径之一。seekdb 作为其轻量化延伸,进一步降低了企业智能化转型的技术门槛。

6.端侧应用智能化的理想选择

随着终端设备算力提升,越来越多智能应用向端侧迁移。seekdb 的嵌入式部署能力使其成为端侧智能数据库的理想选择:

  • 资源占用极低(1C2G 可运行)。
  • 支持离线向量检索与语义理解。
  • 生命周期与应用绑定,无需独立服务进程。
  • 让端侧应用具备“本地大脑”,减少对云服务的依赖。

典型场景包括:

  • 智能家居设备中的本地知识问答。
  • 工业机器人中的实时故障诊断。
  • 移动端个人助理的上下文记忆管理。
  • 车载系统的本地语义导航。

从轻到重、从简到繁: AI 应用快速迭代的理想基础设施

在 AI 应用快速迭代的背景下,开发者面临从原型验证、开发测试到生产部署的多阶段需求。OceanBase 与 seekdb 的深度融合,构建了一套覆盖全生命周期、支持平滑演进的弹性数据库架构,能够满足不同阶段、不同规模场景下的灵活部署需求。

原型验证与开发测试阶段:嵌入式模式(seekdb)

在项目初期,开发者通常需要快速验证 AI 模型效果或构建最小可行产品(MVP)。此时可采用 seekdb 嵌入式模式:

  • 将 libseekdb.so 动态库直接集成至应用中,作为本地数据库运行。
  • 数据库生命周期与应用绑定,启动即用,关闭即销毁。
  • 无需独立部署服务,极大简化环境搭建流程。
  • 支持向量、文本、JSON 等多模态数据存储与混合检索。

嵌入式模式适用于个人开发者快速原型开发、端侧智能应用(如移动端、机器人)、本地调试与算法验证等场景。

测试与小规模生产环境:单机部署模式

当应用进入测试或小规模上线阶段,可迁移到单机部署模式:

  • 启动独立的 seekdb 进程,提供服务端接口。
  • 支持多客户端连接,适合团队协作开发。
  • 可通过配置文件管理数据路径、内存参数等。
  • 仍保持与嵌入式模式的 API 兼容性,代码无需变更。

单机部署模式适用于小型工作负载、测试环境与生产环境、多租户需求等场景。

生产环境:多租户与高可用架构

随着业务稳定运行,需考虑资源隔离、高可用性和容灾能力,此时可选择以下两种生产级部署方式。

  • 单机多租户模式(OceanBase 单机部署) :

    • 使用 OceanBase 单机实例,通过多租户机制实现多个业务之间的资源隔离。
    • 适用于多个业务共享同一数据库实例但需独立管理资源的场景。
    • 支持独立的配额控制、备份策略和监控告警。
  • 主备模式 / 三副本模式(OceanBase 高可用架构):

    • 采用主备架构或三副本(2F1A)架构,保障数据高可用。
    • 支持自动故障切换与读写分离。
    • 适用于对稳定性要求较高的中小规模业务系统。

多租户与高可用架构适用于中小规模工作负载、对容灾和高可用有明确要求的业务、多租户共用数据库的 SaaS 平台等场景。

大规模与高性能场景:分布式集群架构

当业务持续增长,数据量和并发请求激增时,可进一步扩展为分布式集群架构。

  • 无共享分布式集群 :

    • 由多个 OBServer 节点组成,支持水平扩展。
    • 支持大规模工作负载、关键业务高并发访问。
    • 具备强一致性、线性可扩展性与动态扩容能力。
  • 基于对象存储的存算分离集群:

    • 存储层使用对象存储(如 OSS),计算层由 OBServer 提供。
    • 实现“冷热数据分离”,降低存储成本。
    • 适用于海量非敏感数据分析场景(如日志分析、历史归档)。
    • 提供更高的性价比与更强的扩展能力。

分布式集群架构适用于大规模工作负载、关键业务系统、高性能高并发、更高性价比的大数据处理任务等场景。

OceanBase 与 seekdb 的组合形成了一个 “从轻到重、从简到繁” 的完整弹性架构体系,核心优势有如下三点。

  • API 完全兼容:无论选择哪种部署模式,业务代码无需修改;
  • 配置驱动升级:只需更改连接地址与配置参数,即可完成架构迁移;
  • 平滑演进路径:支持从个人开发到企业级生产的无缝过渡。

这使得 OceanBase + seekdb 成为 AI 应用快速迭代的理想基础设施,真正实现了“一次开发,全栈适配”,助力企业在 AI 时代加速创新落地。

当然,在AI时代,AI数据库不足以支撑应用所需的完整基础设施能力,因此,OceanBase构建了上下文工程体系中的关键能力。让我们敬请期待下一篇文章。

在传统行业的数字化转型进程中,人工智能的角色正在发生结构性变化。早期阶段,AI 更多被视为效率工具,用于替代人工完成单点任务;而随着大语言模型工程化落地,行业开始进入以“智能体”为核心的新阶段——智能体来了,这一变化正在重塑企业对 AI 的理解方式与应用边界。

当前,行业内部已逐渐形成清晰分水岭:一类企业停留在“能用 AI”,另一类则开始探索“用对 AI”。差异不只体现在技术层面,更体现在是否对业务逻辑本身进行重构。

一、从工具化应用到智能体系统

传统的工具化 AI,通常承担的是单一能力增强角色,例如文本生成、信息检索或规则判断。这类系统依赖人工触发,不具备持续推理和目标规划能力,其价值主要体现在局部效率提升。

相比之下,智能体并非单一模型调用,而是一类具备目标导向的计算系统。其核心特征包括:

  • 能将复杂目标拆解为可执行的任务序列
  • 能在执行过程中保留上下文与历史经验
  • 能根据结果反馈动态调整行动路径

这使得 AI 从“被动响应工具”转变为“过程参与者”。

二、传统行业的关键差异:用得上 vs 用得准

在制造、能源、金融、物流等高复杂度行业中,这种差异尤为明显。

“能用 AI”的企业,通常聚焦于流程表层优化,例如自动生成报告、替代人工查询、提升处理速度。这类应用虽然改善体验,但并未改变原有的业务决策逻辑。

“用对 AI”的企业,关注的是逻辑层面的对齐:

  • 是否将行业经验转化为 AI 可理解的决策约束
  • 是否让 AI 的推理过程符合真实业务规则
  • 是否将结果评价从“回答是否合理”转向“目标是否达成”

这标志着 AI 应用从“工具引入”进入“系统嵌入”阶段。

三、工程实现的核心转向

从工程视角看,“用对 AI”通常具备以下特征:

  • 动态规划而非固定脚本智能体根据中间结果调整下一步行动,而非执行预设流程。
  • 行业知识强约束通过私有知识库与检索增强生成机制,确保输出符合行业规范,减少通用模型的不确定性。
  • 结果导向的评价体系不再以响应速度或文本相关性为核心指标,而是关注业务目标完成度与合规性。

四、实现路径:逻辑重塑而非功能堆叠

在实践中,传统行业要实现智能体化,通常需要完成三项基础工作:

  1. 业务流程原子化将宏观目标拆解为可被系统调用的细粒度操作单元,使 AI 能够在推理过程中准确选择工具。
  2. 行业知识结构化将标准、规则、案例转化为结构化知识,为智能体提供稳定的决策依据。
  3. 反馈闭环与记忆机制通过持续记录执行结果,将成功经验和失败约束沉淀为长期规则,实现系统级优化。

五、长期视角下的行业变化

随着智能体逐步嵌入核心流程,传统行业的价值结构也在发生转移:

  • 决策能力开始从“个人经验”转向“系统逻辑”
  • 成本结构从人力密集转向算力与逻辑资产
  • 风险控制从事前防错转向过程治理,通过多层校验与人工介入机制实现可控自动化

结语

智能体在传统行业的落地,并非简单的技术升级,而是一次对业务逻辑表达方式的重构。真正具备长期价值的,不是模型本身,而是行业是否能够将多年积累的隐性经验,转化为可被 AI 持续执行和优化的结构化逻辑。

在这一过程中,传统行业不是被动的技术接受者,而是智能系统规则的定义者。

服务器数据恢复环境:
某法院的一台服务器由于硬盘出现故障导致服务器无法工作。
服务器情况:
图1
服务器管理员将服务器上所有硬盘拿到北亚数据恢复中心要求恢复数据。
北亚企安硬件工程师对所有硬盘进行物理故障检测,经过检测未发现有硬盘存在物理故障。

服务器数据恢复过程:
1、北亚企安数据恢复工程师将所有硬盘以只读方式进行扇区级别全盘镜像。镜像完成后将所有硬盘还给用户方。后续的数据分析和数据恢复操作都基于镜像文件进行。
2、基于镜像文件分析所有硬盘底层数据。尝试找出服务器故障原因。
3、经过分析,北亚企安数据恢复工程师发现服务器内至少有2块硬盘离线。
4、服务器数据恢复工程师使用穷举法将最早掉线的硬盘剔除后重组磁盘阵列,将生成的数据和服务器内的另一组完好raid同时挂载到原服务器上进行校验。
5、经过用户方验证,该服务器内的所有数据成功恢复。

服务器常见故障&数据恢复流程:
服务器运行过程中可能会出现各类故障导致数据丢失,那么服务器通常容易出现哪些故障呢?
1、同一阵列内多块硬盘出现物理故障导致数据丢失;
2、服务器的模块老化;
3、服务器系统更新出现问题;
4、意外断电;
5、错误的拔插服务器内的硬盘;
6、误删除等人为因素;
......
上述问题都有可能导致服务器崩溃和数据丢失。
一旦服务器出现故障导致了数据丢失,首先应该将故障服务器内所有运行正常的非热备盘进行镜像备份。将存在物理故障的硬盘进行保护,避免磕碰、进水等。
如果有条件的话,可以将故障硬盘里的数据进行镜像备份。基于镜像分析数据,找出原阵列中的结构参数,重建阵列并进行逻辑校验,通过校验后即可导出服务器数据。
如果服务器由于未知原因出现崩溃、无法启动导致数据丢失问题,切忌非专业人士在非洁净空间内拆卸服务器硬盘和更换磁头。建议服务器管理员将故障硬盘妥善保管,让专业数据恢复工程师进行处理。

编注:每年的 1 月 28 日是国际数据隐私日,该日期的设立旨在提高全球公众、企业及组织对个人信息保护的意识,强调尊重隐私、建立数据安全信任。

春节将至,你是否也已开始在各大电商平台上置办年货礼物、或者在用各种 app 准备你的新春出游计划?为了让你在使用这些 app 时买得更放心、玩得更舒心,避免遭受各种广告信息骚扰甚至导致隐私泄漏,我们重新修订了这篇内容,希望帮你用 iPhone 管好个人数据。


如今,手机承载了我们太多重要的隐私信息:我们自己和家人好友的照片、随手写下的笔记或者是重要的工作文件,甚至是各种身份证件、银行卡号、账户密码等等。这些数据一旦泄露,后果不堪设想。

这篇文章整理了一些能够让你更好地保护 iPhone 数据和隐私安全的技巧,希望能对你有所帮助。

用好生物识别功能

生物识别技术的目的是为了让设备知道「你就是你」,凭借你身上独一无二的指纹、面容,iPhone 可以认出是谁在使用它。并且 iPhone 的生物识别完全基于本地,并且数据会加密存储在独立的安全隔区中,不用担心自己的生物信息会被上传到服务器。

除了可以用 iPhone 的生物识别(即 Touch ID 与 Face ID)解锁设备外,iOS 还支持通过生物识别锁定隐藏相册、最近删除、备忘录等可能涉及隐私信息的地方。在最新的 iOS 18 系统里,Apple 也添加了呼声很高的「应用锁定」功能,进一步保护你的隐私安全。

你可以在系统「设置 - 触控 ID / 面容 ID 与密码」中对设备锁定后的权限进行详细设置。

比如关闭「『今天』视图」后,在未解锁 iPhone 的情况下我们将无法使用 Widget 小组件。虽然 Apple 第一方的许多小组件支持在未解锁状态下自动隐藏信息,但还有大量第三方 app 并没有提供相关支持。

屏幕使用时间隐藏了相关信息,Sorted 则没有

因此,如果你在 iPhone「负一屏」放了能够显示待办事项、运动数据、常用个人信息等隐私性相对较高的应用部件时,我比较推荐你关闭这个选项。对于「家庭控制」「钱包」等选项也一样,你可以根据自己的需求选择关闭或者打开这些选项。

如果你使用的是支持 Face ID 的设备,那么不妨打开「注视以启用面容 ID」的功能。如果你的眼睛没有看向设备,即使它识别到你的面部,也不会解锁。你也可以在「设置 - 通知 - 显示预览」中将通知预览修改为「解锁时」,得益于 Face ID 的便捷,可以做到只有你看屏幕时才会显示通知的具体内容。

关联阅读:iPhone X 用刷脸的 Face ID 取代了指纹,睡觉时真的会被解锁吗?

如果你拥有 Apple Watch 的话,在「触控 ID / 面容 ID 与密码」中还可以开启「使用 Apple Watch」解锁的功能。当 iPhone 无法识别你的面部信息时,会通过你手腕上已解锁的 Apple Watch 来解锁你的 iPhone。

在解锁时,Apple Watch 会轻拍两下你的手腕作为提示。如果你的手机不在自己手中,还可以点击 Apple Watch 上的「锁定 iPhone」来撤销解锁。撤销后,下一次解锁手机必须输入锁屏密码才可以继续使用面容 ID 或 Apple Watch 解锁。

此外,你还可以将自己的账号、密码交给 iPhone。它会在你登录时提醒你是否要保存,保存后你就可以用生物识别来自动填充密码,既方便,也降低了在公共场合被窥屏的风险。你也可以打开「抹掉数据」的选项,当设备密码被连续输错 10 次后,就会自动抹除所有数据,即使别人拿到了你的 iPhone,也无法获取其中的数据。

需要注意的是,「抹掉数据」选项会将同一个错误密码的输入次数算为一次,系统会在输入错误密码的次数增多之后延长你可以进行下一次输入密码操作的等待时间,因此你不必担心有人恶意在你的 iPhone 上输入错误密码抹掉设备数据。

关联阅读:

不能忽略的网络安全

在提及数据安全时,许多人容易忽视的一个点是 Wi-Fi 网络的安全。尤其在连接到一些公共 Wi-Fi 时,存在设备被追踪的风险。默认情况下,iOS 会替我们打开「私有无线局域网地址」和「限制 IP 地址跟踪」的功能。

前者可以减少不同 Wi-Fi 之间通过 MAC 地址进行追踪的风险,后者则可以在「邮件」app 和 Safari 中避免网络追踪器通过 IP 来追踪你的信息。你可以打开「设置 - 无线局域网」,然后点击当前 Wi-Fi 右侧的 ⓘ 来手动修改。

在日常网页浏览过程中,我们也有可能被网页上各种跟踪器追踪我们在不同网站上的行动。在 Safari 的网页设置菜单中,我们可以找到「隐私报告」,并详细查看我们都在哪些网站被跟踪器追踪了,以及 Safari 都为我们阻止了多少追踪器。

Iwj7bexHco1L1lxNJ8DcUiyKnlb

密码守护,不容失误

随着我们对互联网的愈发依赖,如何管理自己的海量密码也成了近些年来大家热议的话题。在 iOS 18 新增的密码 app 里,我们可以更加轻松地将密码放置在统一的地方进行管理。

比起一些第三方密码工具,iOS 自带的密码 app 最大的优势在于使用门槛足够低,并且与系统高度绑定。如果你此前有用过 iCloud 钥匙串功能,那么曾经存储的密码都可以无缝迁移到密码 app,在新注册账户时,系统也会弹出提示帮你创建强密码或保存你填入的密码。

与同类工具相似,密码 app 也支持展示密码中存在的安全漏洞,比如容易被人猜出,或是曾遭到泄露等,让你能够更了解自己当前的密码安全情况。

X7GtbU8PPobBhMxvQ2QcwWJQnGg

守好权限,安全无限

很多时候,隐私泄露往往发生在无意识之间。比如 app 可能从你的剪贴板里读取到你刚刚粘贴给朋友的电话号、收件信息,或者通过读取你的定位信息进行跟踪……因此,当我们打开一个新 app 时,千万不要图省事就把所有权限都授予 app。

关联阅读隐私与定位权限

iOS 对于权限的管理非常严格,你可以在「设置 - 隐私与安全性」看到所有的权限信息。从我们能想到的定位、麦克风、照相机等权限,到许多人不知道的「附近交互」「语音识别」甚至是「研究传感器与使用数据」等权限都可以单独修改。

iOS 基本不会出现「不给权限不让用」的问题。以支付宝为例,即便你只给它打开网络权限,也能正常使用(但没有开照相机权限会导致无法扫码)。因此,我们在给 app 开启权限时,只开启最低限度的可用权限(比如网络等)即可尽力避免不必要的隐私泄露。

此外, iOS 也提供了临时权限来应对一些特殊情况。比如,我不想给微信开启定位权限,但我偶尔需要给他人发送位置信息。这时候,我们只需要将微信的定位权限设置为「下次询问或在我共享时」,当你想要给他人发送定位时,iOS 就会弹窗提醒你是否授权,并且支持切换定位精确度。这时候只需要点击「允许一次」就可以临时给微信开一次权限。

不仅是定位权限,就连照片权限和剪贴板权限也支持授予临时权限。在权限设置中将照片权限修改为「选中的照片」后,从 app 的视角来看,你的相册里就只有你所选中的那几张照片。即便 app 在后台偷偷上传了你的相册数据,也很难带来不必要的隐私泄露。

默认情况下,iOS 会将剪贴板权限设置为「询问」。当 app 获取你的剪贴板权限时,需要你在弹窗中手动确认才可以。就算你将剪贴板权限修改为「允许」,应用在读取剪贴板的时候,系统也还是会以浮窗的形式来提示你。

从 iOS 14 开始,iOS 在系统里加入了麦克风、照相机权限指示灯。只要你的麦克风 / 照相机被唤醒了,无论是被系统还是 app 唤醒,屏幕右上角都会出现一个圆点用于提醒,橙色圆点代表着麦克风正在被调用,绿色则代表着相机。

麦克风指示灯

打开控制中心,还可以查看到当前正在调用这些权限的应用。

给 App 加把锁

不知道你有没有过这样的尴尬情况,当你把手机交给别人时,总会担心别人看到你不想被看到的 app 或信息。对于一些不想被他人看到的重要 app,我们可以长按图标并选择「需要面容 ID」将其锁定。在锁定时还可以选择将其隐藏,这样一来,app 图标就不会出现在主屏幕上,而是会被收进 App 资源库的「隐藏」文件夹。

MicubmuaqotxWVxissmca4z8n5d

在锁定 app 之后,每次启动时都需要使用面容 ID、触控 ID 或密码解锁才能进入,也就不用再担心那些重要的 app 和信息被别人看到了。

保护 iCloud 很重要

默认情况下,iPhone 会自动开启 iCloud 照片图库、系统备份等功能。这也就意味着一旦你的 Apple 账户被别人得知,你的照片、备忘录中的数据就有泄露的风险。保护 Apple 账户的方法很简单,只需要在 Apple 官网登录并打开「双重验证」即可。

开启这一功能后,即使你的 Apple 账户密码泄露,对方也无法在未经你同意的情况下登录你的 Apple 账户。每当你的 Apple 账户在新设备登录时,Apple 就会向你的受信任设备发送一条请求许可的信息,并将尝试登录的位置发送给你。只有在同意并输入动态密码后,你的 Apple 账户才能成功登录。当然,即使你的信任设备不在身边,也可以使用手机号来获取动态密码。

关联阅读:为了你的苹果设备安全,请记得开启「双重认证」功能

设置好「双重验证」功能之后,如果你还是担心 iCloud 中的数据有泄漏的风险,你还可以在 iCloud 设置选项中手动选择 iCloud 保存的内容。手动筛选后,不但可以节省 iCloud 空间,还能减少最坏情况下造成的损失。

警惕「非官方」陷阱

App Store 作为 iPhone 上唯一的应用商城,受到 Apple 严格的管控和监督,因此你可以放心地下载里面的 App。在欧盟新规之下,Apple 也不得不开放了 iOS 应用侧载。虽然只局限在欧盟地区,但通过第三方渠道下载 App 依然需要擦亮眼睛辨别。

在使用某些第三方应用商城时,它往往需要你在「设置 - 通用 - 描述文件」中信任企业证书。企业证书本是 Apple 给企业用户签发的、用于分发内部 App 的描述文件,这个文件可以让企业开发者无需将 App 上架 App Store 也可自由分发。

许多第三方平台就是钻了这个空子,将应用以此形式来发布。由于 App 不受 App Store 的审核,它可以随意调用系统的私有 API 来窥探你的隐私,非常不安全。随意调用私有 API 的危害包括但不限于读取设备中安装的 App、收集用户的 Apple 账户等信息,因此,在 App Store 中下载应用才是最安全的选择。

关联阅读:在 iPhone 上装未验证应用?这些风险你能承担吗 | 科普

手机丢了怎么办

现在丢一台手机的成本远高于手机本身的价值,手机丢了就意味着你要和手机里的所有数据告别。如果你担心或者已经丢过手机,不妨从现在开始未雨绸缪,做好 iPhone 的数据备份工作,防止数据丢失给自己造成不必要的损失。

在使用访达(macOS)或 iTunes(Windows)备份 iPhone 时,你可以勾选「加密本地备份」保护你的备份文件,当你需要恢复备份时,只要输入密码即可(密码务必谨慎保管,遗忘密码将无法恢复备份)。如果你需要备份「健康」应用中的数据,则必须加密备份。iCloud 备份会默认进行加密,密码为设备密码。

虽然做好备份可以让你在最大程度上保留数据,但在手机丢失后还是会有数据泄露的风险。这时候,iCloud 的「查找」功能就能发挥作用了。你可以在 iCloud 官网直接登录 Apple 账户,不需要经过双重验证就可以使用「查找」的相关功能。但如果你想访问照片、通讯录等信息,依然需要双重验证,安全性能够得到保障。

除了备份以外,我们还可以在「设置 app - 密码」里打开「失窃设备保护」功能。这个功能可以在你的 iPhone 丢失且对方知道你设备密码的极端条件下发挥作用,尽可能保护你 iPhone 里的隐私信息。在开启此功能后,当你的设备需要进行诸如访问密码 app、关闭丢失模式、抹掉所有内容和设置等敏感操作时,需要使用面容 ID 或触控 ID 进行生物识别认证,并且无法使用密码替代。

AgbVbOMZ5ogUSjxlMdPcwKG3nmg

在打开「失窃设备保护」时,一些敏感操作甚至还会触发安全延迟机制。你需要在完成一次生物识别认证后,等待一个小时再完成一次认证。这也就意味着,即便你的 iPhone 被别有用心之人盗走,对方也几乎没有办法抹掉你的 iPhone 或锁定你的 Apple 账户。与此同时,你也将拥有更多时间登录 iCloud 官网将你的 iPhone 设置为丢失模式。

无论是在「查找」App 还是网页端,你都可以获得相对完整的体验。包括获取设备定位、远程播放声音、设置为丢失模式和直接抹掉数据。此外,在 App 端还多了一个「路线」的功能,它可以帮你导航至设备所在地附近。

系统默认会打开离线查找功能,即便 iPhone 被关机了也能通过定位网络找回设备。

如今很多应用支持手机验证码登录,而手机丢失后可能会被别有用心的人拆下 SIM 卡来登录这些应用。你可以在「设置 - 蜂窝网络 - SIM 卡 PIN 码」中打开 SIM 卡锁定,当设备重启或拔下 SIM 卡后,它就会被自动锁定,需要输入密码才能正常使用。

如果你先前没有设置过 SIM 卡 PIN 码,它默认是 1234 或 0000。如果你忘记自己设置的 PIN 码,则需要联系运营商。切勿擅自尝试 SIM 卡 PIN 码,多次猜测错误会导致 SIM 卡被永久锁定。

关联阅读:为你的 SIM 卡开启 PIN 码保护

这些技巧值得一试

有些时候你需要将手机暂时交给别人,却不希望对方乱动你手机里的东西。你可以事先在「设置 - 辅助功能 - 引导式访问」打开引导式访问,它会强制开启辅助功能快捷键。

当你将手机交给别人之前,可以连按三下 Home 键或侧边按钮即可激活。引导式访问可以禁用屏幕触摸、退回主屏幕等功能,需要输入预先设置的密码才能解除。

MOHTbiULgosXUexeRygc8LeanFb

其实在「屏幕使用时间」里,还有一个「内容和隐私限制」的功能。它不但可以一站式管理 App 的隐私权限(比如不允许任何新 App 访问照片),甚至还可以做到隐藏 App 的功能。在「允许的 App」中,你可以手动关掉想隐藏的 App,不过这一功能仅支持部分系统应用。对于第三方 App,你可以在「内容访问限制 - App」中按照年龄分类进行调整。

值得一提的是,在「允许的 App」中关掉的系统应用或功能并不只是将图标隐藏,而是彻底关闭这一功能。比如当你关闭相机后,无论是通知中心左滑,还是在其它应用内,都无法使用相机功能。另外,像 FaceTime 这一类需要用到相机的系统应用也会同时被隐藏。

关联阅读:iOS 12 新增的这个功能,让你知道自己在手机上花的时间去哪儿了

以上是我整理的一些对于保护 iPhone 数据和隐私安全有用的技巧,如果你还有其它方法或者看法,欢迎在评论区与我们分享。如果你想了解更多保护 iPhone 隐私的技巧,欢迎阅读少数派为你准备的 iPhone 数据隐私保护专题:

📱 iPhone 数据安全保护指南专题

    VibeCoding 前后端应该放一个仓库吗,Node.js 和 Vue.js 这样都是 TypeScipt 语言写的我一般,有时候放一起,但是 后端是 Java 的,或者 Python 的,放一起打 Docker 镜像有点奇怪。

    发现很多有名的项目都是前后端放一起的,想问问大家都是怎么做的。

    最近想买一台 Mac 用于开发,结果发现叠加国内和教育可以做到万兆版 3760.4 的价格。
    于是开启折腾模式。
    1.找个学生搞定教育资格
    2.收货地址要有国补
    3.苹果电脑整机一定要发浙江区域(保修 3 年,其他地区一律 1 年)
    一顿操作猛如虎,发现最后国补竟然要手机定位在浙江。
    我掏出巨魔的 IPHONE 给它来个虚拟定位,搞定。

    作者:王博涵 小步外勤产品总监,外勤管理数字化专家。

    随着社会治理重心下沉与精细化管理要求的提升,“网格化管理” 已成为基层治理的重要抓手。成千上万的网格员、综合执法队员、环保巡查员活跃在街道、社区与乡镇的各个角落,他们被视为政府感知民情的 “眼睛” 和解决问题的 “腿”

    然而现实中,许多单位仍面临共性难题:外勤人员分散、过程不可控、数据不闭环、考核不透明,导致管理成本高、执行效率低、群众满意度难以提升。

    那么——外勤工作人员到底该如何管理?网格员管理怎样才能做到“有据可查、可量化、可闭环”?

    本文将提供一套可落地的数字化实践方案。

    一、政务外勤管理的“最后一公里”难题:4个典型痛点

    在政务、公用事业及城市治理场景中,外勤管理的难点往往不是 “人不够”,而是 “过程失控”

    1、人员分散,鞭长莫及

    网格员覆盖社区/村落,管理者在办公室难以实时掌握:

    • 人员是否真正下沉一线?
    • 是否按责任网格巡查?
    • 是否存在脱岗、磨洋工现象?

    2、监管缺失,巡查走过场

    很多地区仍依赖微信群发照片、纸质记录、电话汇报等方式,容易造成:

    • “骑车绕一圈就算巡查”
    • “坐办公室填记录”
    • “虚假巡查、形式主义”

    3、数据孤岛,事件流转慢

    发现问题后若仍靠手工传递信息,会导致:

    • 信息滞后、派单缓慢
    • 部门协同效率低
    • 处置过程不透明

    4、考核无据,干多干少一个样

    缺乏量化指标,评优评先往往 “凭印象”,挫伤人员积极性。

    核心结论:外勤工作人员管理必须从 “人治、粗放” 转向 “数字化、网格化、闭环化”

    二、实现“责任数字化”

    网格化管理的核心是 “定人、定岗、定责”。管好外勤,第一步不是考核,而是明确责任边界。

    1、电子围栏——划定“数字责任田”

    通过电子围栏在地图上划定每个网格边界,并绑定至具体网格员。

    落地价值

    • 进入责任区方可打卡上岗(防止异地代打卡)
    • 工作时间违规离开网格自动预警(防止脱岗)

    2、轨迹留痕——用轨迹破解“巡查走过场”

    轨迹是外勤过程最客观的证据。

    关键能力

    • 低功耗高频采集巡查路线
    • 支持轨迹回放、覆盖率分析

    管理价值

    • 是否覆盖重点区域一目了然
    • 自动识别异常停留、轨迹跳变(识别模拟定位)

    3、关键点位签到——重点区域“必到”

    对于重点监管对象(九小场所、特种设备、河道、孤寡老人等),仅靠轨迹不够,必须 “到点打卡”

    常用手段

    • NFC标签 / 蓝牙信标签到
    • 现场拍照,自动添加时间地点水印

    三、事件上报与闭环处理

    许多单位的外勤管理只停留在 “人在不在”,但真正决定治理效能的是:问题能否被快速发现、流转与解决

    1、随手拍上报——降低门槛,提高时效

    网格员发现问题时:打开APP → 拍照(自动记录时间地点)→ 选择事件类型 → 语音/文字备注 → 一键提交

    好处

    • 上报更快
    • 证据更强(照片水印不可抵赖)
    • 信息更准确

    2、智能派单 + 状态追踪——形成闭环机制

    事件上报后系统自动派发,按规则分流:

    • 简单事件:自动派至环卫/物业/处置人员
    • 复杂事件:指挥中心一键联动城管、环保等部门

    全程状态可追踪待受理 → 处理中 → 已办结

    结果反馈与核查:工单须经 “核查” 方可关闭。

    处理完毕后上传 “整改后照片”,并触发复核任务:

    • 网格员现场核查
    • 确认满意后结案

    这套机制真正实现了 “发现—上报—派遣—处置—核查—结案” 的完整闭环。

    四、用数据提升治理能力

    数字化外勤管理的终点不是 “管住人”,而是 “提升治理效能”

    📊 数据驾驶舱:一图管全域

    通过地图可视化实时呈现:

    • 网格员分布
    • 今日在线人数
    • 巡查覆盖率
    • 事件热力图/高发区域

    管理价值:领导层无需紧盯工单细节,即可掌握整体态势,实现精准调度

    📈 量化考核:让优秀者脱颖而出

    系统自动统计绩效指标:

    • 巡查里程、在线时长
    • 上报事件数、办结率
    • 群众满意度等

    自动生成月报、排名与预警:

    • 优秀者给予奖励
    • 落后者进行约谈

    实现从 “凭印象考核”“用数据说话” 的升级。

    五、如何选择外勤管理系统?政务场景需关注这3点

    政务、公用事业场景与企业需求不同,更强调:

    • 合规留痕
    • 数据安全
    • 组织架构复杂

    建议重点考察三项能力:

    防作弊能力是否过硬:能否识别模拟定位、Root/越狱环境、异常轨迹跳变?

    是否支持多级组织架构:至少支持市—区—街道—社区—网格,并可灵活配置权限。

    是否支持私有化部署与安全认证:政务单位对数据敏感,系统须保障数据安全与合规

    六、结语

    外勤工作人员管理不是单纯 “盯人”,而是构建一套公平透明、过程可控、结果可追溯的执行体系

    当网格员管理实现:电子围栏定责、轨迹留痕防走过场、事件工单闭环处置、驾驶舱态势感知、绩效量化公平考核

    基层治理才能真正做到 “人在网中走,事在格中办”

    现在的 AI 工具和规范是百家争鸣,百花齐放。
    如果一个项目要尽可能去适配各种 AI IDE ,让他们都能够理解统一的规范,指导编程,应该怎么做?
    对于项目 AI 规范最佳实践,大家有什么心得?
    应该编写哪些规范文件,放在哪里?怎么组织起来?

    AI IDE:
    vscode ,antigravity ,claude...

    AI 扩展:
    continue cline...

    AI 规范:
    GEMINI.md
    AGENTS.md
    CLAUDE.md
    ...

    项目结构:
    .agent
    .aiconfig
    .antigravity
    .claude
    .cline
    .continue
    .copilot
    .roo
    .vscode
    ...

    这个 skill 极其重要

    昨晚折腾 alist 三小时 有太多 bug 比如莫名其妙 r2 挂的不显示,onedrive 官 token 根本无效

    这项目基本就死了 我还特喵的除虫打算发 pr

    后面才刚知道闭源了

    转移 openlist 之后一切正常神清气爽

    我希望最开始 llm 就应该使用时效分析 skill 告诉我这货年久失修了 比较大的分支是 openlist………

    特此记忆 有时间完成这个必选 skill

    延伸:另一个 skill 是用户做任何项目的时候都要全网搜索有没有现成的轮子 以及踩过的坑

    这些都是 llm 应该主动去做的

    包括这个 skill 我认为现在已经有轮子 只是我很难找到分值最大的

    墨天轮社区举办的 【文档悬赏令】系列活动,每次聚焦一个主题,征集真实、可操作的第一手文档,希望能扩充社区文档资源、为更多人提供有用的参考资料,让技术学习少走弯路!

    第2号悬赏令活动主题:数据库巡检方案实践

    数据库巡检是保障业务稳定运行的核心运维环节,更是DBA日常工作的重中之重。当前数据库类型、场景十分丰富,多数从业者需耗费大量时间整理巡检清单、调试巡检流程。墨天轮社区第二期【文档悬赏令】活动特围绕这一主题发起有奖征集活动,诚邀您上传实用、可落地的数据库巡检文档,和社区众位DBA们互帮互助,让巡检工作更高效、更标准!

    一、活动时间

    2026 年 1 月 26 日 - 3 月 28 日

    二、文档要求

    1、主题范围

    本次征集聚焦 “数据库巡检” 核心主题,覆盖国内外主流数据库,基础巡检、专项巡检、自动化巡检等多类实用方案等均可,具体范围如下:

    巡检主题细分(包含但不限于):

    • 基础巡检:日常运维巡检表/巡检清单/巡检手册
    • 专项巡检:性能监控与优化巡检/灾备状态巡检/单机or集群巡检
    • 方式:手动巡检标准化文档/自动化巡检/脚本命令/巡检工具

    数据库不限

    • 商业数据库:Oracle、SQL Server等
    • 国产数据库:达梦DM8、人大金仓KingbaseES、OceanBase等国产库
    • 开源数据库:MySQL、PostgreSQL、Redis等开源库

    2、合格要求与格式

    文档内容需明确巡检目的、适用场景、巡检流程等,包含巡检相关代码(部分敏感信息可隐去)。

    • 页数要求:≥5 页
    • 必加标签:上传时需在 “标签” 栏填写 “数据库巡检” + 数据库种类(如 Oracle、OceanBase) 两个标签
    • 支持格式:优先推荐 .doc、.pdf、.ppt、.md、.txt 格式(可支持前 5 页预览,下载率更高);也可上传 .zip (需附内容说明);
    以下文档将被判为不合格:
    1)主题无关:非“数据库巡检”相关主题
    2)内容搬运:直接上传电子书或产品官方文档、他人演讲PPT,或直接复制抄袭、全文搬运网站其他文章/文档内容(已发布的文章内容不可以同时上传成文档参与活动,但如果是您曾发在其他网站的内容则可以上传参与)
    3)流水账或凑字数:文档页数需≥5页,但不可通过凑字数、使用大量无关图片占篇幅等
    4)作者刷量:不可刷数据-我们鼓励作者自发宣传自己的文档,但不可使用人工刷量、注册小号刷量等方式提高下载量;不可将文档拆分多份上传,导致单份内容无实际意义、缺乏完整性
    5)重复文档:重新上传以前发布的文档系统会自动识别判定为重复仅自己可见,也不可删除旧文档后重新上传

    三、上传步骤

    1. 登录上传:登录墨天轮账号后,点击链接直达上传页:https://www.modb.pro/docUpload,或在首页下拉框点击 “传文档”;

    1. 填写信息

      • 标题:建议明确标注 “数据库种类 + 巡检场景”(如《MySQL数据库巡检手册》《Oracle数据库常规巡检项目和命令》),帮助他人快速判断主题
      • 标签:上传时需在 “标签” 栏填写 “数据库巡检” + 数据库种类(如 Oracle、OceanBase) 两个标签
      • 墨值设置:支持免墨值 / 5 墨值 / 10 墨值 / 25 墨值 / 50 墨值 / 100 墨值,设置墨值后,他人下载时支付的墨值将实时计入您的账户(ps:一般来说墨值越低下载门槛越低,被下载可能更高)

    1. 提交:确认信息无误后点击 “提交文档”即可。于 “控制台-内容管理-我的文档” 处可查看您所有文档明细,若您遇到“仅自己可见”“转换失败”等状态可询问墨天轮小助手(VX:modb666)询问具体原因。

    四、奖励设置

    本次活动奖励分为 “合格奖”“有效助人奖”“巡检先锋奖” 三类

    1、合格奖

    每位用户每日首次上传≥5 页的合格文档,可自动触发 “每日任务” 获 5 墨值。此外,本次活动奖励额外可叠加,根据用户合格文档数量发放不同等级的墨值奖励,具体如下:

    合格数量墨值
    0-3个10墨值/份
    3个以上15墨值/份

    2、有效助人奖

    根据单个文档下载数发放不同等级的墨值奖励,每个用户最多可有5个文档获得本项奖励:

    被下载数墨值
    30<被下载数 ≤ 5050墨值
    50<被下载数 ≤ 100100墨值
    100<下载数 ≤ 150200墨值
    150<下载数 ≤ 200300墨值
    下载数>200500墨值

    3、巡检先锋奖

    将综合评估用户上传的合格文档的内容质量及总下载量,评选出 “既多产、又优质” 的核心贡献者,发予相应奖励:

    奖项等级奖励内容
    第 1 名1000 墨值 + 100元内数据库实体书一本
    第 2 名500墨值 + 爱国者U盘(128GB 双接口)
    第 3-5 名笔记本电脑支架(可旋转)

    说明:三类奖项单独评奖、每位用户可重复获得。其中新版本先锋奖数量将根据实际参与情况灵活调整,若参与情况佳则可能增设、反之亦然。

    五、奖励公布与发放

    1. 进度公示:为了让大家更加了解自己的参与进度,将在活动期间不定期在活动原文评论区公布最新合格情况。若发现违规行为也欢迎向工作人员反馈,一经核实将取消其参与资格。
    2. 结果公布:活动结束后 3 个工作日内公布所有获奖名单;
    3. 奖励发放:墨值将在结果公布后 1-2 个工作日内发放至账户;实物奖励将通过私信收集地址,10 个工作日内寄出。

    常见问题(Q&A)

    Q1:如何让我的安装文档下载率更高?
    A:建议在标题、简介中写明 “适用版本 + 核心亮点”,若上传的是.zip 等无法预览的格式,可在评论区附关键步骤截图或内容大纲,帮助他人判断价值。

    Q2:墨值可以干什么?
    A:墨值是墨天轮社区的“通用货币”,可以用来下载付费文档、赞赏他人文章或进行提问赞赏、直播打赏、兑换商品、参与墨值拍卖等。具体可查看使用说明:https://www.modb.pro/db/446902

    Q3:我的文档会被展示在哪里?
    A:文档上传成功后可在您的控制台、个人主页找到相应链接。管理员也会择优推荐到网站首页及文档页面,为您的文档增加更多曝光。若您觉得您的文档优秀,欢迎您转发分享或自荐给工作人员,我们将为您争取首页推荐、转发等更多曝光。


    无论是你是初学者还是资深开发者,欢迎你加入本次文档悬赏活动,分享你的优质文档,与更多朋友一起学习进步!未来我们也将针对更多技术主题推出悬赏活动,如果你有推荐的主题也不妨告诉我们!乐知乐享、共同成长!

    往期活动导航
    【文档悬赏令】第1号:数据库新版本的安装实操


    欲了解更多可浏览墨天轮社区,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的统一平台,持续促进数据领域的知识传播和技术创新。

    关注官方公众号: 墨天轮、 墨天轮平台、墨天轮成长营、数据库国产化 、数据库资讯