解决方案 »
- 请问我在删除表时提示有主外键使用中,求解决方法和批量删除方法
- SQL求助,求一个导出BLOB图片文件的过程
- 用sys编译出错!DBMS_EXPORT_EXTENSION compile
- 求一个oracle查询:请帮帮忙!
- oracle登陆名和密码忘掉了,可以找到吗?
- Pro*C 编写“字符型函数”返回值问题求救
- 关于触发器的问题(在一个表中检索符合要求的数据累加起来放到另外一个表中)(急,急,急)
- [请教] Oracle中这样的sql语句怎么写啊?
- 连接服务器的问题
- 请问在 Windows xp 下能装Oracle吗? 谢谢!
- 求助: ORACLE表中根据date类型的列查询结果
- 关于PL/SQL Developer 代码助手的问题
Oracle调用标准C的系统函数,对数据块进行读写操作,因此,坏块是有可能由以下几种原因产生:
硬件的I/O错误
操作系统的I/O错误或缓冲问题
内存或paging问题
磁盘修复工具
一个数据文件的一部分正在被覆盖
Oracle试图访问一个未被格式化的系统块失败
数据文件部分溢出
Oracle或者操作系统的bug解决办法:恢复数据文件方法:
如果数据库是归档方式下,并且有完整的物理备份,就可以使用此方法来恢复。
步骤如下: 1) 先offline受影响的数据文件,执行以下的语句:
ALTER DATABASE DATAFILE 'name_file' OFFLINE; 2) 保留有坏块的数据文件,然后拷贝备份的数据文件。如果恢复的数据文件要求路径不同,执行以下的语句:
ALTER DATABASE RENAME FILE 'old_name' TO 'new_name'; 3) 恢复数据文件,执行以下语句:
RECOVER DATAFILE 'name_of_file'; 4) Online恢复后的数据文件,执行以下的语句:
ALTER DATABASE DATAFILE 'name_of_file' ONLINE;