[Oracle] 表空间异常增大,删除对应表相应条目报错 ORA-01654_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2104 | 回复: 0   主题: [Oracle] 表空间异常增大,删除对应表相应条目报错 ORA-01654        下一篇 
麦德龙1201
注册用户
等级:列兵
经验:91
发帖:3
精华:0
注册:2015-8-28
状态:离线
发送短消息息给麦德龙1201 加好友    发送短消息息给麦德龙1201 发消息
发表于: IP:您无权察看 2015-11-27 17:41:23 | [全部帖] [楼主帖] 楼主

近期发现备份文件(.dmp)文件异常大,使用以下方法查询到异常的表:

SQL> select segment_name,sum(bytes)/1024/1024 from dba_segments group by segment_name having sum(bytes)/1024/1024>1000;


找到异常大的段的段名,例如:seg_A;

SQL> select table_name,segment_name from dba_lobs where segment_name='seg_A';


根据异常大的段名找到对应的表的表名,例如:table_B;

使用SQL Developer连接到数据库,查看table_B的内容,发现从某一天起有大量重复的某用户登录信息,怀疑是这些大量重复的异常登录信息导致表空间异常

增大,并最终导致备份文件的异常增大。


使用SQL Developer删除相应的条目时,有时可以成功删除几十条(远远不够),有时一条都删除不了,有以下报错:

DELETE FROM "ABCDE"."table_B" WHERE ROWID = '×××××' AND ORA_ROWSCN = '×××××' and ( "ID" is null or "ID" is not null )


保存对表 "ABCDE"."table_B" 的更改时出现一个错误:

行 1: ORA-01654: 索引 ×××××.SYS_IL00000××××××00003$$ 无法通过 16 (在表空间 XXX 中) 扩展

SSH登录数据库,使用SQL语句删除相应条目:

DELETE FROM "ABCDE"."table_B" WHERE ××_USER_ID = '×××××××';


也有以下报错:

ORA-01654: unable to extend index ×××××.SYS_IL00000××××××00003$$ by 16 in
 
 tablespace XXX


oracle数据库版本SQL*Plus: Release 11.1.0.6.0


请问这是什么原因导致的?查ORA-01654,是和表空间不足有关,但是对于一个生产系统,我该怎样扩展表空间?



该贴被蜀山战纪编辑于2015-12-3 16:27:50



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论