ORA-01653: unable to extend table APPLSYS.WF_JAVA_DEFERRED by 16 in tablespace APPS_TS_QUEUES
出现这种表空间不足,检查两方面:表空间的自动扩展功能是否开;另一种是空间确实不够用了,已经达到了自动扩展的上限。
SELECT A.TABLESPACE_NAME "表空间名",
A.BYTES / 1024 / 1024 "表空间大小(M)",
(A.BYTES - B.BYTES) / 1024 / 1024 "已使用空间(M)",
B.BYTES / 1024 / 1024 "空闲空间(M)",
ROUND(((A.BYTES - B.BYTES) / A.BYTES) * 100, 2) "使用比"
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME, SUM(BYTES) BYTES, MAX(BYTES) LARGEST
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
AND A.TABLESPACE_NAME = 'APPS_TS_QUEUES'
ORDER BY ((A.BYTES - B.BYTES) / A.BYTES) DESC;
空闲表空间查询:
SELECT TABLESPACE_NAME, SUM(BYTES) BYTES, MAX(BYTES) LARGEST
FROM DBA_FREE_SPACE B
WHERE B.TABLESPACE_NAME = 'APPS_TS_QUEUES'
GROUP BY TABLESPACE_NAME;
表空间自动扩展功能是否打开查询:
SELECT FILE_ID, FILE_NAME, TABLESPACE_NAME, AUTOEXTENSIBLE, INCREMENT_BY
FROM DBA_DATA_FILES
WHERE TABLESPACE_NAME = 'APPS_TS_QUEUES'
ORDER BY FILE_ID DESC;
表空间数据文件查询:
SELECT FILE_NAME,
TABLESPACE_NAME,
BYTES / 1024 / 1024 "bytes MB",
MAXBYTES / 1024 / 1024 "maxbytes MB"
FROM DBA_DATA_FILES
WHERE TABLESPACE_NAME = 'APPS_TS_QUEUES';
表空间定义DDL获取:
SELECT DBMS_METADATA.GET_DDL('TABLESPACE', 'APPS_TS_QUEUES') FROM DUAL;
删除表空间数据文件
DROP datafile '/u01/app/oracle/product/10.2.0/oradata/orcl/USER_DATA.dbf '
PS:表空间一般让空闲百分比保持在10%以上,且数据文件大小最好不要超过2G。当表空间不足时,要么resieze
datafile,要么增加datafile。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26101098/viewspace-1262653/ ,如需转载,请注明出处,否则将追究法律责任。