精华内容
下载资源
问答
  • 存储介质损坏ORA-01578数据库无法open案例 一个10g的数据库由于存储介质异常导致数据库块损坏,数据库无法open Sun Sep 15 19:42:04 2019 Hex dump of (file 1, block 92) in trace file d:\oracle\product\10.2.0\...

    存储介质损坏ORA-01578数据库无法open案例

    一个10g的数据库由于存储介质异常导致数据库块损坏,数据库无法open
    在这里插入图片描述

    Sun Sep 15 19:42:04 2019
    Hex dump of (file 1, block 92) in trace file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_smon_2036.trc
    Corrupt block relative dba: 0x0040005c (file 1, block 92)
    Bad check value found during buffer read
    Data in bad block:
     type: 6 format: 2 rdba: 0x0040005c
     last change scn: 0x0000.11d6cc54 seq: 0x1 flg: 0x06
     spare1: 0x0 spare2: 0x0 spare3: 0x0
     consistency value in tail: 0xcc540601
     check value in block header: 0xc4e4
     computed block checksum: 0xf4b4
    Reread of rdba: 0x0040005c (file 1, block 92) found same corrupted data
    Sun Sep 15 19:42:04 2019
    Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_smon_2036.trc:
    ORA-00604: error occurred at recursive SQL level 1
    ORA-01578: ORACLE data block corrupted (file # 1, block # 92)
    ORA-01110: data file 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF'
    

    解决方法:

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    参考:Extracting Data from a Corrupt Table using DBMS_REPAIR or Event 10231 (文档 ID 33405.1)

     Setting the Event at Instance level
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    	This requires that the event be added to the init$ORACLE_SID.ora file
     	used to start the instance:
    
    		shutdown the database
    
    		Edit your init.ora startup configuration file and ADD
    		a line that reads:
    
    			event="10231 trace name context forever, level 10"
    
    		  Make sure this appears next to any other EVENT= lines in the
    	 	  init.ora file. 
    
    展开全文
  • 起因是前一天晚上着急下班工作使我快乐navicat非正常退出因为以前也经常直接关闭并没觉着有什么不妥结果第二天妥妥地连不上了 报错oracle中监听程序当前无法识别连接描述符中请求服务 好么 开始百度 说什么C:\app\...
  • Oracle11g、12c因断电数据文件损坏,未开启归档模式,通过recover database until cancel;恢复损坏介质文件失败,重建控制文件修复数据库过程的笔记。
  • 我可以确认文件没有被损坏,只不过oracle调用出了问题 思路:文件介质恢复我在之前的逻辑备份中遇到过是如下操作恢复的 1、shutdown immediate; 关闭数据库 2、startup; 打开数据库 3、alter database ...

    起因:公司oracle莫名宕机重启报错文件介质需要恢复并给了文件的id号和文件所在位置

    记得昨天有在数据库打开的情况下移动数据库文件。我可以确认文件没有被损坏,只不过oracle调用出了问题

    思路:文件介质恢复我在之前的逻辑备份中遇到过是如下操作恢复的

    1、shutdown immediate; 关闭数据库

    2、startup;  打开数据库

    3、alter database datafile 9(我的id是9记得换成报错的id)offline drop; 设置数据文件脱机状态并删除

    4、将备份文件放置原位置下并执行 recvoer datafile 9;恢复数据文件9

    5、显示完成介质恢复就解决了 执行database datafile 9 online; 并alter database open; 解决。

    尝试:因为确定我的文件没有损坏,我就把原数据文件移动走了并依次执行了 1~3步骤。然后将原数据文件拷贝回来执行4、5也成功了。说明文件并没有损坏。

    为避免下次遇到再做无用尝试特此记录。

    转载于:https://www.cnblogs.com/zhongxiang/p/10003208.html

    展开全文
  •  (1)硬盘在运输、安装、拆卸过程中受到碰撞,有可能导致内部读写装置受损,当加电时,磁头就很可能会划伤介质,产生坏块。  (2)硬盘在读写过程中,遇到较强烈震动、突然掉电等突发事件时,磁头也很容易划伤介质...

      在解决问题之前,首先来看看什么是"坏块"。"坏块"这一说法来自Scandisk之类的磁盘扫描软件。该类软件一般以簇为单位对磁盘表面进行扫描,当发现某簇中的扇区有问题时,就将整个簇标记为坏(Bad),我们形象地称之为"坏块"。从软件的扫描结果看,坏块可能是单个簇,也可能是多个连续的簇。由此看来,我们判断硬盘是否有坏块,主要依据扫描软件的报告,但这份报告并不准确。而且虽然在理论上这些坏块已被做了标记,系统不再使用,但实际上它们仍在干扰硬盘的读写,你仍会时不时地听到硬盘发出"咯楞、咯楞"的声音。更令人奇怪的是,坏块还会悄悄地"扩散",使相邻区域在使用不久也出现坏块。可见,硬盘出现坏块后,只做几遍扫描往往无济于事,关键是要弄清坏块产生的原因,对症下药。

      下面,就让我们来看看坏块是怎样产生的。

      (1)硬盘在运输、安装、拆卸过程中受到碰撞,有可能导致内部读写装置受损,当加电时,磁头就很可能会划伤介质,产生坏块。

      (2)硬盘在读写过程中,遇到较强烈震动、突然掉电等突发事件时,磁头也很容易划伤介质,产生坏块。 上述两种情况造成的坏块都属于物理损伤,我们不妨称之为"硬"坏块。如果硬盘上的"硬"坏块太多:劝大家还是放弃修理,因为虽然当时做了处理,但使用不长时间又会出现更多的"硬"坏块。

      (3)硬盘在使用过程中,某些出现故障的软件或计算机病毒会将某些簇标记为"坏",这样产生的坏块可称之为"软"坏块。 在实践中发现,Scandisk标出的坏块中有许多就属于"软"坏块,对于这种坏块,只要设法将坏块标记删除干净就可以修复。 那么用什么手段可以做到彻底清除"软"坏块呢?用Format程序只会越搞越糟,这里向大家推荐Norton中的一个小程序Wipeinfo(中文版8.0,包括两个文件Wipeinfo.exe和China16.fnt,总共405kB),该程序可以将整个硬盘上的所有数据一个宇节一个字节地擦除干净。

      使用该程序前,需做些准备工作:
      --对于容量小于2G的硬盘,用Fdisk将其原有分区全部删除,然后将整个硬盘划分为一个分区;若硬盘容量大于2G,由于DOS分区最大不能超过2G,只能划分为多个分区进行擦除,但效果可能不如整个一个分区的情况好。
      --找台机器,确保系统没有病毒,装入Wipeinfo,将待处理的硬盘接为Primary Slave或Secondary Master。
      --启动机器,进入DOS运行Wipeinfo(Wipeinfo不能运行在Windows9X下)。在Wipeinfo的主画面中有4个选项,用户可先进入"配置"选项。在"配置"对话框里,用户可以选择"快速擦除"或"慢速擦除",并设定擦除次数。

      一般情况下,选择"决速擦除"就可以。保存配置后,选择"驱动器"选项。在"驱动器"对话框里,用户可以选择待擦除的分区以及擦除方法,然后按下"确定"按钮,在随后弹出的"警告"窗口中,按下"擦除"按钮开始擦除,用户会在屏幕上看到一个擦除进度指示条。 擦除过程比较缓慢,用户需要耐心等待。在擦除过程中,可能偶尔会听到硬盘发出"咯楞咯楞"的噪音,这可能是遇上了"硬"坏块,不要紧,让擦除继续进行,说不定会有神奇的效果出现。 擦除完后,用Format命令对整个驱动器做格式化,你会发现那些擦除前不能顺利格式化的地方如今顺畅地过去了,而且几乎听不到那令人心惊肉跳?quot;咯楞咯楞"的噪音。 格式化完成后,用Scandisk进行多次扫描,你会惊喜地看到硬盘上再也找不出一个坏块。

    转载于:https://www.cnblogs.com/lin1314885/articles/1360679.html

    展开全文
  • 本次实验的重点对oracle 数据库进行备份,如果出现介质损坏,利用数据库的备份集对数据库基于时间点的恢复,以用来对生产数据库得到一个及时有效的预案。 例如 2012/07/19 下午15:17对数据库进行了全库备份,之后数据库...

    本次实验的重点对oracle 数据库进行备份,如果出现介质损坏,利用数据库的备份集对数据库基于时间点的恢复,以用来对生产数据库得到一个及时有效的预案。

    例如 2012/07/19 下午15:17对数据库进行了全库备份,之后数据库损坏要求恢复到下午16:22数据,具体的操作步骤如下:

    1 对数据库的备份的脚本如下

    run {

      CROSSCHECK ARCHIVELOG ALL;---检查是否有无效的归档日志

      allocate channel ch1 device type disk ;

      allocate channel ch2 device type disk ;

      backup spfile format='/oracle/rman/spfile_%d_%s_%p_%t';--备份初始化文件

      backup full filesperset=20 tag='Full_%d' format='/oracle/rman/Full_%d_%s_%p_%t'

      database include current controlfile;--备份数据文件.

      backup filesperset=10 format='/oracle/rman/Arch_%d_%s_%p_%t'

      ARCHIVELOG ALL NOT BACKED UP 1 TIMES;--备份归档日志文件,如果归档日志文件已经备份过,就不用再备份。

      DELETE NOPROMPT ARCHIVELOG UNTIL TIME '(SYSDATE-7)';--删除7天之前的归档日志的备份

      backup format='/oracle/rman/Cntl_%d_%s_%p_%t' current controlfile;--备份控制文件。

      release channel ch1;

      release channel ch2;

    }

    2 恢复之前表 COM_FINAEXPENSES中的数据量为

             SQL> select count(*) from COM_FINAEXPENSES;

     

             COUNT(*)

             ----------

             172289

     3 在下午的15:17对数据已经备份结束,这时对表插入三条记录

    insert into COM_FINAEXPENSES (ID, COMCODE, PUBDATE, REPORTDATE, ORDERNUMBER, EXPENSEITEM, VALBEGINNING, VALENDING, REMARK, ENTRYTIME, UPDATETIME, GROUNDTIME, UPDATEID, RESOURCEID, RECORDID)

    values (1, 1, null, to_date('19-07-2012', 'dd-mm-yyyy'), null, '1', 1.0000, 1.0000, '1', to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), 1, 'CHZX', '1');

     

    insert into COM_FINAEXPENSES (ID, COMCODE, PUBDATE, REPORTDATE, ORDERNUMBER, EXPENSEITEM, VALBEGINNING, VALENDING, REMARK, ENTRYTIME, UPDATETIME, GROUNDTIME, UPDATEID, RESOURCEID, RECORDID)

    values (2, 2, null, to_date('19-07-2012', 'dd-mm-yyyy'), null, '2', 2.0000, 2.0000, '2', to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), 2, 'CHZX', '1');

     

    insert into COM_FINAEXPENSES (ID, COMCODE, PUBDATE, REPORTDATE, ORDERNUMBER, EXPENSEITEM, VALBEGINNING, VALENDING, REMARK, ENTRYTIME, UPDATETIME, GROUNDTIME, UPDATEID, RESOURCEID, RECORDID)

    values (3, 3, null, to_date('19-07-2012', 'dd-mm-yyyy'), null, '3', 3.0000, 3.0000, '3', to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), to_date('19-07-2012', 'dd-mm-yyyy'), 3, 'CHZX', '3');

    查看表的数据量为

    SQL> select count(*) from COM_FINAEXPENSES;

     

      COUNT(*)

    ----------

        172292

     

    4 切换一个redolog日志

         alter system switch logfile;

         生成的归档日志以后需要

    5 破环数据库用dbca 图示化界面删除数据库--这里只是删除oracle database ,oracle 软件不必删除。

    6 开始恢复到下午16:22的数据库的状态

        6.1 创建恢复需要的目录文件

            mkdir -p /oracle/app/oracle/admin/centerdb/bdump

            mkdir -p /oracle/app/oracle/admin/centerdb/cdump

            mkdir -p /oracle/app/oracle/admin/centerdb/udump

            mkdir -p /oracle/app/oracle/admin/centerdb/adump

            mkdir –p /oracle/data

            mkdir –p /oracle/archive

            mkdir –p /oracle/redolog

            mkdir –p /oracle/controlfile

        6.2 spfile 文件copy 到路径$ORACLE_HOME/dbs路径下,登陆数据库

            创建pfile文件

            SQL>create pfile from spfile;

            SQL>sqlplus /nolog

            SQL>conn / as sysdba

            SQL>startup nomount ;

           $ rman

           RMAN>connect target

           RMAN>run{

                      allocate channel c1 type disk;

                      restore controlfile from '/oracle/rman/Cntl_CENTERDB_21_1_789059873 ';--这是备份的控制文件的备份片

                      release channel c1;

                    }

     

           SQL>alter database mount;

           RMAN>run{

            allocate channel c1 type disk;

            allocate channel c2 type disk;

            restore database;

            release channel c1;

            release channel c2;

           }---恢复数据文件

     

          RMAN>run{

            allocate channel c1 type disk;

            allocate channel c2 type disk;

            restore archivelog all;

            release channel c1;

            release channel c2;

           }---恢复归档日志文件

     

           SQL>recover database using backup controlfile until time '2012-07-19 16:22:00;--基于时间点的恢复

           选择auto

           alter database open resetlogs;

    7 查看表COM_FINAEXPENSES的数据量

    SQL> select count(*) from COM_FINAEXPENSES;

     

      COUNT(*)

    ----------

        172293

       其中插入的三条记录都存在。

     

    转载:http://blog.chinaunix.net/uid-23582874-id-3410277.html

    展开全文
  • SQL> drop tablespace test including contents; drop tablespace test including contents * 第 1 行出现错误: ORA-01122: 数据库文件 5 验证失败 ...ORA-01210: 数据文件标头发生介质损坏 怎么解决??
  • 随着FLASH芯片的成熟,IO速度快、性能稳定的FLASH芯片开始大规模量产,使得诸如专业影视制作开始大面积采用FALSH设备做为存储介质。像经常见到的影视电视剧使用的RED Digital Cinema专业级影视数字摄像机就采用了...
  • 原因 遇到介质故障的文件是由于之前有一些I/O错误写入数据文件,如alert.log中显示。根本原因是数据文件被创建文件系统备份的OS-tool锁住,如Netbackup或ArcServ。RDBMS无法打开数据文件并因此失败。 实例会在...
  • 解决思路,把损坏的文件设置为离线。执行:alter database datafile 5 offline;提示无法执行。文档摘录:ONLINESpecify ONLINE to bring the data fil...
  • 1.1 现象描述 数据库启动失败,系统显示如下错误信息: SQL> startup instance started. Total System Global Area 1243425160 bytes Fixed Size 731528 bytes ...Variable Size 503316480 bytes ...
  • ORA-01113: file 2 needs media recovery ORA-01110: data file 2:'/opt/oracle/product/9.2/dbs/DBPathdf42repTab.DBF' 1.2 可能原因 Oracle数据库表空间介质文件损坏导致数据库启动失败。 1.3 处理步骤 以...
  • 在三产品重介质旋流器正常磨损中受冲击的部位最易损坏,提出在关键部位采用含氧化锆的增韧氧化铝陶瓷衬块来改善旋流器的磨损状况;分析了因衬块质量不均衡、粘贴效果差、筒体质量差、设计问题、物料有铁件等原因导致的...
  • 首先用的是数据文件恢复,后提示需要介质恢复, 问题提示是无法这时候访问,一个是未恢复,二是没有联机 [@more@] ...
  • U盘介质安全管理系统

    2021-02-26 13:16:04
    产品背景 移动存储介质因其小巧、存储量大,携带方便,价格便宜等特点在信息化建设中得到普遍应用,越来越多的私人信息、企业资料...移动存储介质损坏后在无人监管的情况下带外维修,造成信息的泄露; 单位中存有涉密
  • 对联机日志的损坏要根据日志状态进行分析,联机日志一般会有Current、Active和Inactive三种状态。Inactive状态不会造成数据丢失。而Active和Current状态的日志一般会造成数据的丢失。根据v$log.status判断受损日志的...
  • Oracle 数据库将损坏的块标识为“逻辑损坏”或“介质损坏”。如果是逻辑损坏,则是 Oracle 内部错误。Oracle 数据库检测到不一致之后,就将逻辑损坏的块标记为损坏。如果是介质损坏,则是块格式不正确;从磁盘读取的...
  • 数据库将损坏的块标识为“逻辑损坏”或“介质损坏”。如果是逻辑损坏,则是 Oracle 内部错误。Oracle 数据库检测到不一致之后,就将逻辑损坏的块标记为损坏。如果是介质损坏,则是块格式不正确;从磁盘读...
  • Oracle 数据库将损坏的块标识为“逻辑损坏”或“介质损坏”。假设是逻辑损坏,则是 Oracle 内部错误。Oracle 数据库检測到不一致之后,就将逻辑损坏的块标记为损坏。假设是介质损坏,则是块格式不对;从磁盘读取的块...
  • 数据块损坏的恢复当数据文件中仅有少量的数据块发生了介质损坏时,我们可以利用RMAN对其进行数据块一级的恢复。数据块级的局部恢复可以大大缩短恢复时间,甚至缩短到其他恢复方式的千分之几。此外,在数据块存在损坏...
  • Oracle 数据块损坏与恢复详解

    千次阅读 2014-10-15 13:58:57
    Oracle 数据库将损坏的块标识为“逻辑损坏”或“介质损坏”。如果是逻辑损坏,则是 Oracle 内部错误。Oracle 数据库检测到不一致之后,就将逻辑损坏的块标记为损坏。如果是介质损坏,则是块格式不正确;从磁盘读取的...
  • 介质恢复,即磁盘或操作系统文件损坏的恢复-非RMAN方法 1,联机恢复时将要恢复的文件或表空间设为脱机 offline,不包括系统表空间或活动UNDO表空间。 2,然后修复restore将数据带回到备份的时间点,即将备份的操作...
  • Oracle 数据库损坏恢复

    2019-10-29 16:01:09
    当数据文件中仅有少量的数据块发生了介质损坏时,我们可以利用RMAN对其进行数据块一级的恢复。数据块级的局部恢复可以大大缩短恢复时间,甚至缩短到其他恢复方式的千分之几。此外,在数据块存在损坏而进行的恢复中,...
  • 当数据文件中仅有少量的数据块发生了介质损坏时,我们可以利用RMAN对其进行数据块一级的恢复。数据块级的局部恢复可以大大缩短恢复时间,甚至缩短到其他恢复方式的千分之几。此外,在数据块存在损坏而进行的恢复中,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 856
精华内容 342
关键字:

介质损坏