oracle表空间超过32G解决方法
c 2023-06-07 15:18:25 发表在:PHP 查看数:1063

oracle表空间超过32G解决方法 首先查看表空间使用情况

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_BYTES "最大块(M)"
  FROM (SELECT TABLESPACE_NAME,
               ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
               ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
          FROM SYS.DBA_FREE_SPACE
         GROUP BY TABLESPACE_NAME) F,
       (SELECT DD.TABLESPACE_NAME,
               ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
          FROM SYS.DBA_DATA_FILES DD
         GROUP BY DD.TABLESPACE_NAME) D
 WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME AND F.TABLESPACE_NAME='CXSJ_DIAN'
 ORDER BY 4 DESC;

查看表空间的存储位置

 SELECT * FROM dba_data_files;

扩容表空间

 ALTER TABLESPACE CXSJ_DIAN ADD DATAFILE 'D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\CXSJ_DIAN.DBF' SIZE 1000M AUTOEXTEND ON NEXT 50M;
最近访问时间:2025-05-01 14:57:49
知识库:340条鸣谢:TAY  备案号:蜀ICP备2024090044号