oracle 表空间扩容(增加新的数据文件)
SELECT tablespace_name,file_name,ROUND(bytes / 1024 / 1024, 2) AS size_mb,ROUND(maxbytes / 1024 / 1024, 2) AS max_size_mb,status,autoextensible
FROM dba_data_files
ORDER BY tablespace_name;--给表空间增加一个新数据库文件ALTER TABLESPACE EAS_D_EAS_STANDARDADD DATAFILE '/home/easdata/EAS_D_EAS_STANDARD003.dbf' SIZE 10G AUTOEXTEND ON NEXT 1024M;
SELECT df.tablespace_name AS "表空间名称",df.file_name AS "文件名称",ROUND(df.bytes / 1024 / 1024, 2) AS "已分配大小_MB",ROUND((df.bytes - NVL(fs.free_space, 0)) / 1024 / 1024, 2) AS "已使用大小_MB",ROUND(NVL(fs.free_space, 0) / 1024 / 1024, 2) AS "剩余空间_MB",ROUND((df.bytes - NVL(fs.free_space, 0)) / df.bytes * 100, 2) AS "使用百分比",ROUND(df.maxbytes / 1024 / 1024, 2) AS "最大可扩展大小_MB",df.autoextensible AS "是否自动扩展",df.status AS "文件状态"
FROM dba_data_files df
LEFT JOIN (SELECT file_id, SUM(bytes) AS free_spaceFROM dba_free_spaceGROUP BY file_id
) fs ON df.file_id = fs.file_id
ORDER BY df.tablespace_name, df.file_id;
两个标准的表空间满了 最大限制 32G。 只剩临时表空间了,最大32G 无法再扩容,所以扩容语句报错。 我给表空间增加一个文件 EAS_STANDARD002和 EAS_STANDARD003 各最大32G 。 EAS_STANDARD001是之前 同事加的也满了 达到最大32G 了