电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

记一次高水位引发的ORA-01555错误的处理过程

来源:金蝶云社区作者:金蝶2024-09-237

记一次高水位引发的ORA-01555错误的处理过程

 

 记一次高水位引发的ORA-01555错误的处理过程

                                                                  --2024/04/19

 

--1 收到提单故障,

 

上传图片

 

附件Q.webp信息

上传图片

 

--2 寻找故障,

快照太老,通常是SELECT语句引发,该故障发生时,会被记录在数据库的告警日志里,因此,需要联系上客户,拿到数据库的告警日志来查找,,,

 

根据提单日期,在告警日志文件里,寻找该时间点附近的出现ORA-01555错误的信息,

上传图片

 

问了下提单人,确认是该时间点遇上的故障,也就是,就是此DELETE 语句,引发了提单中ORA-01555错误,

 

--3 分析故障,

   查了下该表,有60多万的记录,但尺寸却达314738兆,初步怀疑高水位问题引起?

上传图片


但是,该表里有3个NCLOB字段,若这些字段存在坏行时,也会引发ORA-01555错误,

上传图片


--4 检查故障,

   为避免是这些字段引起的ORA-01555错误,需要跑一段脚本来查询该表的这几个字段,是否存在坏行:

 

上传图片


 

经检查,这3个字段的数据都正常( corrupt_lobs 表里没数据)。

 

4.2 此外,又检查这3个大字段对应段的尺寸:发现这些字段基本不占空间,

 

上传图片


 

至此,可以确定是表的高水位引起的ORA-01555错误,

 

 

 

--5 修复故障,

   5.1、要降低其高水位,需要消除表的数据段里的空闲块(磁盘碎片),有两种办法:

 

5.1.1、使用 MOVE 操作,把表的数据,迁移到其他磁盘的其他位置;数据迁移结束后,原来的数据段将被删除。此举的风险是:MOVE 开始前,ORACLE将对表附加上排它锁;MOVE 期间,无法对其做增删改操作;MOVE结束后,还需要重建其失效索引;因为表的尺寸较大,全表扫描将比较耗时,很可能会引起长时间的锁堵塞,因此,此方法不合适上班时间使用。

 

5.1.2、使用在线重定义

记一次高水位引发的ORA-01555错误的处理过程

记一次高水位引发的ORA-01555错误的处理过程 --2024/04/19 --1 收...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信