返回顶部

欢迎来到菜鸟大明儿哥的博客

我们一起交流学习,不断提升自我

ORACLE缩小表空间的数据文件

如果我们遇到需要缩小表空间内的数据文件的情况,可以参考以下方法

 

一、查看数据文件能缩小的最小值
SELECT a.tablespace_name,
file_name,
c.VALUE / 1024 "Blk. size(Kb)",
CEIL ((NVL (hwm, 1) * c.VALUE) / 1024 / 1024) "smallest(Mb) - HWM",
CEIL (blocks * c.VALUE / 1024 / 1024) "currsize(Mb)",
CEIL (blocks * c.VALUE / 1024 / 1024) - CEIL ((NVL (hwm, 1) * c.VALUE) / 1024 / 1024) "savings(Mb)"
FROM dba_data_files a,
(SELECT file_id, MAX (block_id + blocks - 1) hwm
FROM dba_extents
GROUP BY file_id) b,
(SELECT VALUE
FROM v$parameter
WHERE NAME = 'db_block_size') c
WHERE a.file_id = b.file_id(+)
and a.status !='INVALID';

 

 

 

 

二、通过如下方式修改对应表空间数据文件大小
alter database   datafile '+DATA/test/datafile/users02.dbf'  resize 500M;

 

posted @ 2020-04-24 15:31  菜鸟大明儿哥  阅读(4374)  评论(1编辑  收藏  举报