關(guān)于oracle數(shù)據(jù)庫表空間擴容的問題
目錄
- 1.查看表空間使用率
- 2.擴容
- 方法一:增大所需表空間大小
- 方法二:增加數(shù)據(jù)文件個數(shù)
- 方法三:設(shè)置表空間自動擴展
- 3.遇到的錯誤
- 總結(jié)
1.查看表空間使用率
SELECT B.FILE_NAME 物理文件名, B.TABLESPACE_NAME 表空間名稱, B.BYTES/1024/1024 大小M, (B.BYTES-SUM(NVL(A.BYTES,0)))/1024/1024 已使用M, SUBSTR((B.BYTES-SUM(NVL(A.BYTES,0)))/(B.BYTES)*100,1,5) 使用率FROM DBA_FREE_SPACE A,DBA_DATA_FILES BWHERE A.FILE_ID=B.FILE_IDGROUP BY B.TABLESPACE_NAME,B.FILE_NAME,B.BYTESORDER BY B.TABLESPACE_NAME;
2.擴容
擴容有三種方式:
方法一:增大所需表空間大小
alter database datafile '表空間位置' resize 新的尺寸
例如:
alter database datafile "+GBPORCL/GBPORCL/DATAFILE/sysaux.262.1029000091" resize 5000M;
注意:單個表空間最大為32G;
對于oracle數(shù)據(jù)庫的表空間,除了用手動增加數(shù)據(jù)文件大小外,還可以增加數(shù)據(jù)文件數(shù)量等方式擴展表空間大小。
方法二:增加數(shù)據(jù)文件個數(shù)
alter tablespace 表空間名稱 add datafile '新的數(shù)據(jù)文件地址' size 數(shù)據(jù)文件大小
例如:
ALTER TABLESPACE "SYSAUX" ADD DATAFILE "+GBPORCL/GBPORCL/DATAFILE/sysaux.272.dbf" SIZE 100M AUTOEXTEND ON next 50M Maxsize UNLIMITED
含義:初始分配100M,自增50M;
方法三:設(shè)置表空間自動擴展
alter database datafile '數(shù)據(jù)文件位置' autoextend on next 自動擴展大小 maxsize 最大擴展大小
例如:
alter database datafile "+GBPORCL/GBPORCL/DATAFILE/sysaux.262.1029000091" autoextend on next 500m maxsize 10000m;
3.遇到的錯誤
SQL 錯誤 [1276] [99999]: ORA-01276: 無法添加文件 +GBPORCL/GBPORCL/DATAFILE/sysaux.264.1029000091。
相應(yīng)文件具有一個 Oracle Managed Files 文件名。
以為直接改個名字就可以,但是不可行,
原因:這個表空間是通過OMF管理的,加數(shù)據(jù)文件的時候,不需要添加具體的路徑和文件名,直接添加并指定大小即可: alter tablespace SYSAUX add datafile size xxx;
或者使用方法二
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持。
