关于informix回收空间的疑问

yaoyu3000 2009-12-20 10:13:40

设计的系统中,有些表的需要做大量数据的delete操作,但是不是删除全部数据。

现在考虑到查询效率,需要做空间回收。看网上对空间回收提供了两个办法,一是drop表后再建新表,但是因为我不是全部删除数据,所以行不通。二是通过alter table的方式欺骗数据库系统来完成空间的回收,但是alter table会锁表,对操作该表的其他进程会有很大影响,好像也行不通。

所以想问问,如果我要实现我的想法,有什么其他办法没有?

谢谢!
...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaoyu3000 2009-12-27
  • 打赏
  • 举报
回复
删除操作是每日日终自动进行的备份清理操作。在ESQL-C程序中。

数据库版本好像是IDS9.4,客户只有这个的正版........

先谢谢大家!过两天结贴
大梦770 2009-12-26
  • 打赏
  • 举报
回复
Informix在这方面做的好象不是太理解!将来有可能改进!
没有reorg类似的功能!
时间长了问题会比较多!
qingqingtimes 2009-12-26
  • 打赏
  • 举报
回复
http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp
qingqingtimes 2009-12-26
  • 打赏
  • 举报
回复
如果是最新的版本11.5,可以通过repack, shunk来完成空间释放,和reorg是一样的功能,而且可以不锁表。可以在最新版本的文档中查关键词: repack,shunk,有详细解释。
head_zero 2009-12-25
  • 打赏
  • 举报
回复
你这个删除操作是在后台手动还是在前台。

1,194

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 Informix
社区管理员
  • Informix社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