概述
一、问题现象:报表数据没有产生,查看oracle小时表发现时间点停止在前一天的22:55分。
二、处理步骤:
1、查看syslog日志,22:55分前后log日志产生正常;
2、查看logparser日志,提示入库失败(log文件产生wrong错误日志)。
日志如下:
[log_parser_1 msg warn main 12/05/11 23:50:11:660] Failed to commit the records to database. - java.sql.BatchUpdateException: ORA-01
653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:367)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:8728)
at cn.com.asb.stat.logparser.DbHandler.commit(DbHandler.java:130)
at cn.com.asb.stat.logparser.Worker.commitLines(Worker.java:418)
at cn.com.asb.stat.logparser.Worker.processFile(Worker.java:333)
at cn.com.asb.stat.logparser.Worker.run(Worker.java:508)
at cn.com.asb.stat.logparser.LogParser.run(LogParser.java:36)
at cn.com.asb.stat.logparser.Main.run(Main.java:132)
at com.nextenso.mgmt.reporter.ReportingHandler.start(ReportingHandler.java:124)
at cn.com.asb.stat.logparser.Main.main(Main.java:154)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:8728)
at cn.com.asb.stat.logparser.DbHandler.commit(DbHandler.java:130)
at cn.com.asb.stat.logparser.Worker.commitLines(Worker.java:418)
at cn.com.asb.stat.logparser.Worker.processFile(Worker.java:333)
at cn.com.asb.stat.logparser.Worker.run(Worker.java:508)
at cn.com.asb.stat.logparser.LogParser.run(LogParser.java:36)
at cn.com.asb.stat.logparser.Main.run(Main.java:132)
at com.nextenso.mgmt.reporter.ReportingHandler.start(ReportingHandler.java:124)
at cn.com.asb.stat.logparser.Main.main(Main.java:154)
3、查看oracle表空间使用率(表空间已设置为自动扩展,所以不是该问题),
1 SYSAUX ONLINE 480.0 446.06 92.93% 2 SYSTEM ONLINE 480.0 469.30 97.77% 3 TS20110504 OFFLINE 32767.0 32,763.72 99.99% 4 TS20110505 OFFLINE 32767.0 32,763.72 99.99% 5 UNDOTBS1 ONLINE 18445.0 813.42 4.41% 6 USERS ONLINE 5.0 4.12 82.50% 7 WAP_USER_DATA_TABLESPACE ONLINE 41848.0 41,843.82 99.99%
4、查看当时oracle告警日志(文件目录为/bases/oracle/admin/CDMAWAP/bdump/alert_CDMAWAP.log),发现单个Datafile不足,大小超过3G,导致入库失败:
Thu May 12 23:05:24 2011
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
Thu May 12 23:30:04 2011
create tablespace ts20110513 DATAFILE '/bases/oradata/CDMAWAP/20110513.dbf' SIZE 3000M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL UNIFORM
SIZE 1M
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
create tablespace ts20110513 DATAFILE '/bases/oradata/CDMAWAP/20110513.dbf' SIZE 3000M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL UNIFORM
SIZE 1M
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
ORA-1653: unable to extend table WAP_USER.TAB20110512_23 by 128 in tablespace TS20110512
三、解决方案:
(1)通过在表空间增加一个datafile,临时性解决该问题:
ALTER tablespace TS20110411 ADD DATAFILE /StatOracle/CDMAWAP/CTWAP/20110411_1.dbf' SIZE 1024M autoextend on;
(2)修改创建表空间和表的procedure,确保以后的表空间建立之初就是2个datafile。
转载于:https://blog.51cto.com/shengjian/564741
最后
以上就是懵懂犀牛为你收集整理的oracle入库失败-单个Datafile不足的问题的全部内容,希望文章能够帮你解决oracle入库失败-单个Datafile不足的问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复