日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于ORA-01187: cannot read from file because it failed verification tests 的处理方法

發布時間:2025/3/8 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于ORA-01187: cannot read from file because it failed verification tests 的处理方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

環境:OEL+Oracle 11.2.0.3+physical standby

問題描述:查詢dba_temp_files試圖時顯示Ora-01187錯誤號;

ORA-01187: cannot read from file ?because it failed verification tests
ORA-01110: data file 201: '/oradata/seven/temp01.dbf'

重現下錯誤:

SQL> select file_id,file_name,tablespace_name from dba_temp_files;
select file_id,file_name,tablespace_name from dba_temp_files
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? *
ERROR at line 1:
ORA-01187: cannot read from file ?because it failed verification tests
ORA-01110: data file 201: '/oradata/seven/temp01.dbf'

oerr ora解決方法是:

[oracle@Seven trace]$ oerr ora 01187
01187, 00000, "cannot read from file %s because it failed verification tests"
// *Cause: ?The data file did not pass the checks to insure it is part of the
// ? ? ? ? database. Reads are not allowed until it is verified.
// *Action: Make the correct file available to the database. Then, either open
// ? ? ? ? the database, or execute ALTER SYSTEM CHECK DATAFILES. ?


初步推斷是上次DG進行switchover時導致臨時數據庫文件出錯,解決方法是重建臨時數據文件;

帶著這個疑問google了下,發現好多朋友遇到這個問題,表示重建下臨時文件,或者重新reuse下臨時表空間都可以處理這個問題,但是對于問題的根本起因,倒是沒有找到原因;很遺憾!

還是來說明我自己的處理方法吧:

由于這個DG環境下的primary主庫上報的錯,對比了一下主備庫的temp表空間,都是30M的大小,而且也都是online狀態。


SQL> select name,bytes/1024/1024,status from v$tempfile;

NAME ? ? ? ? ? ? ? ? ? ? ? ? ? BYTES/1024/1024 STATUS
------------------------------ --------------- -------
/oradata/seven/temp01.dbf ? ? ? ? ? ? ? ? ? 30 ONLINE


刪除臨時文件:

SQL> alter database ?tempfile '/oradata/seven/temp01.dbf' drop;

Database altered.


SQL> select name,bytes/1024/1024,status from v$tempfile;

no rows selected


重新添加臨時數據文件:

?

SQL> alter tablespace temp add tempfile '/oradata/seven/temp01.dbf' size 30M reuse;

Tablespace altered.

SQL> select name,bytes/1024/1024,status from v$tempfile;

NAME ? ? ? ? ? ? ? ? ? ? ? ? ? BYTES/1024/1024 STATUS
------------------------------ --------------- -------
/oradata/seven/temp01.dbf ? ? ? ? ? ? ? ? ? 30 ONLINE


由于場景是DG環境,所以temp的name和bytes的值最好保持主備庫一致,方便以后做Switchover;

至于導致ORA-01187錯誤的主要誘因,還是不明,也沒有找到相關的文檔;


?

總結

以上是生活随笔為你收集整理的关于ORA-01187: cannot read from file because it failed verification tests 的处理方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。