LoveUnix » DB2 & Informix » DB2 表空间问题
让LU留住您的每

一天 让LU博客留住您的每一天
2003-12-11 15:57 wanggh
在DB2 V7.x版本中,如果数据库文件原大小为22G,做过数据清理且做过reorg后为14G。<br /><br />此时,使用db2 list tablespaces show detail命令查看表空间的大小,显示如下:<br /><br /> Tablespace ID                        = 2<br /> Name                                 = USERSPACE1<br /> Type                                 = Database managed space<br /> Contents                             = Any data<br /> State                                = 0x0000<br />   Detailed explanation:<br />     Normal<br /> Total pages                          = 6455296<br /> Useable pages                        = 6455232<br /> Used pages                           = 3336096<br /> Free pages                           = 3119136<br /> High water mark (pages)              = 5684224<br /> Page size (bytes)                    = 4096<br /> Extent size (pages)                  = 32<br /> Prefetch size (pages)                = 32<br /> Number of containers                 = 2<br /><br />其中High water mark (pages)的值并没有降下来,还是约22G,与Used pages的值相差比较大,这样就会造成一个问题。<br /><br />现在想将14G的数据库备份文件(用backup命令备份的),通过重定向命令恢复到另外一台IBM RS/6000小型机上,建立了两个container,每个大小为10G,还是无法恢复进去,提示&quot; SQL2059W A device full warning was encountered on device  &quot;&lt;USERSPACE1&gt;&quot;. &quot;,即表空间不足。<br /><br />后来将每个container扩大到12G(超过做数据清理前的数据库备份文件大小,才恢复成功。<br /><br />为此事咨询过IBM的DB2工程师,也未解决问题。<br /><br />现在想与大家探讨一下如何将High water mark (pages)的值降下来?

2003-12-28 12:40 bpmf
能否试试REORG命令?<br /><br /><br />RUNSTATS -&gt;  REORGCHK -&gt;  REORG -&gt;  RUNSTATS -&gt; BIND或REBIND

2003-12-28 15:57 wanggh
正因为做了reorg及runstate后没有效果,所以才要想其它方法解决。

2003-12-29 11:46 asiachen
export出来再DROP重建呢?

2003-12-30 16:43 bpmf
表空间是跨界点的吗?<br /><br />好奇怪,有结论告诉我们

2004-3-13 22:27 开心就好
有结果了吗?

2004-3-15 12:14 GreenHand
只能重建表。

2004-3-15 16:08 jerryhang
如果reorg不行的话,那么唯一的方法就是重建表,再load数据

2004-3-16 10:21 bpmf
取db2的snapshot,查出oldest的应用,看看是否因为它hold住一些资源。

2004-3-30 17:38 wanggh
<!--QuoteBegin-jerryhang+2004-03-15 16:08:27--><div class='quotetop'>QUOTE(jerryhang @ 2004-03-15 16:08:27)</div><div class='quotemain'><!--QuoteEBegin--> 如果reorg不行的话,那么唯一的方法就是重建表,再load数据 <!--QuoteEnd--></div><!--QuoteEEnd--><br />这样当然可以!但是用重定向命令恢复数据库就是为了提高数据恢复的效率,如果重建表,再load数据那效率可就太差了!

2004-4-8 00:47 vanda_chensh
load还是很快的,和restore时间差不多.不要用import,那样太慢

2004-4-12 15:29 wanggh
<!--QuoteBegin-vanda_chensh+2004-04-08 00:47:13--><div class='quotetop'>QUOTE(vanda_chensh @ 2004-04-08 00:47:13)</div><div class='quotemain'><!--QuoteEBegin--> load还是很快的,和restore时间差不多.不要用import,那样太慢 <!--QuoteEnd--></div><!--QuoteEEnd--><br />如果是10G、20G、30G或更大的数据,则<br />db2move dbname export/load<br /><br />比db2 backup/restore命令的效率要差很多,那可不是一个数量级的

2004-4-29 15:16 mymm
<!--QuoteBegin-wanggh+2004-04-12 15:29:09--><div class='quotetop'>QUOTE(wanggh @ 2004-04-12 15:29:09)</div><div class='quotemain'><!--QuoteEBegin--> 如果是10G、20G、30G或更大的数据,则<br />db2move dbname export/load<br /><br />比db2 backup/restore命令的效率要差很多,那可不是一个数量级的 <!--QuoteEnd--></div><!--QuoteEEnd--><br />差不很多吧!<br />偶测过的!具体数字忘记了!<br />不行就单表LOAD,用nonrecoverable!

页: [1]
查看完整版本: DB2 表空间问题


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.