今天程序报如下错误:
System.Data.OracleClient.OracleException: ORA-01653: unable to extend table P_CASHBACK.T_CASHBACK_O_LT_SYNC by 128 in tablespace CASHBACK
ORA-06512
查找结果发现是空间不足, 需要增加数据文件。
检查过程
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
ORDER BY ((a.bytes - b.bytes) / a.bytes) DESC;
SELECT *
FROM dba_data_files
WHERE tablespace_name = '表空间名A';
处理方法
对应数据文件
alter tablespace 表空间名A add datafile '/u01/app/oracle/oradata/ab/表空间名A02.dbf' size 5120M