zoukankan      html  css  js  c++  java
  • ORA-01555快照过旧报错

    一、现象

    将数据迁移到新库时,执行较大的存过,会报这个错误。

    二、原因

    产生该报错的原因:

    (1)sql执行比较久,需要优化sql

    (2)回滚段过小

    (3)undo保存时间过短

    三、具体检查及恢复

    1、查看sql的执行计划,看看是否可以优化。因为我这边出现这个现象是数据库迁移后发生的,老库可以执行成功,新库不能,比较这种现象比较多,故先不进行具体的sql优化,先检查另外两个原因。

    2、检查回滚段大小:

    SELECT UPPER(F.TABLESPACE_NAME) "表空间名",
           (D.TOT_GROOTTE_MB/1024) "表空间大小(G)",
           ((D.TOT_GROOTTE_MB - F.TOTAL_BYTES)/1024) "已使用空间(G)",
           TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2),'990.99') "使用比",
           (F.TOTAL_BYTES/1024) "空闲空间(G)",
           (F.MAX_BYTES/1024) "最大块(G)"
      FROM (SELECT TABLESPACE_NAME,
                   ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
                   ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
              FROM SYS.DBA_FREE_SPACE
             GROUP BY TABLESPACE_NAME) F,
           (SELECT DD.TABLESPACE_NAME,
                   ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
              FROM SYS.DBA_DATA_FILES DD
             GROUP BY DD.TABLESPACE_NAME) D
     WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
     and f.TABLESPACE_NAME like 'UNDO%'
     ORDER BY 4 DESC;
    View Code

    回滚段足够大,使用率也不高,故不是回滚段的问题。

    2、查看undo_retention参数

    在pl/sql的命令窗口中输入: show parameter undo_

    Undo_retention:是undo数据保存的时间,是一个“目标期望值”,单位为秒,默认为900s。

    用户设置出这个值之后,Oracle内部会尽量保证将Undo数据保留超过undo_retention设置的时间。但是,如果Undo使用紧张、没有额外的方法,那么这个时间段也是不能保证的。这个时间如果设置得比较小,数据很快被覆盖了,那么执行较长时间的查询语句就会报ORA-01555的错误。

    我查看了老库的这个参数,是2700,将新库的参数,调整和老库一样后,执行存过,不再报错。

     alter  system set undo_retention=7200 ;--需要比较高的权限才能修改系统参数(基保部执行)

     具体undo相关参数参考我的另外一篇博客 https://www.cnblogs.com/weimengjiacan/p/10115505.html 

  • 相关阅读:
    ajax调接口示例
    JQuery的ready函数与JS的onload的区别详解
    DIV拖拽
    Lasso估计学习笔记(二)
    Lasso估计论文学习笔记(一)
    ubuntu下部署mongodb以及设置允许远程连接
    C#获取Honeywell voyager 1400g扫码后的数据
    vs2015“当前不会命中断点 还没有为该文档加载任何符号”的解决方法
    pyqt4 python2.7 中文乱码的解决方法
    使用pip 提示UnicodeDecodeError: 'ascii' codec can't decode解决方法
  • 原文地址:https://www.cnblogs.com/weimengjiacan/p/10115099.html
Copyright © 2011-2022 走看看