• [2023-09-12]Oracle备库查询报ORA-01187


            一个多表关联的语句在备库执行查询时提示ORA-01187: cannot read from file because it failed verification tests,单独对某一个表查询则正常返回(因为不需要排序等,没有用到临时表空间)。 查看报错信息发现是提示的临时数据文件无法访问导致。

    1、查询dba_temp_files提示报错

    1. SQL> SELECT tablespace_name, file_name FROM dba_temp_files WHERE tablespace_name = 'TEMP';
    2. SELECT tablespace_name, file_name FROM dba_temp_files WHERE tablespace_name = 'TEMP'
    3. *
    4. ERROR at line 1:
    5. ORA-01187: cannot read from file because it failed verification tests
    6. ORA-01110: data file 14: '/u01/oracle/oradata/temp01.dbf'

    报错信息和业务提示的报错一致。

    处理方法(参考文档:Database upgrade fails with Error: "ORA-01110: data file N: '', as tempfile is corrupted/non-existing. (Doc ID 2381382.1))

    1. Recreate tempfile as below:
    2. 1)First query from v$tempfile;
    3. SQL> select FILE#,NAME from v$tempfile;
    4. FILE# NAME
    5. ------ --------------------------------
    6. 14 /u01/oracle/oradata/temp01.dbf
    7. 2)check for tablespace name:
    8. SQL> SELECT PROPERTY_VALUE FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME = 'DEFAULT_TEMP_TABLESPACE';
    9. PROPERTY_VALUE
    10. ----------------
    11. TEMP
    12. 3)Create new tempfile;
    13. SQL> ALTER TABLESPACE temp ADD TEMPFILE '/u01/oracle/oradata/temp02.dbf' SIZE 512M ;
    14. Tablespace altered.
    15. 4)Drop the tempfile 'temp01.dbf'
    16. SQL> ALTER DATABASE TEMPFILE '/u01/oracle/oradata/temp01.dbf' DROP INCLUDING DATAFILES;
    17. Database altered.
    18. 5) Now query from "dba_temp_files" will not fail:
    19. SQL> SELECT tablespace_name, file_name, bytes FROM dba_temp_files WHERE tablespace_name = 'TEMP';
    20. TABLESPACE_NAME FILE_NAME
    21. ---------------- -------------------------------
    22. TEMP '/u01/oracle/oradata/temp02.dbf

  • 相关阅读:
    [Power Query] 数据类型转换
    Maven安装详解
    Mac电脑怎么在Dock窗口预览,Dock窗口预览工具DockView功能介绍
    java学习--字符流
    java实际项目反射、自定义注解的运用实现itext生成PDF的详细应用教程
    python之列表及操作相关知识
    thymeleaf,bootstrap-fileinput 多文件上传
    超详细!一步到位!MySQL安装和基本使用
    MYSQL SEQUENCE方案
    apt update和apt upgrade命令 - 有什么区别?
  • 原文地址:https://blog.csdn.net/m15217321304/article/details/132827534