ORA-01653、ORA-01652 問題解決

今天拿到了一個16G的數據庫,需要導入到我本地Oracle數據庫中。

在導入過程中出現“ORA-01653”錯誤提示——USERS表空間不夠用;

快導入完成時出現“ORA-01652”錯誤提示——作業無法通過128(在表空間USERS中)擴展temp段。

ORA-01653、ORA-01653的解決辦法都是增大表空間,具體有三種方式:
1、開啓表空間擴展功能;
2、增大表空間的空間;
3、爲表空間加數據文件;

若表空間已經重新增加數據文件且無限制增長,還是出現ORA-01652或者ORA-01653錯誤,這時候就需要看看本地磁盤的容量是不是不夠用了。
我出現ORA-01562的原因就是我的D盤容量已經爆了。

以上即爲我解決問題的方法,希望可以幫到大家,具體的操作如下:


首先,我們可以查看一下報錯用戶的表空間使用情況:

----查詢表空間使用情況---   

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
 ORDER BY 4 DESC;

其次,查看錶空間是否具有自動擴展的能力

----查看錶空間是否具有自動擴展的能力----

SELECT T.TABLESPACE_NAME,
       D.FILE_NAME,
       D.AUTOEXTENSIBLE,
       D.BYTES,
       D.MAXBYTES,
       D.STATUS
  FROM DBA_TABLESPACES T, DBA_DATA_FILES D
 WHERE T.TABLESPACE_NAME = D.TABLESPACE_NAME
 ORDER BY TABLESPACE_NAME, FILE_NAME;

最後,修改表空間大小

  • 設置當前表空間擴展方式爲沒有限制增長:
ALTER DATABASE    
DATAFILE 'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF' AUTOEXTEND     
ON NEXT 50M MAXSIZE UNLIMITED;
  • 給表空間增加數據文件,並設置自動增長:
----增加數據文件並設置自動增長,不設置自動增長----
ALTER TABLESPACE USERS ADD DATAFILE  
'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF' SIZE 50M;  

-----增加數據文件並設置自動增長,最大爲1000M----
ALTER TABLESPACE USERS ADD DATAFILE  
'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF' SIZE 50M  
AUTOEXTEND ON NEXT 5M MAXSIZE 1000M; 

----增加數據文件並設置自動增長,無限增長----
ALTER TABLESPACE USERS ADD DATAFILE  
'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF' SIZE 50M  
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED; 
  • 設置已存在的數據文件自動增長
-----設置USERS02.DBF可以自動增長,最大爲100M----
ALTER DATABASE DATAFILE 'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF'  
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;  

----設置USERS02.DBF可以自動增長,無限增長----
ALTER DATABASE DATAFILE 'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF'  
AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED;  
  • 手動改變已存在數據文件的大小
 ALTER DATABASE DATAFILE 'D:\dsinstall\oracle\oradata\orcl\USERS02.DBF' 
 RESIZE 100M;  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章