如何找出数据文件的HWM

数据

经常在resize数据文件的时候,resize的尺寸不好掌握,下面提供一个方法:

 

SQL> declare

  2  cursor c_dbfile is

  3  select tablespace_name

  4  ,file_name

  5  ,file_id

  6  ,bytes

  7  from sys.dba_data_files

  8  where status !='INVALID'

  9  order by tablespace_name,file_id;

 10  cursor c_space(v_file_id in number) is

 11  select block_id,blocks

 12  from sys.dba_free_space

 13  where file_id=v_file_id

 14  order by block_id desc;

 15  blocksize binary_integer;

 16  filesize binary_integer;

 17  extsize binary_integer;

 18  begin

 19  select value

 20  into blocksize

 21  from v$parameter

 22  where name = 'db_block_size';

 23  for c_rec1 in c_dbfile

 24  loop

 25  filesize := c_rec1.bytes;

 26  <<outer>>

 27  for c_rec2 in c_space(c_rec1.file_id)

 28  loop

 29  extsize := ((c_rec2.block_id - 1)*blocksize + c_rec2.blocks*blocksize);

 30  if extsize = filesize

 31  then

 32  filesize := (c_rec2.block_id - 1)*blocksize;

 33  else

 34  exit outer;

 35  end if;

 36  end loop outer;

 37  if filesize = c_rec1.bytes

 38  then

 39  dbms_output.put_line('Tablespace: '

 40  ||' '||c_rec1.tablespace_name||' Datafile: '||c_rec1.file_name);

 41  dbms_output.put_line('Can not be resized, no free space at end of file.')

 42  ;

 43  dbms_output.put_line('.');

 44  else

 45  if filesize < 2*blocksize

 46  then

 47  dbms_output.put_line('Tablespace: '

 48  ||' '||c_rec1.tablespace_name||' Datafile: '||c_rec1.file_name);

 49  dbms_output.put_line('Can be resized uptil: '||2*blocksize

 50  ||' Bytes, Actual size: '||c_rec1.bytes||' Bytes');

 51  dbms_output.put_line('.');

 52  else

 53  dbms_output.put_line('Tablespace: '

 54  ||' '||c_rec1.tablespace_name||' Datafile: '||c_rec1.file_name);

 55  dbms_output.put_line('Can be resized uptil: '||filesize

 56  ||' Bytes, Actual size: '||c_rec1.bytes);

 57  dbms_output.put_line('.');

 58  end if;

 59  end if;

 60  end loop;

 61  end;

 62  /

 

Tablespace:  DRSYS Datafile: /usr/oracle/data/oradata/cint208/drsys01.dbf

Can be resized uptil: 4333568 Bytes, Actual size: 5242880

.

Tablespace:  INDX Datafile: /usr/oracle/data/oradata/cint208/indx01.dbf

Can be resized uptil: 16384 Bytes, Actual size: 5242880 Bytes

.

Tablespace:  RBS Datafile: /usr/oracle/data/oradata/cint208/rbs01.dbf

Can be resized uptil: 57155584 Bytes, Actual size: 57671680

.

Tablespace:  SYSTEM Datafile: /usr/oracle/data/oradata/cint208/system01.dbf

Can be resized uptil: 280182784 Bytes, Actual size: 283115520

.

Tablespace:  TEMP Datafile: /usr/oracle/data/oradata/cint208/temp01.dbf

Can be resized uptil: 16384 Bytes, Actual size: 5242880 Bytes

.

Tablespace:  TESTSPACE Datafile: /usr/oracle/data/oradata/cint208/testspace1.dbf

Can be resized uptil: 16384 Bytes, Actual size: 5242880 Bytes

.

Tablespace:  TOOLS Datafile: /usr/oracle/data/oradata/cint208/tools01.dbf

Can be resized uptil: 16384 Bytes, Actual size: 5242880 Bytes

.

Tablespace:  USERS Datafile: /usr/oracle/data/oradata/cint208/users01.dbf

Can be resized uptil: 23076864 Bytes, Actual size: 23592960

.

 

PL/SQL procedure successfully completed.

 

SQL>

SQL>

SQL>

 

时间: 2025-01-21 14:06:22

如何找出数据文件的HWM的相关文章

使用VS新建的解决方案,包含很多项目,随着时间推移,包含文件越来越多,其中有很多文件不再使用了,有没有什么方法可以找出这些文件并删除

问题描述 使用VS新建的解决方案,包含很多项目,随着时间推移,包含文件越来越多,其中有很多文件不再使用了,有没有什么方法可以找出这些文件并删除 解决方案 解决方案二:希望对你有用解决方案三:这种东西没法判断的,自上而下的话还可以推导解决方案四:项目右键->新建项->代码分析规则集勾选Microsoft.Performance,操作设置为错误菜单->分析->为xxx配置代码分析,选刚才新建的ruleset文件菜单->分析->为xxx运行代码分析,修正所有的错误

