DAY011 – API 订单数据库路径配置错误

举报
yd_287083129 发表于 2026/11/04 09:59:16 2026/11/04
【摘要】 故障场景故障现象:首页与 API health 正常,但订单接口返回 500,应用日志提示数据库文件无法打开。服务器状态:server2:状态 INJECTED;开始时间 2026-07-24 00:38:22 +0800;影响范围 演练项目受影响,SSH 不受影响,非演练业务不应受影响。 排障过程先看项目文档实际curl本地订单接口看返回结果看应用日志先找是什么程序使用的数据库无法打开文...

故障场景

故障现象:首页与 API health 正常,但订单接口返回 500,应用日志提示数据库文件无法打开。
服务器状态:
server2:状态 INJECTED;开始时间 2026-07-24 00:38:22 +0800;影响范围 演练项目受影响,SSH 不受影响,非演练业务不应受影响。

排障过程

先看项目文档
实际curl本地订单接口看返回结果
看应用日志
先找是什么程序使用的数据库无法打开文件
出现两个python3进程,文档中是18081的那个,如果没有文档记录,就ps -fp找进程号对应的文件
它们文件名相同,端口不同
进入项目所在目录并搜索目录下数据库文件,并且查询数据库在代码中的加载逻辑
要用到:

find . -type f \( -name "*.db" -o -name "*.sqlite*" \)
grep -R -C 10 -n -Ei "db|sql|database" --exclude-dir=logs .

在代码逻辑的第二张图中可以明显看出来,程序、环境变量存放数据库文件的目录是不一样的
这个时候我们应该把文件备份一份,把日志审计记录下来后续看是谁在什么时候改的这文件
然后改正,恢复业务
环境变量由data-missing目录改正为data目录
现在订单API恢复正常

原文首发于个人博客:liujixiang.de5.net

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。