在往数据表里插入数据时,出现了 ORA-01654: 索引 SSERVICE.IX_MSI_WDR_INPUT_1 无法通过 1024 (在表空间 USERD 中) 扩展 的错误信息,原来是数据量太大,表空间没有自动增长,空间不足了。

解决办法,扩展表空间:

--(1) 重置数据文件大小

ALTER DATABASE DATAFILE 'datafile路径名字' RESIZE 2000M;

--(2) 设置数据文件能自动增长

ALTER DATABASE DATAFILE '... ' AUTOEXTEND ON | OFF NEXT 20M MAXSIZE 300M ;

-- 查看哪些表空间为自动增长

SELECT FILE_NAME , TABLESPACE_NAME , AUTOEXTENSIBLE FROM dba_data_files ;

/* (3) 添加数据文件

增加到表空间中的数据文件不能直接从表空间中删除,除非删掉整个表空间

增加数据文件将有助于均衡 I/O

一个表空间文件最多为个,文件越多,执行一次检查点的代价越高 */

ALTER TABLESPACE tablespace_name ADD DATAFILE '...' SIZE XX ;

ALTER TABLESPACE tbs2 ADD DATAFILE '/u01/app/oracle/oradata/orcl/tbs2.dbf' size 200m autoextend on ;

另:查看表空间利用率:

脚本如下:网上找的,把链接忘了,见谅。

select ff.s tablespace_name,
ff.b total,
(ff.b - fr.b) usage,
fr.b free,
round((ff.b - fr.b) / ff.b * 100) || '% ' usagep
from (select tablespace_name s, sum(bytes) / 1024 / 1024 b
from dba_data_files
group by tablespace_name) ff,
(select tablespace_name s, sum(bytes) / 1024 / 1024 b
from dba_free_space
group by tablespace_name) fr
where ff.s = fr.s

(CREATE_DATE, TYPE_NAME, SMS_ID, SMS_CONTENT,SMS_PHONE) VALUES (SYSDATE, 'HIS', 00003689, '测试数据', '138****2263'); /*报错信息: ORA -01536: 超出 表空间 'USERS' 的空间限额 */ 解决过程: ps:开始以为是 表空间 不够用了,看了下,的        系统已经运行很长时间没有出现问题,最近两天在数据采集完后导入到资料库时突然出现以下错误信息:Module:Srvtools Method:ExecuteCommand /n 錯誤訊息:- ORA - 01654 : unable to extend index HRERP.INDEX_DATE by 128 in tablespace USERS !       在网上查找 ORA -0 引言:数据库突然报: ORA - 01654 : unable to extend index BO.INDEX_indexname by 311072 in tablespace 错误,上网查原因,发现解决方法只有一个,就是增加tablespace的大小.现归纳解决此问题的方法如下.方法1:当出现类似错误时,首先检查tablespace的空间是否足够大,如果不够大,说明tablespace的空间不够扩... SELECT UPPER(F.TABLESPACE_NAME) " 表空间 名", D.TOT_GROOTTE_MB " 表空间 大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO... 今天在开发环境出现如下问题 Caused by:java.SQLException: ORA - 01654 : unable to extend index OPEN_CARE_BPM.ACT_IDX_HI_DETAIL_TENANT_ID by 128 in tablespace USERS. 从报错的信息可以看出是 表空间 的问题,解决方法 1.查看 表空间 分配情况 select tablespace_n... s/(1024*1024*1024) "剩余 表空间 ",         ROUND((z-s)/z*100,2)  "使用率%" from (select tablespace_name t1, 操作环境:Windows Server 2008 R2,32位 Oracle 11g R2。 导入大批量数据时报如下错误信息: ORA - 01654 : 索引IOT.IDX_IOT_EQUIP_ID无法通过1024(在 表空间 USERS中)扩展 百度发现出现这种情况的可能是 表空间 不足 ,通过如下SQL统计 表空间 使用情况,发现确实空间剩余不多。 -- 查看所有 表空间 的数据使用情况 SELECT Uppe... SELECT UPPER(F.TABLESPACE_NAME) “ 表空间 名”, D.TOT_GROOTTE_MB “ 表空间 大小(M)”, D.TOT_GROOTTE_MB - F.TOTAL_BYTES “已使用空间(M)”, TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),‘990.99’) “使用比”, F.TOTAL_BYTES “空闲空间(M)”, F.MAX_BYT select a.tablespace_name,a.bytes/1024/1024 "sum MB", (a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB", round (((a.bytes-b.bytes)/a.bytes)*100,2) "used%" from (select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_ 引言:数据库突然报: ORA - 01654 : unable to extend index BO.INDEX_indexname by 311072 in tablespace 错误,上网查原因,发现解决之道只有一个,就是增加tablespace的大小.因我的database的tablespace已经足够大了,最后发现不是tablespace 不足 ,而是参数错误.现归纳解决此问题的方法如下.方