请问一下【http://detail.zol...

查看: 918|回复: 8
.cn/detail/5291_1.html
经验108 点
金钱13 金轮胎
在线时间32 小时
主题帖子积分
准天使, 积分 186, 距离下一级还需 314 积分
准天使, 积分 186, 距离下一级还需 314 积分
不错的越野游戏,可以锻炼驾车技术
经验6499 点
金钱20 金轮胎
在线时间1185 小时
主题帖子积分
e族主天使, 积分 10515, 距离下一级还需 19485 积分
e族主天使, 积分 10515, 距离下一级还需 19485 积分
经验7061 点
金钱605 金轮胎
在线时间2270 小时
主题帖子积分
山东大队贵宾
经验5937 点
金钱1881 金轮胎
在线时间3277 小时
主题帖子积分
山东大队滨州分队版主
img=88,31]http://www.discuz.net/images/logo.gif[/img]
金钱19 金轮胎
在线时间45 小时
主题帖子积分
准天使, 积分 192, 距离下一级还需 308 积分
准天使, 积分 192, 距离下一级还需 308 积分
经验2180 点
金钱152 金轮胎
在线时间729 小时
主题帖子积分
提示: 作者被禁止或删除 内容自动屏蔽
你的世界,从此无界&&
经验3039 点
金钱163 金轮胎
在线时间689 小时
主题帖子积分
提示: 作者被禁止或删除 内容自动屏蔽
经验108 点
金钱13 金轮胎
在线时间32 小时
主题帖子积分
准天使, 积分 186, 距离下一级还需 314 积分
准天使, 积分 186, 距离下一级还需 314 积分
经验639 点
金钱86 金轮胎
在线时间2129 小时
主题帖子积分
e族权天使, 积分 3414, 距离下一级还需 1586 积分
e族权天使, 积分 3414, 距离下一级还需 1586 积分
越野e族优秀会员
针对越野e族各大队年会评定优秀会员的一种荣誉勋章。
2012阿拉善英雄会幕后英雄
2012阿拉善英雄会幕后英雄
雅安抗震救灾爱心
雅安抗震救灾爱心
2013阿拉善英雄会特殊贡献勋章
2013阿拉善英雄会特殊贡献勋章
2013阿拉善英雄会英雄
针对参加2013阿拉善英雄会的会员所设置的勋章
2014阿拉善英雄会英雄
针对参加2014阿拉善英雄会的会员所设置的勋章
2014阿拉善英雄会优秀领队
2014阿拉善英雄会优秀领队勋章
2015阿拉善英雄会英雄
针对参加2015阿拉善英雄会的会员所设置的勋章
2015阿拉善英雄会优秀领队
针对参加2015阿拉善英雄会优秀领队勋章
越野e族爱心善举
针对在越野e族日常爱心善举活动中突出贡献和表现者的一种荣誉勋章。
2016春节无私奉献救援勋章
2016春节无私奉献救援勋章
2011阿拉善英雄会幕后英雄
英雄会幕后英雄114网址导航http://.cn/series/702/544/video_8435.html_百度知道114网址导航.cn/cell_phone/index269738.shtml
数据块的一致性分成物理和逻辑两种,对应的故障原因也可能是物理和逻辑两种。Oracle提供了多种方法进行这两种一致性检查,包括设置参数、使用工具等,下面将分别介绍。
使用初始化参数
数据库每次启动时都会读取初始化参数,根据参数值进行配置,因此和后面介绍的其他手段比起来,利用初始化参数是一劳永逸的方法,用户需要特别注意以下两个参数。
1.物理一致性检查:数据块校验和(Block
Checksum)
这种检查方法就是说,Oracle 在把 SGA
中的数据块写回磁盘之前,先计算数据块的校验和,填写数据块头的对应字段,然后再把数据块写入磁盘;下次读出数据块时重新计算校验和,和
数据块头的字段比较,如果不一致,则意味着存储介质有故障,会抛出 ORA-1578 错误。通过设置初始化参数
db_block_checksum=true/false 来启用、关闭这个功能。根据 Oracle 官
方稳当,启用这个功能只会增加 1%~2%的负载,所以 Oracle
推荐启用这个检查功能。在 Oracle 9i、Oracle 10g 中,这个功能缺省就是启用的。当参数值为 True 时,Oracle
除了会对所 有表空间的数据块进行校验和检查,还会对 redo log 块做校验和。如果设置成 False,Oracle 则 只会对
System 表空间的数据块进行校验和检查。如果在建库之初没有启用校验和检查,也就是这个参数一开始设置成 False,则数据块头不
会记录 Checksum 字段。即使以后启用了这个功能,也不会立刻把所有数据块加上 Checksum 字
段。只有启用了校验和检查后又被修改过的数据块,才会在数据块头增加校验和字段,这时检查的只是部分数据块。如果想立即对所有数据块做
Checksum,可以使用 RMAN 对数据文件做一个 Copy,在 Copy 过程中,RMAN
会把数据块从读缓冲区拷贝到写缓冲区,在这个缓冲区对拷过程中会对数据块做校验,并加上 Checksum
字段。下面脚本演示了这个方法:
copy datafile
&/prod/original.dbf& to
&/prod/backup.dbf&;
sql "alter database rename
file&&/prod/original.dbf&&to&&/prod/backup.dbf&&";
2.逻辑一致性检查:逻辑数据块检查(Logical
Block Checking)
这个功能意味着:每当 Oracle
要修改一个数据块时,会先对数据块内容做一个一致性检查。如果这种一致性检查失败,会抛出 ORA-600 的 Internal 错误。当
Oracle 检查到数据块的逻辑一致性时,会尝试对数据块做 Cache Recovery,如果不能把数据块恢复到一致状态,Oracle
就会把这个数据块标志为 Software Corrupt,当有查询访问到这个数据块时,也会抛出前面的 ORA-1578 错误。
这个检查方法检查的是数据逻辑上的一致性,比单纯的校验和检查更有助于早期发现错误,
避免错误蔓延导致严重后果。但是这个检查功能会增加 1%~10%的负载,尤其 DML
操作越密 集,性能影响越大。
通过设置参数 db_block_checking=true 可以启用这个功能。在 Oracle 10g 中,这个参数默认值是
false,意味着只对 System 表空间做逻辑一致性检查。如果想要在全库范围启用这个功能,Oracle 建
议在启用之前先对所有数据文件进行一致性检查,可以使用后面要介绍到的 DBV 或 RMAN 等工具。
注意:标志数据块 software corrupt
是通过数据块头的一些标志位实现的。如果数据块被标识为 software corrupt,则这个数据块内的数据就丢失了。但是从
Oracle 8.1.6 之后,这些数据 块不会被标识为 software corrupt。
DBVERIFY(DBV)是 Oracle
提供的一个命令行工具,它可以对数据文件物理和逻辑两种一致性检查。但是这个工具不会检查索引记录和数据记录的匹配关系,这种检查必须使用
Analyze validate structure 命令。
这个工具有如下特点。
以只读的方式打开数据文件,在检查过程中不会修改数据文件的内容。
&可以在线检查数据文件,而不需要关闭数据库。
不能检查控制文件和日志文件,而只能检查数据文件。
这个工具可以检查 ASM 文件,但是数据库必须 Open 状态,并且需要通过 USERID指定用户,比如:dbv
file=+DG1/ORCL/datafile/system01.dbf userid=system/sys
在许多 UNIX 平台下,DBV 要求数据文件有扩展名,如果没有可以通过建立链接的方法,然后对链接文件进行操作,比如:
ln -s /dev/rdsk/mydevice
/tmp/mydevice.dbf
某些平台,DBV 工具不能检查超过 2GB 的文件,如果碰到
DBV-100 错误,请先检查备份文件大小,Metalink Bug 710888
对这个问题有描述。
DBV 只会检查数据块的正确性,但不会关心数据块是否属于哪个对象。
DBV 命令参数表
要检查的数据文件名
没有缺省值
检查起始数据块号
数据文件的第一个数据块
检查的最后一个数据块号
数据文件的最后一个数据块
数据块大小,这个值要和数据库的
DB_BLOCK_SIZE 参数值一致
缺省值 8192
检查结果日志文件
没有缺省值
参数文件名
没有缺省值
用户名、密码
没有缺省值
SEGMENT_ID
段 ID,参数格式
没有缺省值
下面这个例子检查 users01.dbf 文件。
[oracle@dbs ~]dbv file=users01.dbf blocksize=2048
DBVERIFY - Verification starting : FILE = users01.dbf kdbchk: a
row ends in the middle of another
tab=0 slot=1 begin=0x7a0 len=0x14
Page 3 failed with check code 5
Page 10 is marked software corrupt
Page 12 is marked software corrupt
DBVERIFY - Verification complete
Total Pages Examined : 512
Total Pages Processed (Data) : 1
Total Pages Failing (Data) : 1
Total Pages Processed (Index) : 0
Total Pages Failing (Index) : 0
Total Pages Empty : 507
Total Pages Marked Corrupt : 2
Total Pages Influx : 0
注意:这个工具的报告使用的是 page 作为单位,含义和 data block
除 了 检 查 数 据 文 件 , 这 个 工 具 还 允许 检查 单 独 的 Segment , 这 时 参 数 值 的 格
式 是,如以下例子。
(1)查看对象的 tsn、segfile、segblock 属性:
SQL& select t.ts#, s.header_file,
s.header_block from v$tablespace t,
dba_segments s where s.segment_name=&TAB1&
and t.name = s.tablespace_
TS# HEADER_FILE HEADER_BLOCK
------ ----------- ------------
详情请点击:
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

参考资料

 

随机推荐