一般来讲Oracle的表空间单个库文件大小为32G左右,满了之后需要进行扩展。
(一)查询使用情况SQL命令:
--查询表空间大小和使用总体情况
SELECT a.tablespace_name tablespace, total/1024/1024 total_MB, free/1024/1024 "FREE_MB",
(total - free)/1024/1024 USED_MB, Round((total - free) / total, 4) * 100 "USED[[%]]"
FROM (SELECT tablespace_name,Sum(bytes) free FROM DBA_FREE_SPACE GROUP BY tablespace_name) a,
(SELECT tablespace_name, Sum(bytes) total
FROM DBA_DATA_FILES GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name;
--查询表空间的数据文件情况
SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files ORDER BY tablespace_name;
(二)扩展空间执行以下SQL命令:
ALTER TABLESPACE "XXXX_DATA"
ADD DATAFILE 'F:\OracleData\XXXX_2.DBF' SIZE 1G AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED;
参数说明:
XXXX_DATA是表空间的名称。
F:\OracleData\XXXX_2.DBF是新建的扩展库文件名称。
SIZE 1G指初始大小1G。
NEXT 50M指每次自增量。
UNLIMITED指不限制但最大大小为限制的32G。