1. 检查一下表空间的占用情况
2. 检查索引扩展情况:
select s.index_name,
s.table_name,
s.tablespace_name,
s.initial_extent,
s.next_extent
from user_indexes s
where s.index_name = 'pk_sceautosm'
INDEX_NAME TABLE_NAME TABLESPACE_NAME INITIAL_EXTENT NEXT_EXTENT(为空)
两种可能,一种next_extent自动扩展导致表空间满,无法扩展
另外一种可能就是next_extent有数值,但是远大于表空间剩余的空间,因此无法扩展。
总之就是表空间空间不够了。
alter database datafile 'D:\ORACLE\ORADATA\DMSDB\DIMS_INVALID_PICTURE2.DBF' resize 1000M
或者增加数据文件
alter tablespace servicxe_main_idx add datafile 'D:\ORACLE\ORADATA\DMSDB\DIMS_INVALID_PICTURE3.DBF' size 1024M;
重建索引
alter index pk_sceautosm rebuild tablespace servicxe_main_idx storage(initial 256K next 256K pctincrease 0):
重建索引的时候可能会报:ora-01658:无法为表空间中的段创建initial区解决办法。
基本还是表空间满的问题,增加数据文件或者resize一下大小就可以。参见上面的方法。