当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 二 坏块对数据库产生的影响 如果数据库出现坏块,数据库的告
 

 

    摘要:ora-00903 invalid table name ora-00903:无效的表名 cause a table or cluster name is invalid or does not exist. this message is also issued if an invalid cluster name or no cluster name is specified in an alter cluster or drop cluster......
 ·oracle安全全接触(1)    »显示摘要«
    摘要:随着计算机的普及以及网络的发展,数据库已经不再仅仅是那些程序员所专有的话题。而oracle数据库更是凭借其性能卓越,操作方便灵活的特点,在数据库的市场中已经占据了一席之地。但是同样随着网络技术的不断进步,数据信息的不断增加,数据安全已经不再是以前的“老生长谈”,也更不是以前书本上那些“可望不可及”的条条框框。 或许很久以前,大家都觉得oracle数据库的安全并不存在隐患,因为oracle公司在去年11月份开始促销其数据库软件时提出的口号是“只有oracl......


处理Oracle数据库中的坏块(1)

一 什么是数据库的坏块

首先我们来大概看一下数据库块的格式与结构——数据库的数据块有固定的格式与结构,分三层 cache layer,transaction layer,data layer。在我们对数据块进行读取写入操作的时候,数据库会对要读写的数据块做一致性的检查,其中包括 数据块的类型、数据块的地址信息、数据块的scn号以及数据块的头部与尾部。如果发现其中有不一致的信息,那数据库就会标记这个数据块为坏块了。数据库的坏块分为两种,逻辑坏块与物理坏块。

如果数据库出现坏块,数据库的告警日志文件里面会存在有如下的一些报错信息 ora-1578以及ora-600 and trace file in bdump directory,其中ora-600错误的第一个参数值的范围是[2000]-[8000],不同的值代表着数据块的不同的层出现问题,具体的如下表所示: 【相关文章:Vista真够绝:只支持SQL Serv

二 坏块对数据库产生的影响 【扩展阅读:SQL Server开发人员应聘常见问题

cache layer 2000 – 4000 【扩展信息:如何使用SQL Server客户端配置工

range block layer

transaction layer 4000 – 6000

data layer 6000 - 8000

坏块产生影响的对象可能是数据字典表、回滚段表、临时段、用户数据表与索引等。不同的对象产生坏块后的处理方法不尽相同。

三 坏块产生的原因

oracle调用标准c的系统函数,对数据块进行读写操作,因此,坏块是有可能由以下几种原因产生:

硬件的i/o错误

操作系统的i/o错误或缓冲问题

内存或paging问题

磁盘修复工具

一个数据文件的一部分正在被覆盖

oracle试图访问一个未被格式化的系统块失败

数据文件部分溢出

oracle或者操作系统的bug

四 坏块的处理方法

1. 先收集相应的关于坏快的信息,从alertsid.log文件或者从trace文件中查找,找到例如以下的一些信息:

ora-1578 file# (rfn) block#

ora-1110 file# (afn) block#

ora-600 file# (afn) block#

其中rfn表示的是relative_fno

afn表示的是file_id select file_name,tablespace_name,file_id “afn”,relative_fno “rfn”


...   下一页
 ·oracle数据库的安全策略    »显示摘要«
    摘要:oracle是关系型数据库管理系统,它功能强大、性能卓越,在当今大型数据库管理系统中占有重要地位。在我们开发的一mis系统中,选用了oracle7.3数据库。在正常情况下,oracle数据库会保证数据的安全、稳定,为用户提供正确的数据,但由于计算机系统的故障(硬件故障、软件故障、网络故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失,整个系统都将处于瘫痪状态。因此,如何保证oracle数据库的安全就......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE