错误信息:
java.sql.SQLException: ORA-01578: ORACLE 数据块损坏 (文件号 17, 块号 315703)
ORA-01110: 数据文件 17: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\DEMO.DBF'
可能的原因有很多,比如物理磁盘坏块,比如Oracle故障……,反正不好定位具体的问题
简单、粗暴的解决办法:
1、查询有坏块的表
select tablespace_name, segment_type, owner, segment_name
from dba_extents
where file_id = 17
and 315703 between block_id and block_id + blocks - 1;
2、清空表中的数据
truncate table tabelName;
3、从数据备份中恢复数据
根据备份方式恢复单表数据,如果是测试环境,此步骤就可省略。。。,重新跑测试数据就可以了
其他说明,删除表重建也可以,目的都是跳过Oracle数据文件的坏块
参考资料:
EXPORA-01578(数据块损坏) 错误解决方法http://www.itpub.net/thread-1045172-1-1.html
分享到:
相关推荐
在oracle里面运行一下,解决Exception java.sql.SQLException ORA-00600 内部错误代码
java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK ……
有关表死锁的详细图片 博文链接:https://meteor-1988.iteye.com/blog/1568695
oracle ora-各种常见java.sql.SQLException归纳
ORA-28001 the password has expired密码过期
ORA-01157解决方案
oracle实例的内存(SGA和PGA)进行调整,优化数据库性
2008/06/25 13:30:57 - oracl - ERROR : java.sql.SQLException: ORA-01722: 无效数字 2008/06/25 13:30:57 - oracl - ERROR : at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
非常方便的一个oracle管理工具,数据库开发和管理员都适用,可以进行数据库的日常开发,管理,优化工作,功能很全,对于dba来说,可以进行一些高级功能比如,awr, ash, 10046等功能。
Oracle的常用命令,包含查看系统的SGA区的状态,查看系统的锁,过滤表清除SQL生产,查看表空间袋使用情况,查插入表的性能,等等,这些都是DBA常用的一些命令,希望能给一些朋友带来帮助!!!
今天在项目中,使用Mybatis对oracle数据库进行操作的时候,报出ORA-00911: invalid character的错误,检查了一下SQL,发现都书写正确啊,复制到plsql上执行也都没问题,这什么原因呢? 注意:这里说的是用navicat...
oracle-12c驱动包,完美解决oracle版本落后无法连接数据库的问题!主要有以下报错::java.sql.SQLException: ORA-28040: No matching authentication protocol java.sql.SQLException: Listener refused the ...
包含ojdbc6.jar/ojdbc7.jar两个包。其中ojdbc7.jar亲测完美解决 java.sql.SQLException: ORA-28040: 没有匹配的验证协议。
发生Java异常: java.sql.SQLException: ORA-06550: 第 1 行,第 7 列: PLS-00306:调用“myproc”时参数数量或类型错误ORA-06550:第 1 行,第 7 列: PL/SQL:忽略语句 在 sun.jdbc.odbc.JdbcOdbc....