linux-Linux中怎么用grep找出一个文件中空白行的行数字=

问题描述 Linux中怎么用grep找出一个文件中空白行的行数字= 不知道为什么这样写# grep '^&' /etc/profile | wc -l找不出结果, 请问这个应该怎么写才是真确的? 解决方案 grep -E '^$' -n /etc/profile 解决方案二: 加上正则的参数,试试下面的命令 grep -e '^$' -n /etc/profile

找出txt文件里相似单词的程序

问题描述 现在是有一个txt文件,里面都是单词(从a到z),如图所示.然后用一个Scanner输入单词.比如输入的是quick,相似的单词就是"quack,quirk",然后打印这几个相似的单词.比如输入的是test的话,相似的就是"bestfestjestlestnestpestrestteattenttexttostvestwestzest",然后打印他们.打印出来是这样的:请输入单词:quick系统找到2个相似单词quackquirkList<Strin

明略数据:用大数据分析找出数据间隐藏的关联性

ZD至顶网CIO与应用频道 12月11日 人物访谈(文/孙博): 智能穿戴设备监测健康.城市交通和天气的观测.抓捕罪犯.金融监管--伴随着大数据呈现出无孔不入的趋势,大数据分析开始成为人类进行科学决策的重要工具.从IT时代向DT时代的转变,大数据分析技术用迅速.精准的方式构建更加低成本.高效率的商业社会,并作为时下最为流行的技术之一,已经渗透到行业的方方面面,帮助企业用数据驱动业务的发展. "DT时代的到来,对客户全方位的了解可谓是全所未有的.有了数据分析技术,企业可以将服务做的更细致全面,将被

轻松找出视频文件的真实地址

现在网上的影院非常 丰富, 但是许多新片都只提供http://www.aliyun.com/zixun/aggregation/18747.html">在线观看而不允许用户下载,而由于种种原因,网速又得不到保障,看起来断断续续地,非常影响心情. 经过我的一番探索, 终于找出几种可以得到在线视频文件的真实地址的方法. 一.查看源文件法 一些网站把视频文件直接内嵌在网页式播放器中,虽然没有"点击下载"地链接,但只要你查看一下网页的源文件,其真实地址就一览无余了,具体方法,打

Linux系统找出大文件的方法

  du -s /home/* | sort -nr 也可以用find,查找大于200M的文件并显示详细信息 find . -size +100000000c -exec ls -lh {} ;

如何在Linux上找出并删除重复的文件:FSlint

如何在Linux上找出并删除重复的文件:FSlint 大家好,今天我们会学习如何在Linux PC或者服务器上找出和删除重复文件.这里有一款工具你可以工具自己的需要使用. 无论你是否正在使用Linux桌面或者服务器,有一些很好的工具能够帮你扫描系统中的重复文件并删除它们来释放空间.图形界面和命令行界面的都有.重复文件是磁盘空间不必要的浪费.毕竟,如果你的确需要在不同的位置享有同一个文件,你可以使用软链接或者硬链接,这样就可以在磁盘的一个地方存储数据了. FSlint FSlint 在不同的Lin

PostgreSQL 数据文件灾难恢复 - 解析与数据dump

标签 PostgreSQL , 数据文件 , pg_filedump , 安全 , TDE 背景 俗话说常在河边站哪有不湿鞋,作为一名战斗在一线的DBA或者开发者,可能有遇到过磁盘损坏,磁盘阵列损坏,如果有备份或者备库的话,还好. 如果没有备份,或者没有备库(通常有一些小型或者创业型的企业),那么遇到磁盘损坏或者其他原因(比如掉电文件系统损坏),导致数据库的数据文件并不完整时,如何从有限的资料中找出数据呢? 比如PostgreSQL,如果读到坏块,会报块不可读的错误,这种情况下通过设置zero_

c#wav 文件的处理-关于C#wav语音文件的处理,如何在播放一段录音文件的同时,找出人说话的中间停顿的地方

问题描述 关于C#wav语音文件的处理,如何在播放一段录音文件的同时,找出人说话的中间停顿的地方 我在网上查了很多,想用频谱的办法获取整幅较小的地方不知道这样可不可以,该如何做 解决方案 参考:http://www.2cto.com/kf/201505/398152.html 提取出wav数据,得到声强,声强小的地方视作停顿 解决方案二: 问题终于解决了,用的是取巧的办法,但是效果还是不错的,这段时间闲下来了,在发到博客吧