Oracle 如何擴展表空間
第一步:查看ORACLE表空間的使用情況:
SELECT DBF.TABLESPACE_NAME,
DBF.TOTALSPACE "總量(M)",
DBF.TOTALBLOCKS AS 總塊數,
DFS.FREESPACE "剩余總量(M)",
DFS.FREEBLOCKS "剩余塊數",
(DFS.FREESPACE / DBF.TOTALSPACE) * 100 "空閑比例"
FROM (SELECT T.TABLESPACE_NAME,
SUM(T.BYTES) / 1024 / 1024 TOTALSPACE,
SUM(T.BLOCKS) TOTALBLOCKS
FROM DBA_DATA_FILES T
GROUP BY T.TABLESPACE_NAME) DBF,
(SELECT TT.TABLESPACE_NAME,
SUM(TT.BYTES) / 1024 / 1024 FREESPACE,
SUM(TT.BLOCKS) FREEBLOCKS
FROM DBA_FREE_SPACE TT
GROUP BY TT.TABLESPACE_NAME) DFS
WHERE TRIM(DBF.TABLESPACE_NAME) = TRIM(DFS.TABLESPACE_NAME)
第二步:找到需要擴展空間的表空間,查看其數據文件路徑:
SELECT * FROM DBA_DATA_FILES T WHERE T.TABLESPACE_NAME = '表空間名稱'
第三步:增加表空間大小:
增加表空間大小的方法有二:
1、修改數據文件的大小:
ALTER DATABASE DATAFILE '全路徑的數據文件名稱' RESIZE ***M
2、新增數據文件:
ALTER TABLESPACE 表空間名稱 ADD DATAFILE '全路徑的數據文件名稱' SIZE ***M
注意:
1、表空間盡量讓FREE百分比保持在10%以上,如果低于10%就增加DATAFILE或者RESIZEDATAFILE,一般數據文件不要超過2G
2、設置表空間數據文件自動擴展:
ALTER DATABASE DATAFILE '全路徑的數據文件名稱' AUTOEXTEND ON;

浙公網安備 33010602011771號