`

计算datafile可以resize收缩的空间脚本

阅读更多
--计算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

 

分享到:
评论

相关推荐

    自动收缩表空间脚本

    用游标处理查询结果,对需要收缩表空间的表进行shrink命令,之后该脚本对表空间大小和HWM计算出可resize的空间,并进行收缩,计算方法(表空间大小-HWM)*0.8

    Oracle 表空间 收缩

    ALTER DATABASE DATAFILE '/usr/local/oracle/ordata_ext/REPORT_TS.dbf' RESIZE 120G; ALTER DATABASE DATAFILE '/usr/local/oracle/ordata_ext/REPORT_TS.dbf' AUTOEXTEND ON MAXSIZE 150G; ``` 7. **移动对象...

    ORACLE表空间的回收脚本.rar

    - `ALTER DATABASE DATAFILE '...' RESIZE ...;` 扩展数据文件大小。 - `DROP TABLE ... CASCADE CONSTRAINTS PURGE;` 删除表及其依赖关系并立即清理空间。 5. **执行脚本注意事项** - 在执行任何回收脚本之前,...

    DragResize

    "DragResize"脚本的核心在于JavaScript,这是一种在浏览器环境中运行的编程语言,它可以与HTML元素进行交互,实现动态效果。在JavaScript中,我们需要监听用户的鼠标事件,如`mousedown`(鼠标按下)、`mousemove`...

    resize

    经常, 应用程序传递到 DefWindowProc() 此消息并让默认计算是什么鼠标是顶部告诉系统负责。 RESIZE 应用允许 DefWindowProc() 来处理消息, 但然后检查以确定是否将鼠标置于某个在工作区或调整转角。 为了简化调整...

    Oracle表空间操作详解

    此时可以通过查询`V$DATAFILE`和`DBA_EXTENTS`等动态性能视图来分析数据分布,然后调整到合适大小。 - 如果需要删除表空间中的数据文件,首先需要确保文件中没有活动数据。在非归档模式下,可以使用`OFFLINE DROP`...

    易语言模块ReSize.rar

    2. 控件动态调整:在设计复杂的用户界面时,如表格或列表视图,可以利用ReSize模块的控件调整功能,让这些控件在窗口缩放时保持相对比例,避免内容溢出或显示不全。 3. 响应式布局:结合易语言的事件处理机制,...

    Oracel扩展表空间

    ADD DATAFILE 'D:/ora/datafile/users.ora' SIZE 500M AUTOEXTEND ON NEXT 50M MAXSIZE 2000M; ``` - 解释:这条命令向名为`TESTTBS`的表空间添加一个新的数据文件,初始大小为500MB,可以自动扩展,每次扩展...

    Oracle表空间操作详解.pdf

    ALTER TABLESPACE <表空间名> ADD DATAFILE '<文件路径>' SIZE <文件大小> AUTOEXTEND ON NEXT <自动增长大小> MAXSIZE <最大尺寸> [UNLIMITED]; ``` 例如: ```sql ALTER TABLESPACE sales ADD DATAFILE 'c:\2.txt'...

    Oracle表空间操作详解.docx

    可以使用 `ALTER DATABASE DATAFILE` 语句开启或关闭自动扩展: ```sql ALTER DATABASE DATAFILE 'c:\2.txt' AUTOEXTEND [ON|OFF]; ``` 7. **表空间的在线/离线操作** 表空间可以设置为在线或离线状态: - ...

    HashMap之resize()方法源码解读.docx

    HashMap之resize()方法源码解读 HashMap的resize()方法是HashMap...在resize()方法中,我们可以看到HashMap的扩容机制是如何工作的,并了解到HashMap使用了power-of-two expansion机制和threshold字段来记录扩容阈值。

    数据库巡检脚本.txt

    ALTER DATABASE DATAFILE '/oracle/oradata/anita_2008.dbf' RESIZE 4000M; ``` - **说明**:用于改变特定数据文件的大小。 - **应用场景**:当某个表空间即将用尽时,可以通过增加数据文件大小来解决。 #### ...

    图像resize程序.rar

    在OpenCV中,可以使用`cv2.resize()`函数,它接受原图像、目标尺寸(宽度和高度)作为参数,并返回一个新的缩放后的图像。在PIL中,可以使用`Image.open()`打开图像,然后用`Image.resize()`方法进行缩放。 下面是...

    DMA2D_bilinear_resize_resize_bilinear_dma_

    在嵌入式系统和图形处理领域,"DMA2D_bilinear_resize_resize_bilinear_dma_" 这个标题暗示了我们正在讨论一个与直接存储器访问(DMA)2D引擎相关的技术,特别是涉及到双线性插值缩放(bilinear resizing)的实现。...

    VB resizeWindow.txt resizeWindow.txt

    resizeWindow.txt resizeWindow.txt resizeWindow.txtresizeWindow.txtresizeWindow.txt resizeWindow.txt resizeWindow.txt resizeWindow.txt

    ORACLE修改表空间方法

    一个Oracle数据库可以包含多个表空间,每个表空间由一个或多个数据文件(Datafile)组成。表空间的大小等于其所有数据文件的总和。表空间的大小可以通过添加新的数据文件或调整现有数据文件的大小来增加。 在Oracle...

    Oracle表空间数据库文件收缩案例解析

    在Oracle数据库管理中,表空间(Tablespace)是存储数据库对象(如表、索引等)的逻辑结构,而数据库文件(Datafile)则是表空间的物理实现。当数据库文件初始化时,通常会预先分配一定的磁盘空间,但有时这可能会...

    Oracle 表空间建立方法

    ADD DATAFILE 'path/filename.xxx' SIZE xM MAXSIZE xM/UNLIMITED; ``` - `tablespace_name`: 表空间名称。 - `DATAFILE`: 新的数据文件路径和文件名。 - `MAXSIZE`: 最大数据文件大小。 ##### 调整数据文件大小 ``...

Global site tag (gtag.js) - Google Analytics