在线备份和离线备份
如果我们在执行一个在线操作(备份、恢复、复原),那么其他用户也可以同时访问我们正在操纵的数据库对象。如果我们在执行一个离线操作,那么就不允许任何其他用户同时访问我们正在操纵的数据库对象。
数据库备份
数据库备份是数据库的一个完整副本。其实可以这样简单的理解:backup=copy,备份其实就是给数据库做一个特定时刻的拷贝。除了数据外,备份副本还包括表空间、容器、数据库配置、日志控制文件和恢复历史文件的信息。注意,备份不会存储数据库管理器配置文件或注册表变量。只有数据库配置文件才会得到备份。
离线备份的例子:backup database sample to /dbbak
在线备份的例子:backup database sample online to /dbbak [include logs]
默认情况下,数据库采用循环日志模式只支持离线备份。要启用在线备份,需要启用归档日志模式。
关于这两种日志类型的详细介绍请参见《db2日志类型》http://blog.csdn.net/zhaojianmi1/archive/2010/04/11/5474072.aspx
表空间备份
表空间备份例子:
backup database sample tablespace ( syscatspace, userspace ) online to /dbtbspbak
注意,不能备份临时表空间。
增量备份
要执行增量备份,必须先设置数据库参数trachmod为ON。增量备份又分为两种类型:
增量备份:
备份至上一次完整备份以来所有更改。
写法为:db2 backup database sample incremental to /dbincrementalbak
delta备份:
备份自上一次成功执行的完整备份、增量备份或者delta备份以来所做的更改。
写法为:db2 backup database sample incremental detal to /dbdetalbak。
检查备份完整性
命令:
db2ckbkp -h SAMP.0.DB2.NODE0000.CATN0000.20100412093032.001