开发学院数据库Oracle ORACLE ORA-1693错误以及表和索引的表空间的移动... 阅读

ORACLE ORA-1693错误以及表和索引的表空间的移动

 2008-11-10 13:00:13 来源:WEB开发网   
核心提示:本公司开发的软件,有客户不能上传大的附件,ORACLE ORA-1693错误以及表和索引的表空间的移动,页面不报任何错误,查看JBOSS日志,正常!!!所有问题全部解决了,但很多地方还是一头雾水(只怪自己太菜了)只有以后多加强学习,同样看不到任何错误,排除了软件本身故障

本公司开发的软件,有客户不能上传大的附件,页面不报任何错误。查看JBOSS日志,同样看不到任何错误,排除了软件本身故障。

在查看oracle数据库日志,发现当上传大的附件时出现错误信息

OEA_1693: MAX # EXTENTS 4096 reached in lobsegment

nes.sys_LOB0000024832C00008$$

解决过程

上网找了下资料

  ORA-1693 max # extents (string) reached in lob segment string.string

  Cause: A LOB segment tried to extend past MAXEXTENTS.

  Action: If MAXEXTENTS is less than the system max, raise it. Otherwise, you must re-create with larger initial, next or PCTINCREASE parameters.

将表空间的maxextents改为无限制,问题还是存在将该表的maxextents改为无限制

alter table T_ID_CHECK_ACCESSORIES storage (maxextents unlimited)

问题同样不能解决

后来在查看该表结构时意外发现该表用的表空间为USERS 而没有用到我为其创建的表空间test,由于数据库是用IMP导入数据的,可能是当初EXP导出时该用户是用的oracle默认表空间。

由于有以上发现我决定将该表的表空间修改为test

Alter table T_ID_CHECK_ACCESSORIES move tablespace test;

修改该表后测试系统 一切正常能正常传大附件

解决问题后还是一头雾水,为什么该表用USERS表空间会出现ORA-01693问题,改为TEST表空间后正常,USERS和TEST的maxextents都为无限制。

突然想到该用户下面的所有表同样都在USERS表空间中,决定把所有表都移至TEST中由于表较多所以用一个查询生成所需要的命令

Select ‘alter table ‘ || table_name || ‘ move tablespace test; ‘ from user_tables;

然后执行该查询所生成的结果

将该用户下的索引移至表空间TEST

Select ‘alter index ‘|| index_name || ‘ rebuild tablespace test;’

执行该查询生成的命令后,发现有4个表报错

ORA-02327: cannot create index on expression with datatype LOB

检查4个表的结构后,都有个LOB字段那说明有LOB字段的索引不能用正常的

alter index index_name rebuild talespace tablespace_name

网上查询得知我们要移动LOB的索引就必须使用特定的语法来移动LOB的对象,具体的语法如下:

  ALTER TABLE table_name MOVE

  TABLESPACE new_tbsp

  STORAGE(new_storage)        

  LOB (lobcol)          --后面括号里面内容为 LOB 字段名

  STORE AS lobsegment

  (TABLESPACE new_tbsp

  STORAGE (new_storage));

检查是否有索引状态为'UNUSABLE'select index_name from user_indexes t where t.status ='UNUSABLE';如果有则对该索引重建alter index index_name rebuild

使用以上语法在修改这4条索引时,正常!!!

所有问题全部解决了,但很多地方还是一头雾水(只怪自己太菜了)只有以后多加强学习,慢慢了解了。我的博客地址是:tianchi.csai.cn 大家来多交流哦!

Tags:ORACLE ORA 错误

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接