文档章节

Oracle计算datafile可以resize收缩的空间

李狗蛋丶
 李狗蛋丶
发布于 2016/11/03 10:10
字数 314
阅读 218
收藏 0

有时数据库服务器磁盘空间在不知不觉中已经不够用了,当数据库无法使用报错时,需要紧急恢复,再进行转移或磁盘扩容,这时可以临时释放一定磁盘空间,保障数据库正常运行

计算datafile可以resize收缩的空间.
col name for a40
col resizecmd for a80

select a.file#,a.name,a.bytes/1024/1024 CurrentMB,
       ceil(HWM * a.block_size)/1024/1024 ResizeTo,
       (a.bytes - HWM * a.block_size)/1024/1024 ReleaseMB,
       'alter database datafile '''||a.name||''' resize '||
       ceil(HWM * a.block_size/1024/1024) || 'M;' ResizeCMD
from v$datafile a,
     (select file_id,max(block_id+blocks-1) HWM
       from dba_extents
       group by file_id) b
where a.file# = b.file_id(+)
and (a.bytes - HWM *block_size)>0
order by 5

如果只是想对某个表个间的datafile resize,可采用:
select a.file#,a.name,a.bytes/1024/1024 CurrentMB,
       ceil(HWM * a.block_size)/1024/1024 ResizeTo,
       (a.bytes - HWM * a.block_size)/1024/1024 ReleaseMB,
       'alter database datafile '''||a.name||''' resize '||
       ceil(HWM * a.block_size/1024/1024) || 'M;' ResizeCMD
from v$datafile a,
     (select file_id,max(block_id+blocks-1) HWM
       from dba_extents where file_id in 
              (select b.file#  From v$tablespace a ,v$datafile b
                where a.ts#=b.ts# and a.name='MP2000')
       group by file_id) b
where a.file# = b.file_id(+)
and (a.bytes - HWM *block_size)>0
order by 5


计划tempfile可以resize的空间.on apply that have only one tempfile

select 'alter database tempfile '''||a.name ||''' reize '||b.siz||'M;' from v$tempfile a,
     (select tmsize.maxblk*bk.value/1024/1024 siz from
         (select nvl(max(segblk#),128) maxblk  from v$sort_usage) tmsize,
         (select value From v$parameter where name = 'db_block_size') bk) b

© 著作权归作者所有

李狗蛋丶
粉丝 1
博文 28
码字总数 20793
作品 0
广州
数据库管理员
私信 提问
收缩表空间数据文件大小的两个案例

收缩表空间两个案例:使用users表空间测试。undo表空间也可以这样操作,系统表空间未测试。 一、空闲空间可以正常收回。 1.查出表空间总大小及空闲空间大小 BYS@ bys001>select df.tablespa...

长平狐
2013/09/17
928
0
Oracle调整表空间大小——ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据

Oracle数据文件在有数据的情况下能自动扩展,却不能自动收缩,造成存储空间的浪费。 如果直接修改数据文件的大小,可能会遇到如下错误:ORA-03297: 文件包含在请求的 RESIZE 值以外使用的数据...

TreasureWe
2016/02/17
209
0
收缩Oracle表空间物理文件

在Oracle中,经常有这样的情况,由于误操作,使某个表空间过大。delete 方法不会清除高水位线,用了truncate之后,虽然高水位线已经清除,但是扩充的表空间并没有缩小,所以应该用下面的方法...

1321385590
2018/06/26
0
0
Oracle Database 11G R2 表空间管理

SQL> alter database datafile '/u01/app/oracle/oradata/king/sysaux01.dbf' resize 2048M; Database altered. SQL> alter database datafile '/u01/app/oracle/oradata/king/system01.dbf'......

yongqiang_guo
2018/06/20
0
0
19_Oracle_Admin_调整表空间的大小

Oracle数据库的存储设置可以分为三级:在全局范围内设置;在表空间层面设置;在segment层面设置。 随着数据的增长,有的表空间可能已经快用完了;有的表空间则可能长期闲置,这就需要对表空间...

wuyeyoulanjian
2014/10/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

PCB设计-Allegro软件入门系列-allegro环境变量和快捷键

Allegro作为一款高速PCB设计的EDA软件,有完善的约束规则设计和信号完整性电源完整性仿真等各种专业工具深受电子行业从业者喜爱。 对于该软件来说,电子从业者接触最多的就是Allegro的画板功...

demyar
26分钟前
4
0
腾讯云存储

1、进入腾讯云平台,创建 2、进入配置查看域名 3、查看KEY参数 4、将2、3中的参数录入到cms后台 然后点测试按钮查看情况

迅睿CMS-PHP开源CMS程序
27分钟前
4
0
ES 6.x 版本 待验证的CURL命令查询操作

1. 查询数据 curl -H "Content-Type: application/json" -XGET http://elastic:123456@127.0.0.1:9200/alias1/_search -d '{"query": {"match_all": {}}}' 2. 添加数据 如果有不指定ID可以自......

coord
35分钟前
4
0
如何写好论文摘要:研究人员不得不知的小秘诀

我们为何要写摘要? 它的目的为何? 简而言之,摘要的目的就是简单的讨论这篇文章让读者更容易的了解这篇文。 它能在读者与作者之间搭起一条桥梁。当您搜索信息时,您无法一下阅读整篇文章,...

论文辅导员
38分钟前
4
0
移动端、PC端(前后台)、小程序常用的UI框架

移动端、PC端(前后台)、小程序常用的UI框架 1.移动端UI库 ①.Vant UI 官方地址:https://youzan.github.io/vant/#/zh-CN/intro github地址:https://github.com/youzan/vant 优点:用来做移...

jason_kiss
38分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部