怎么查看oracle坏块,oracle物理坏块和逻辑坏块

如何使用rman 检查oracle数据库坏块

如何使用rman 检查oracle数据库坏块

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了碌曲免费建站欢迎大家使用!

oracle检测坏块的方式:

1、利用oracle的RMAN工具

2、利用dbv工具检测

3、利用 exp/imp工具检测

oracle 存储过程错误怎么查看

可用第三方工具检查错误。

如以下存储过程:

其中第六行故意少写了一个分号。

然后执行后,会提示完成,这时可以去左边的树中找到这个存储过程,显示是有个红叉的。

这时,可以右键,选择编辑。

然后打开页面的最下方会显示如下信息。

此时鼠标双击信息的那一行,会在上方存储过程中以特殊颜色显示,这就说明,有特殊颜色的位置有错误,可以根据ORA-00933的错误号查询错误原因,并加以修改。

现在,如果可以后边的逗号补上,点执行,然后,下边会显示成功编译且左边的树红叉消除。

ORACLE使用dbv工具检验数据文件是否有坏块

dbv工具可以用来验证数据文件的有效性,在数据库恢复之前可以使用该命令对备份文件进行有效性检查,

防止因备份文件本身的问题导致数据库无法恢复。

当然,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.

Keyword Description (Default)

----------------------------------------------------

FILE File to Verify (NONE)

START Start Block (First Block of File)

END End Block (Last Block of File)

BLOCKSIZE Logical Block Size (8192)

LOGFILE Output Log (NONE)

FEEDBACK Display Progress (0)

PARFILE Parameter File (NONE)

USERID Username/Password (NONE)

SEGMENT_ID Segment ID (tsn.relfile.block) (NONE)

HIGH_SCN Highest 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)

在实际使用中重点关注以下信息:

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

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

此时可以使用SQL*Plus的edit命令查看生成的日志文件内容。

sys@ticket ed dbv_users01.log

oracle 坏块是怎么产生的

发生坏块的原因

造成数据块损坏的原因多种多样,可是因为物理原因导致,也可能人为原因或Oracle bug导致。比较常见的人为原因异常关机、掉电、终止服务使进程异常终止,从而破坏数据的完整性,导致坏块的产生。发生数据块损坏的原因时,最典型的表现是遇到ORA-01578错误(比如在全表扫描时),有时也可能是ORA-600内部错误。

Oracle 数据库中的出现坏块问题,该如何处理

oracle数据库的坏块问题是个让人比较头痛的问题,主要分为逻辑坏块和物理坏块,逻辑坏块就是数据文件里的逻辑关系出现的混乱,这一般是由于数据库的BUG导致的。物理坏块就是数据文件中的数据不存在任何意义,没有任何逻辑和结构,造成物理坏块多因为服务器IO系统故障导致的。

oracle 表空间磁盘逻辑坏块怎么处理?

有2种通用的办法:

1 blockrecover

2 dbms_repair

注意:第二种办法会丢弃坏块中的所有数据。

所以事先确定逻辑坏块中是否有数据,数据是否有备份。


分享标题:怎么查看oracle坏块,oracle物理坏块和逻辑坏块
分享网址:http://ybzwz.com/article/dscgshp.html