1. 执行sql:select count(distinct id) from bw_fpzxx ,报错如下:

ORA-01578: ORACLE 数据块损坏 (文件号 16, 块号 195428)
ORA-01110: 数据文件 16: '/disk01/hwxx09.dbf'
01578. 00000 -  "ORACLE data block corrupted (file # %s, block # %s)"

2.确认block_no 为195428的数据。

select id,rownum,rowid,dbms_rowid.rowid_relative_fno(rowid) rel_fno,dbms_rowid.rowid_block_number(rowid)
blockno from bw_fpzxx where dbms_rowid.rowid_relative_fno(rowid)=16 and
dbms_rowid.rowid_block_number(rowid)
=195428--rownum <8;

/*
1  1100623697598  1  AAASNhAAQAAAvtkAAL  16  195428
2  1100623690430  2  AAASNhAAQAAAvtkAAE  16  195428
3  1100623693502  3  AAASNhAAQAAAvtkAAH  16  195428
4  1100623687358  4  AAASNhAAQAAAvtkAAB  16  195428
5  1100623695550  5  AAASNhAAQAAAvtkAAJ  16  195428
6  1100623691454  6  AAASNhAAQAAAvtkAAF  16  195428
7  1100623698622  7  AAASNhAAQAAAvtkAAM  16  195428
8  1100623688382  8  AAASNhAAQAAAvtkAAC  16  195428
9  1100623694526    9    AAASNhAAQAAAvtkAAI    16    195428
10    1100623696574    10    AAASNhAAQAAAvtkAAK    16    195428
11    1100623692478    11    AAASNhAAQAAAvtkAAG    16    195428
12    1100623686334    12    AAASNhAAQAAAvtkAAA    16    195428
13    1100623689406    13    AAASNhAAQAAAvtkAAD    16    195428
*/

13条数据,把出错的数据块屏蔽了。

3.

alter system set event='10231 trace name context forever,level 10' scope=spfile;

4.再次执行sql

select count(distinct id) from bw_fpzxx;

147467803

oracle坏块处理记录的更多相关文章

  1. ORACLE 坏块的模拟和查看

    坏块的模拟和查看使用bbed工具修改数据文件的块,然后使用dbv和rman工具查看坏块. 1.创建数据:根据dbv查看没有坏块Total Pages Marked Corrupt : 0create ...

  2. oracle坏块问题的处理

    一.背景 今天有用户反映数据库连不上了,查看日志发现有数据库坏块. 查看数据库日志,有如下报错: ORA-01578: ORACLE , 93642) ORA-01110: 1: '/oracle/a ...

  3. Oracle - 坏块修复(一)

    一.概述 本文将介绍如何模拟坏块,以及出现坏块该如何修复.实验分为以下几个步骤. 1. 表出现坏块 2. 索引出现坏块 二.环境准备 本实验都是在oracle 11G归档模式下进行. 1. 准备相关表 ...

  4. [Oracle]坏块处理:确认坏块的对象

    如果已经知道 FILE#,BLOCK#,则 可以通过如下查询来看: SQL> SELECT SEGMENT_TYPE,OWNER||'.'||SEGMENT_NAME FROM DBA_EXTE ...

  5. Oracle数据库坏块的恢复

    模拟数据块坏块: 对于发生数据块不一致的数据块,如果当前数据库有备份且处于归档模式,那么就可以利用rman工具数据块恢复功能 对数据块进行恢复,这种方法最简单有效,而且可以在数据文件在线时进行,不会发 ...

  6. Oracle数据块损坏的恢复实例

    测试环境:11.2.0.4 1.构建数据块损坏的测试环境 2.有备份:常规恢复坏块 3.无备份:跳过坏块 1.构建数据块损坏的测试环境 1.1 创建测试表 --Create Table t_test ...

  7. 对Oracle数据库坏块的理解

    1.物理坏块和逻辑坏块 在数据库中有一个概念叫做数据块的一致性,Oracle的数据块的一致性包括了两个层次:物理一致性和逻辑一致性,如果一个数据块在这两个层次上存在不一致性,那就对应到了我们今天要要说 ...

  8. Oracle corrupt block(坏块) 详解

    转自:http://blog.csdn.net/tianlesoftware/article/details/5024966 一. 坏块说明 1.1 相关链接 在看坏块之前,先看几个相关的链接,在后面 ...

  9. Oracle 处理坏块

    本文主要介绍如何去处理在Oracle数据库中出现坏块的问题,对于坏块产生在不同的对象上,处理的方法会有所不同,本文将大致对这些方法做一些介绍.因为数据库运行时间长了,由于硬件设备的老化,出现坏块的几率 ...

随机推荐

  1. HDU 6191 Query on A Tree(可持久化Trie)

    题意 \(n\) 个点的有根树,根为 \(1\) .每个点有点权,有 \(q\) 个询问,每次询问以 \(u\) 为根的子树的点的点权中异或 \(x\) 所得的最大值是多少. 思路 求出整棵树的 \( ...

  2. template render in javascript

    art-template for github 中文官方文档

  3. JavaScript——语法与数据类型

    严格模式 ECMA5引入了严格模式的概念.严格模式是为JavaScript定义了一种不同的解析与执行模型.在严格模式下,ECMA3中的一些不确定的行为将得到处理,而且对某些不安全的操作也会抛出错误.要 ...

  4. 5、iptables之nat

    iptables: 显式扩展.网络防火墙 显式扩展:multiport, iprange, string, time, connlimit, limit, state state:无关是哪种协议 /p ...

  5. PHP变量的值类型和引用类型

    PHP 变量在内存中保存的并不直接是值的内容而是值的地址.比如: $a = 1; 从表面上看起来似乎是 $a 直接存储了 1 这个值.但是实际情况是,PHP 解释器创建了变量 $a , 将值 1 存入 ...

  6. cmake用法及常用命令总结

    CMakeLists.txt 的语法比较简单,由命令.注释和空格组成,其中命令是不区分大小写的.指令是大小写无关的,参数和变量是大小写相关的.但推荐全部使用大写指令.符号 # 后面的内容被认为是注释. ...

  7. bash:command not found解决方法

    先用:echo $PATH 查看path是否含有:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin如果没有先用临时环境变量(重启 ...

  8. 生成器的使用demo

    定义一个函数: def frange(start, stop, increment): x = start while x < stop: yield x x += increment 使用: ...

  9. MsgWaitForMultipleObjects_测试

    1.个人感觉: 1.1.MSDN中(https://msdn.microsoft.com/en-us/library/ms684242.aspx),说: “ dwWakeMask [in] The i ...

  10. Android requestCode的限制

    一. why ? 由于才疏学浅,在开发中requestCode的让我很困惑.困惑是因为什么呢,是因为弄混了.要想弄明白,不困惑,来想一想用到requestCode的地方: ① startActivit ...