You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

云服务器部署的Parse Database数据仅留存数日故障排查求助

故障说明

本次部署链路涉及多个组件,以下明确环境、操作流程、故障现象,再给出诊断方法与解决方案:

部署环境

  • 运行Ubuntu Server系统的腾讯云CVM实例,域名已解析到该服务器公网IP
  • 部署Nginx服务监听1337端口,将请求转发到example.com/parse
  • MongoDB运行在Docker容器中,监听27017端口
  • index.js中配置databaseURI为mongodb://localhost:27017/dev,SERVER_URL为https://example.com/parse

部署操作流程

  • 通过SSH登录服务器后,使用screen会话执行npm start启动Parse Server,detach screen会话后关闭SSH终端
  • 本地运行Parse Dashboard,配置serverURL为https://example.com/parse

故障现象

初始运行一切正常,可通过Parse Server仓库自带测试页、Python调用Cloud Code、Dashboard操作数据,增删类和对象均符合预期;但运行12到72小时后,Parse Dashboard中所有数据全部消失,重新写入数据可正常运行,但最长留存时间不超过72小时。

已排查进展

已确认screen detach后相关进程未被杀掉,执行top可看到npm start、mongo进程均正常运行,执行docker ps可看到容器状态正常,Nginx服务也正常运行。

诊断方向与解决方案

优先从进程异常复位、数据重置方向排查:

  1. 开启MongoDB全量操作日志回溯数据删除行为:执行db.setProfilingLevel(2, { slowms: 0 })开启最高级日志记录,日志会写入mongodb.conf指定的文件中,可定位数据消失时间点的所有数据库操作。
  2. 修复Docker MongoDB持久化配置:Docker默认不持久化容器内存储,若容器被重建(如宿主节点自动清理、进程异常退出后重启容器),未挂载外部存储的MongoDB数据会全部丢失。
    正确持久化操作步骤:
    • 创建命名卷:docker volume create <volume_name>
    • 启动容器时添加挂载参数:-v <volume_name>:<容器内MongoDB数据存储路径>
  3. 轻量部署优化:无需容器化管理MongoDB的场景,直接将MongoDB作为系统服务安装运行,运维更简单稳定。

内容的提问来源于stack exchange,提问作者D. Kupra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 20:24:06