oracle如何检查坏块 oracle数据库坏块处理

如何处理Oracle中的坏块问题oracle数据库的坏块问题是个让人比较头痛的问题,主要分为逻辑坏块和物理坏块 , 逻辑坏块就是数据文件里的逻辑关系出现的混乱 , 这一般是由于数据库的BUG导致的 。物理坏块就是数据文件中的数据不存在任何意义,没有任何逻辑和结构,造成物理坏块多因为服务器IO系统故障导致的 。
如何使用rman 检查oracle数据库坏块如何使用rman 检查oracle数据库坏块
oracle检测坏块的方式:
1、利用oracle的RMAN工具
2、利用dbv工具检测
3、利用 exp/imp工具检测
ORACLE使用dbv工具检验数据文件是否有坏块dbv工具可以用来验证数据文件oracle如何检查坏块的有效性oracle如何检查坏块,在数据库恢复之前可以使用该命令对备份文件进行有效性检查,
防止因备份文件本身的问题导致数据库无法恢复 。
当然,dbv命令也可以对在线的数据文件进行检查 。
注意,dbv工具只可以对数据文件进行检查,无法使用它完成控制文件和日志文件的检查 。
1.dbv命令语法
dbverify ::=
dbv [ USERID=username/password ]
FILE = filename
| { START = block_address | END = block_address }
| BLOCKSIZE = integer
| HIGH_SCN = integer
| LOGFILE = filename
| FEEDBACK = integer
| HELP= { Y | N }
| PARFILE = filename
End of description.
参考自Oracle官方文档
2.查看帮助文档
从语法定义中我们看到“HELP= { Y | N }”选项,我们可以使用它查看dbv的帮助信息 。
ticket@secDB /home/oracle$ dbv help=y
DBVERIFY: Release 11.2.0.1.0 - Production on Wed Mar 31 19:47:36 2010
Copyright (c) 1982, 2009, Oracle and/or its affiliates.All rights reserved.
KeywordDescription(Default)
----------------------------------------------------
FILEFile to Verify(NONE)
STARTStart Block(First Block of File)
ENDEnd Block(Last Block of File)
BLOCKSIZELogical Block Size(8192)
LOGFILEOutput Log(NONE)
FEEDBACKDisplay Progress(0)
PARFILEParameter File(NONE)
USERIDUsername/Password(NONE)
SEGMENT_IDSegment ID (tsn.relfile.block) (NONE)
HIGH_SCNHighest Block SCN To Verify(NONE)
(scn_wrap.scn_base OR scn)
帮助信息中描述了dbv命令的使用方法,不赘述 。
3.体验dbv工具的效果
1)查看系统中的数据文件名称
sys@ticket col name for a60
sys@ticket select name from v$datafile;
NAME
------------------------------------------------------------
/oracle/ora11gR2/oradata/ticket/system01.dbf
/oracle/ora11gR2/oradata/ticket/sysaux01.dbf
/oracle/ora11gR2/oradata/ticket/undotbs01.dbf
/oracle/ora11gR2/oradata/ticket/users01.dbf
2)使用dbv工具对users01.dbf进行检查
(1)使用最简单的参数
sys@ticket !dbv file=/oracle/ora11gR2/oradata/ticket/users01.dbf
DBVERIFY: Release 11.2.0.1.0 - Production on Wed Mar 31 19:50:59 2010
Copyright (c) 1982, 2009, Oracle and/or its affiliates.All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle/ora11gR2/oradata/ticket/users01.dbf
DBVERIFY - Verification complete
Total Pages Examined: 35520
Total Pages Processed (Data) : 33029
Total Pages Failing(Data) : 0
Total Pages Processed (Index): 20
Total Pages Failing(Index): 0
Total Pages Processed (Other): 402
Total Pages Processed (Seg): 0
Total Pages Failing(Seg): 0
Total Pages Empty: 2069
Total Pages Marked Corrupt: 0
Total Pages Influx: 0
Total Pages Encrypted: 0
Highest block SCN: 9291961 (0.9291961)
在实际使用中重点关注以下信息oracle如何检查坏块:
Total Pages Failing(Data) : 0
Total Pages Failing(Index): 0
Total Pages Failing(Seg): 0
Total Pages Marked Corrupt: 0
如果以上信息返回结果不为0,需要重点关注!及时排查原因 。
(2)如果指定logfile参数 , 检查结果将只记录在日志文件中 , 屏幕上不显示
sys@ticket !dbv file=/oracle/ora11gR2/oradata/ticket/users01.dbf logfile=dbv_users01.log
DBVERIFY: Release 11.2.0.1.0 - Production on Wed Mar 31 19:52:20 2010
【oracle如何检查坏块 oracle数据库坏块处理】 Copyright (c) 1982, 2009, Oracle and/or its affiliates.All rights reserved.
此时可以使用SQL*Plus的edit命令查看生成的日志文件内容 。
sys@ticket ed dbv_users01.log
oracle如何检查坏块的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于oracle数据库坏块处理、oracle如何检查坏块的信息别忘了在本站进行查找喔 。

    推荐阅读