程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> 【故障處理】ORA-19809錯誤處理,故障處理ora-19809

【故障處理】ORA-19809錯誤處理,故障處理ora-19809

編輯:Oracle教程

【故障處理】ORA-19809錯誤處理,故障處理ora-19809


【故障處理】ORA-19809錯誤處理

1  BLOG文檔結構圖

 

 

 

2  前言部分

2.1  導讀和注意事項

各位技術愛好者,看完本文後,你可以掌握如下的技能,也可以學到一些其它你所不知道的知識,~O(∩_∩)O~:

① ORA-19809: limit exceeded for recovery files錯誤的處理方法

RMAN-03009: failure of backup command on ORA_DISK_1 channel at 07/26/2016 17:35:35

ORA-19809: limit exceeded for recovery files

ORA-19804: cannot reclaim 68157440 bytes disk space from 4385144832 limit

② 閃回恢復區占用大小的查詢

  Tips:

① 本文在ITpub(http://blog.itpub.net/26736162)、博客園(http://www.cnblogs.com/lhrbest)和微信公眾號(xiaomaimiaolhr)有同步更新

② 文章中用到的所有代碼,相關軟件,相關資料請前往小麥苗的雲盤下載(http://blog.itpub.net/26736162/viewspace-1624453/)

③ 若文章代碼格式有錯亂,推薦使用搜狗、360或QQ浏覽器,也可以下載pdf格式的文檔來查看,pdf文檔下載地址:http://blog.itpub.net/26736162/viewspace-1624453/

④ 本篇BLOG中命令的輸出部分需要特別關注的地方我都用灰色背景和粉紅色字體來表示,比如下邊的例子中,thread 1的最大歸檔日志號為33,thread 2的最大歸檔日志號為43是需要特別關注的地方;而命令一般使用黃色背景和紅色字體標注;對代碼或代碼輸出部分的注釋一般采用藍色字體表示。

 

本文如有錯誤或不完善的地方請大家多多指正,ITPUB留言或QQ皆可,您的批評指正是我寫作的最大動力。

 

 

3  故障分析及解決過程

 

3.1  故障環境介紹

 

項目

source db

db 類型

RAC

db version

11.2.0.4

db 存儲

ASM

OS版本及kernel版本

AIX 64位 6.1.0.0

 

3.2  故障發生現象及報錯信息

rman執行0級全備的時候報錯:

 

3.3  故障分析及解決過程

看著這個錯誤聽陌生的,之前沒有遇到過,oerr看一下解釋:

 

由oerr的解釋可以看出該錯誤是由於閃回恢復區大小參數DB_RECOVERY_FILE_DEST設置過小導致的,下邊我們來修復該錯誤:

 

4  故障處理總結

ORA-19809: limit exceeded for recovery files

ORA-19804: cannot reclaim 68157440 bytes disk space from 4385144832 limit

ORA-19809錯誤是由於閃回恢復區設置過小導致,只需要修改參數db_recovery_file_dest_size設置為更大的值即可解決問題,要想更深入分析該問題就得分析閃回恢復區裡存放了哪些內容。

5  如何查看閃回恢復區大小的占用情況

我們從健康檢查的腳本可以看出:

 

點擊連接可以跳轉到相應的部分:

數據庫閃回空間使用情況

 


● 數據庫閃回空間總體使用情況

 

 

 

NAME

LIMIT

USED_GB

USED%

RECLAIM

NUMBER_OF_FILES

+DATA

10G

5.953G

59.531%

4.154G

144

[回到目錄]


● 數據庫閃回空間詳細使用情況

 

 

FILE_TYPE

USED_GB

PERCENT_SPACE_USED

PERCENT_SPACE_RECLAIMABLE

RECLAIM_GB

NUMBER_OF_FILES

ARCHIVED LOG

4.185

41.85

41.46

4.146

138

BACKUP PIECE

1.619

16.19

.08

.008

3

CONTROL FILE

0

0

0

0

0

FLASHBACK LOG

0

0

0

0

0

FOREIGN ARCHIVED LOG

0

0

0

0

0

IMAGE COPY

0

0

0

0

0

REDO LOG

.149

1.49

0

0

3

Total:

5.953

59.53

41.54

4.154

144

[回到目錄]

可以看出,閃回空間目前是10G,使用了將近60%,共144個文件,每種文件的占用情況參考如上的表格,可以看出主要是歸檔文件和備份集占用空間比較大。

有關健康檢查報告中的用到的腳本如下:

閃回恢復區總大小:

SELECT NAME,                   

       round(space_limit / 1024 / 1024 / 1024, 3) "LIMIT_GB",                  

       round(space_used / 1024 / 1024 / 1024, 3) "USED_GB",                  

       round(space_used / space_limit * 100, 3) "USED%",                   

       round(space_reclaimable / 1024 / 1024 / 1024, 3) "RECLAIM_GB",                  

       number_of_files                

FROM   v$recovery_file_dest v

WHERE v.SPACE_LIMIT<>0;

閃回恢復區詳細使用大小:

SELECT nvl(frau.file_type,'<font color="#990000"><b>Total:</b></font>') file_type,

       sum(round(frau.percent_space_used / 100 * rfd.space_limit / 1024 / 1024 / 1024,3)) USED_GB,

       sum(frau.percent_space_used) percent_space_used,

       sum(frau.percent_space_reclaimable) percent_space_reclaimable,

       sum(round(frau.percent_space_reclaimable / 100 * rfd.space_limit / 1024 / 1024 / 1024,3)) RECLAIM_GB,

       sum(frau.number_of_files) number_of_files

FROM   v$flash_recovery_area_usage frau,

       v$recovery_file_dest        rfd

GROUP  BY ROLLUP(file_type)

;

6  用到的SQL集合

0級全備:backup incremental level 0 database;

oerr查看錯誤:oerr rman 3009  、oerr ora 19809

設置閃回恢復區的大小:alter system set db_recovery_file_dest_size=10G sid='*';

------閃回恢復區總大小:

SELECT NAME,                   

       round(space_limit / 1024 / 1024 / 1024, 3) "LIMIT_GB",                  

       round(space_used / 1024 / 1024 / 1024, 3) "USED_GB",                  

       round(space_used / space_limit * 100, 3) "USED%",                   

       round(space_reclaimable / 1024 / 1024 / 1024, 3) "RECLAIM_GB",                  

       number_of_files                

FROM   v$recovery_file_dest v

WHERE v.SPACE_LIMIT<>0;

-----閃回恢復區詳細使用大小:

SELECT nvl(frau.file_type,'<font color="#990000"><b>Total:</b></font>') file_type,

       sum(round(frau.percent_space_used / 100 * rfd.space_limit / 1024 / 1024 / 1024,3)) USED_GB,

       sum(frau.percent_space_used) percent_space_used,

       sum(frau.percent_space_reclaimable) percent_space_reclaimable,

       sum(round(frau.percent_space_reclaimable / 100 * rfd.space_limit / 1024 / 1024 / 1024,3)) RECLAIM_GB,

       sum(frau.number_of_files) number_of_files

FROM   v$flash_recovery_area_usage frau,

       v$recovery_file_dest        rfd

GROUP  BY ROLLUP(file_type)

;

  About Me

..........................................................................................................................................................................................................                        

v 本文作者:小麥苗,只專注於數據庫的技術,更注重技術的運用

v 本文在ITpub(http://blog.itpub.net/26736162)、博客園(http://www.cnblogs.com/lhrbest)和個人微信公眾號(xiaomaimiaolhr)上有同步更新

v QQ群:230161599 微信群:私聊

v 本文地址:http://blog.itpub.net/26736162/viewspace-2122820/

v 本文pdf版:http://yunpan.cn/cdEQedhCs2kFz (提取碼:ed9b)

v 小麥苗分享的其它資料:http://blog.itpub.net/26736162/viewspace-1624453/

v 聯系我請加QQ好友(642808185),注明添加緣由

v 於 2016-08-01 15:00~ 2016-08-01 19:00 在中行完成

v 【版權所有,文章允許轉載,但須以鏈接方式注明源地址,否則追究法律責任】

..........................................................................................................................................................................................................

長按識別二維碼或微信客戶端掃描下邊的二維碼來關注小麥苗的微信公眾號:xiaomaimiaolhr,學習最實用的數據庫技術。

 

 

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved