Oracle用来处理数据量比较大的数据时,可以用到分区分表,理论上建议分区个数为3000,如果设置成每天自动分区,理论上可以用九年,但是实际过程中肯定需要硬盘支持,另外,跨分区的操作贼慢,扯得有点原来。
如果你的大量数据无法插入,少量数据不受影响,这时候你可以看一下表空间情况:
查看表空间使用情况:
SELECT A.TABLESPACE_NAME AS TABLESPACE_NAME,
ROUND(A.BYTES/(1024*1024*1024),2) AS "TOTAL(G)" ,
ROUND(B.BYTES/(1024*1024*1024),2) AS "USED(G)" ,
ROUND(C.BYTES/(1024*1024*1024),2) AS "FREE(G)" ,
ROUND((B.BYTES * 100) / A.BYTES,2) AS "% USED" ,
ROUND((C.BYTES * 100) / A.BYTES,2) AS "% FREE"
FROM SYS.SM$TS_AVAIL A, SYS.SM$TS_USED B, SYS.SM$TS_FREE C
WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME
AND A.TABLESPACE_NAME = C.TABLESPACE_NAME;
查询结果不用多解释,如果确定表空间已经接近99.9%,那么是时候增加表空间了;
添加表空间: