大数据DB2表快速清空方法

数据库
DB2数据库快速清空一张大表有两种方法可以实现,下文就为您详细介绍这两种方法,供您参考学习,相信对您学习DB2数据库有所帮助。

在我们使用DB2数据库的过程中,有时需要将DB2表快速清空,下面就教您几种DB2表快速清空的方法,希望对您学习DB2表快速清空方面有所启迪。

在DB2数据库中,如果想快速清空一张大表(类似在 ORACLE 中使用 TRUNCATE TABLE 快速清空一张大表),有两种方法:

1. 使用 “ ALTER TABLE 表名 ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE ” 命令。
2. 使用空文件为数据文件导入并替换表中数据。

* 在 windows 平台,可以先使用 EXPORT 导出一个空文件,再使用 IMPORT 命令从空文件中导入并替换该表中数据,比如:
export to test.ixf of ixf messages log.txt select * from test where 1=2
import from test.ixf of ixf messages log1.txt replace into test
* 在 UNIX 平台,除了使用 A 方法以外,还可以使用从空(NULL)中导入并替换该表数据,比如:
import from /home/null of del replace into test

如果使用“ DELETE TABLE ”命令删除整个大表中的数据,由于这个命令采用逐条删除,并把该操作记入活动的交易日志,将会耗费大量的活动日志空间,有可能造成数据库交易日志已满错误,另外,这样删除大表数据耗费的时间也很长。对于属于 DMS 表空间的表来说,删除命令逐条扫描记录,所占的记录空间仍标记为该表所用,而不立即释放空间,需要用 REORG 命令才可以释放剩余空间。

使用以上两种DB2表快速清空方法进行快速清空一张大表,将使 DB2 交易日志只记录该条命令,并立即释放所占用的空间,而不会像删除命令一样逐条扫描记录,从而节省大量的数据库交易日志和处理时间。用 LOAD 命令加 REPLACE 参数可以达到类似 IMPORT 命令加 REPLACE 的效果,但是由于 LOAD 本身不记日志,所以对于可恢复的数据库,LOAD 完成后建议马上做一下联机备份的,相比之下,IMPORT 命令加 REPLACE 操作上比较简单一些。

 

 

【编辑推荐】

三种DB2表静默状态

DB2数据库卸载的问题诊断

教您如何将DB2数据库卸载

手动卸载DB2数据库的方法

带您了解DB2表管理语句

责任编辑:段燃 来源: 互联网
相关推荐

2010-08-31 15:51:51

DB2清除数据

2010-11-03 14:57:44

DB2备份所有表

2010-09-01 11:17:29

DB2备份

2010-11-02 14:37:58

DB2临时表定义

2010-09-01 14:00:01

DB2表空间

2010-11-03 15:49:32

DB2删除表

2010-11-03 11:36:53

访问DB2表

2011-03-16 13:02:47

DB2数据复制迁移

2010-09-01 14:07:33

DB2映射

2010-09-30 14:48:26

DB2查询

2010-11-01 11:13:57

DB2表管理

2010-11-01 12:11:43

DB2表空间

2010-08-31 17:34:46

DB2

2010-09-07 09:31:03

DB2数据库锁表

2011-05-16 14:52:19

DB2 9 Viper

2009-04-01 14:07:44

表空间备份恢复

2010-09-30 10:04:06

DB2创建表空间

2010-11-01 16:54:09

DB2表空间

2010-08-02 14:34:53

DB2数据移动

2010-11-02 13:40:34

DB2函数调用
点赞
收藏

51CTO技术栈公众号