数据库备用副本和报表副本(供 Kaam360 团队使用)
本指南供 Kaam360 团队(平台面板)使用。客户不需要阅读。
什么是备用副本
在线站点把数据保存在服务器上的一个 PostgreSQL 数据库中。备用副本(standby)是同一台服务器上的第二个 PostgreSQL,每一项更改一发生就会收到,因此只落后几毫秒。如果在线数据库损坏,站点可以在大约两分钟内切换到备用副本,而不必恢复昨晚的备份。它不能代替每晚的异地备份,后者防范的是整台服务器丢失:两者都需要。
一切都通过 GitHub 中的按钮完成(Actions,PostgreSQL standby,Run workflow):选择模式,在确认框中输入同一个词,按绿色按钮。书面步骤在文件 deploy/STANDBY.txt 中。
查看它是否健康
- 打开平台面板,查看 Overview。Database standby 卡片会显示 Streaming(良好)、Behind(落后)或 Not connected(未连接),并说明落后多少。
- 站点的 /health 地址中的 "standby" 部分有同样的信息。
- 在 GitHub 中,模式 status 会打印完整的一页:Windows 服务、流式复制状态、落后的字节数和秒数、副本大小。它不做任何更改。
- 当备用副本缺失或落后达十分钟时,团队会收到一封邮件(发送到 Settings & team 中的支持地址,否则发送给所有平台管理员),最多每六小时重复一次。平台的 Activity 日志会在出问题时和恢复正常时各记录一行。
设置或修复
运行模式 setup。在线站点不会停止。它会创建数据库用户(密码只保存在服务器上),做一次完整复制,把副本作为备用启动,注册 Windows 服务,从外部封锁其端口,并通知站点。健康的备用副本不会被改动,因此再次运行总是安全的。如果某一步失败,脚本会说明是哪一步以及原因,在线站点不会有任何变化。
切换到备用副本
当在线数据库损坏而备用副本正常时,运行模式 failover。站点会显示"正在更新"页面约两分钟。备用副本成为在线数据库,站点指向它,之前的设置保存为 appsettings.local.json.before-failover。随后脚本会打印下一步该做什么:照常使用站点,暂时保留旧数据库文件夹,并在服务器空闲时运行 setup 以创建新的备用副本。被提升的副本永远不会变回备用;新的备用会从一份新复制创建。
大型报表从副本读取
当备用副本正在流式复制且落后不到几分钟时,报表生成器、定时报表邮件、CSV 和 Excel 下载、项目组合、项目报表和完整数据下载都从它读取,而不是从在线数据库读取,这样大型报表永远不会拖慢正在工作的人。这类报表会显示 数据截至,后面是副本中最新更改的时间。当副本缺失、无法访问或落后超过几分钟时,报表会改用在线数据库,无需任何人操作。副本永远不会被写入,每份报表只能看到自己组织的数据,与在线数据库完全一致。/health 地址会说明报表是否由副本提供("reports")。
移除
运行模式 remove。它会停止并删除备用副本,并把它从站点设置中移除。在线数据库不受影响。随时可以再次运行 setup。
继续阅读
- 在 Power BI 中构建您自己的仪表板使用只读数据源密钥,将 Power BI Desktop 和 Power BI 服务连接到您自己的 Kaam360 数据,然后按计划刷新。
- 已连接的应用:让其他应用使用您的 Kaam360 账户允许手机应用、日历或报表工具使用您的账户,查看它能做什么,并随时断开。
- 将 AI 工具连接到 Kaam360 (MCP)让 Claude、ChatGPT、Cursor 和其他 AI 工具以您的身份安全地读取并更新您在 Kaam360 中的工作。
仍有问题?请在应用内使用帮助与支持,我们会协助您。