免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: fireer
打印 上一主题 下一主题

请问DB2如何删掉表,并立马释放磁盘空间 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-09-22 20:40 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

原帖由 "flash39" 发表:
如果是有条件的删除,如何最快,并且记录日志最少。

我有一个4000万条交易记录的表,将近两个月的数据了,我现在要把一个月前的
数据删除,试了两种方法,都不是太好
方法一,delete from mytable where jyrq&l..........

第一,你要带条件删除的话,就是用delete,上面说得alter table ....和load from都是清空整表
第二,要是数据量太大,不想记录日志的话,一是可以用db2 +c执行你的sql脚本.二是在删除语句执行前,执行"alter table xxx activate not logged initially"

论坛徽章:
0
12 [报告]
发表于 2004-09-22 22:00 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

删除时 表上是否还有别的进程并发?
-911可能意味着由于锁过多而导致了锁升级 因此你可以在删除前LOCK 整个TABLE (如果是独享的话) 或着每隔n条纪录 或一段时间自动COMMIT一下 以释放锁、日志空间 同事按楼上的说法 把日志关掉

论坛徽章:
0
13 [报告]
发表于 2004-09-23 08:19 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

我在删除的时候没有其他进程占用该表,估计是用游标删除的时候锁增长太多,没有来的及释放,我可以增加一些COMMIT试试

关掉日志在建表的时候就应该指定not logged initially属性,当初建表时
没有指定该属性,如果要打开,是不是只有drop掉,然后重建,(我的是db2 v7.2)

论坛徽章:
0
14 [报告]
发表于 2004-09-23 10:54 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

batch 操作最好不要只commit一次 这样不管是否有并发 都会对性能产生影响

论坛徽章:
0
15 [报告]
发表于 2004-09-23 16:34 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

i think u can try to export whatever u want then replace into that table.
刘星宇 该用户已被删除
16 [报告]
发表于 2004-09-28 16:14 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
17 [报告]
发表于 2004-09-29 12:45 |只看该作者

请问DB2如何删掉表,并立马释放磁盘空间

yes,
whatever your platform is .you can use a blank  file to do it.
Reminder: if  your table is created on a separate Tablespace , you are suggested to drop the tablespace also.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP