IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

使用deepseek进行Oracle恢复,引起重大故障

惜分飞 2026-06-22 12:41:00 累计浏览 11 次
本机暂存

联系:手机/微信(+86 17813235971) QQ(107644445)QQ咨询惜分飞

标题:使用deepseek进行Oracle恢复,引起重大故障

作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

有一个恢复case,查询数据库是open状态,有一个数据文件处于offline,删除表空间报offline的文件不能读写
2
3
1


根据经验,这个是一个小问题,可能就是由于datafile 5 offline了,而这个文件是undo表空间的所以出现这样的情况,想着屏蔽下异常回滚段,或者强制online下文件就可以解决该问题.先进行第一个尝试,屏蔽异常回滚段,由于库是open状态,直接查询数据库是否有异常回滚段
undo_seg

无法查询到异常回滚段,这个有点不太符合常规认知,进一步核实文件和表空间信息
4
5
6
到这一步就发现了异常:
1. v$tablespace里面有两个undotbs1的表空间(这个肯定不对,是ctl和ts$不一致)
2. ts$中只有一个而且ts#=9没有ts#=2
3. file$中有ts#=2,这样导致ts$和file$信息不匹配,也不对
基于上述这样信息,我怀疑有人对底层字典进行了操作delete了ts$这个表记录.让现场技术人员再次确认这个库的所有操作,最后确认在他不知情的情况下,有另外的技术人员上来进行了类似操作
delete_ts

根据他们提供的聊天记录,以及当前数据库情况,进一步确认他们应该是执行了
delete from ts$ where name='UNDOTB1';
delete from seg$ where ts#=2;

没有对file$进行delete操作.对于这样的情况,人工删除字典,明显没有处理干净.导致数据库的任何操作都会去检查异常事务.
seg


通过清理这些异常事务,数据库可以正常操作,数据也导出成功
expdp

后续和当时直接进行delete 字典操作的人员沟通,他那边是根据deepseek提供的建议进行处理的
deepseek

在这里温馨提醒,虽然现在的ai比较发达,很多问题可以直接在上面问出来答案,但是需要对这些答案有一个判断能力,不能他说啥你就执行啥,特别是数据库非常规恢复这种不可逆而且可能引起重大事故的高风险性操作需要谨慎和做好回退方案.

同分类推荐文章

  1. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  2. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)
  3. 硬件故障后数据文件大小不对故障处理—Oracle碎片扫描恢复 (2026-06-07 18:21:47)

查看更多 数据库 文章 →

建议继续学习

  1. Oracle MTS模式下 进程地址与会话信息 (累计阅读 14,377)
  2. 那些在11gR2中可能惹祸的新特性,一张列表帮助你摆脱升级11gR2带来的烦恼 (累计阅读 6,866)
  3. 性能测试工具sysbench简介 (累计阅读 6,007)
  4. 大于2GB的Listener.log和运行超过198天的主机上的Oracle实例 (累计阅读 5,847)
  5. 仅仅只备份是不够的 (累计阅读 5,804)
  6. Oracle Database 12c 新特性 - Native Top N 查询 (累计阅读 5,735)
  7. ORACLE最大可以存储多少数据量 (累计阅读 5,709)
  8. Oracle DBA的学习进阶成长树-从初出茅庐到高瞻远瞩 (累计阅读 5,579)
  9. 老托的Oracle 数据库Patch概念性小常识 (累计阅读 5,530)
  10. 查看oracle数据库用户下的所有空表 (累计阅读 5,487)