db2 数据库与表空间备份与恢复

一、数据库与表空间备份1、备份语法

2、详解

database-alias指定要备份的数据库的别名username/using password指定备份数据库所使用的用户和用户密码

DBPARTITIONNUM db-partition-number1 指定要备份的数据库分区的列表DBPARTITIONNUMS db-partition-number1 TO db-partition-number2指定备份数据库分区的范围ALL DBPARTITIONNUMS备份所有的数据库分区EXCEPT要排除备份的数据库分区

TABLESPACE tablespace-name指定要备份的表空间ONLINE指定对数据库进行在线的备份,默认是离线备份INCREMENTAL对数据库进行增量备份DELTA对数据库进行Delta备份

TSM使用Tivoli Storage Manager做为备份设备OPEN SESSIONS DB2与TSM或其他备份软件产品之间的IO会话数量-注意与INCLUDE LOGS参数的协同使用TO dir|dev 指定备份完成的数据文件所放置的路径或者设备

DEDUP_DEVICE如果使用数据复制的功能,此参数会优化备份文件在存储设备中的存储格式BUFFER buffer-size DB2在备份过程中所占用的内存缓存大小,以4k为单位PARALLELISM n备份过程中,可以并发备份的表空间数量

COMPRESS|ENCRYPT指定备份文件是使用压缩特征还是进行加密,两者不能同时使用

UTIL_IMPACT_PRIORITY priority指定备份操作的优先级-可设置为1-100,1优先级最低,100优先级最高,默认是50EXCLUDE LOGS指定备份过程中不备份日志文件-对离线备份没有作用INCLUDE LOGS指定备份过程中备份日志文件-只针对在线备份有效

WITHOUT PROMPTING指定在备份过程中需不需要用户提供交互输入

3、备份文件的命名

数据库别名-在调用备份实用程序时指定的,由1到8个字符组成的数据库别名备份类型-0表示完整的数据库级别备份-3表示表空间级别的备份-4表示由LOAD COPY YES命令生成的备份映像实例名-从DB2INSTANCE环境变量中提取的,由1到8个字符组成的当前实例名数据库分区号-在单一分区数据库环境中,分区号始终是DBPART000-在分区数据库环境中,它是DBPARTXXX,其中XXX是db2node.cfg文件中对数据库分区指定的编号时间戳-执行备份操作时的日期和时间的14个字符表示法,该时间戳记得格式为yyyymmddhhnnss序号-用作文件扩展名的一个3位数字

4、示例

db2 backup database testdbdb2 backup database testdb onlinedb2 backup database testdb online include logsdb2 backup database testdb online to /tmp/db1,/tmp/db2,/tmp/db3db2 “backup database testdb tablespace (syscatspace,userspace1) online to /tmp/db4″db2 backup database testdb online incremental to /tmp/db5db2 backup database testdb online incremental delta to /tmp/db6

5、其他备份补充

db2 backup database wsdb on all dbpartitionnums to /tmp/backup1db2 backup database sample use tsm open 2 sessions with 4 buffersdb2 backup database wsdb on dbpartitionnums(1,2) tablespace(userspace1) online use TSM

二、检查备份的完整性1、简述

db2ckbkp-检查备份文件的一致性以及备份文件的可用性-也可用于显示备份文件的元数据

2、示例

三、恢复历史记录文件1、恢复历史记录文件的作用

包含当数据库的所有或部分必须恢复到给定时间点时,可用来确定恢复选项的备份信息的摘要用来跟踪其他操作中与恢复相关的事件,如备份和复原操作文件位于数据库目录中,文件名是DB2RHIST.ASC及其备份DB2RHIST.BAK要查看恢复历史记录文件中的条目,可使用LIST HISTORY命令

2、更新恢复历史记录文件

备份了数据库或表空间复原了数据库或表空间前滚了数据库或表空间自动重建了数据库,并且复原了多个映像创建了表空间改变了表空间停顿表空间重命名表空间装入表删除表(启用了恢复已废弃的表,并且你正在使用可恢复日志记录)重组表调用随需应变日志归档写入新日志文件(使用可恢复日志记录时)归档日志文件(使用可恢复日志记录时)恢复数据库复原数据库或表空间操作失败

3、恢复历史记录文件的语法

4、示例

db2 list history since 19980201 for sampledb2 list history backup containing userspace1 for sampledb2 list history drop table all for db sampledb2 list history all for sampledb2_all “db2 list history since 20010601 for sample”db2 list history since 20091020163200 for database sample

5、恢复历史记录文件的内容

1、OperationA -Create table space N -Rename table spaceB -Backup O -Drop table spaceC -Loadcopy Q -QuiesceD -Drop table R -RestoreF -Rollforward T -Alter table spaceG -Reorganize U -UnloadL -Load X -Archive log2、ObjectD -DatabaseI -IndexP -Table spaceT -TableR -Partitioned table3、TypeAlter table space operation types:-C -Add container-R -RebalanceArchive log operation types:-F -Failover archive path-M -Secondary (mirrot) log path-N -Archive log commandBackup and restore operation types:-D -Delta offline-E -Delta online-F -Offline-I -Incremental offline-M -Merged-N -Online-O -Incremental online-R -Rebuild-Z -Quiesce reset

四、数据库与表空间恢复1、恢复语法

2、分区数据的还原

备份文件的信息wsdb.0.db2inst1.DBPART000.200802241234.001wsdb.0.db2inst1.DBPART001.200802241234.001wsdb.0.db2inst1.DBPART002.200802241234.001wsdb.0.db2inst1.DBPART003.200802241234.001恢复方法db2_all ‘<<+0< db2 restore database wsdb from /tmp/backup taken at 200802241234 into wsdb replace existing’db2_all ‘<<+1< db2 restore database wsdb from /tmp/backup taken at 200802241234 into wsdb replace existing’db2_all ‘<<+2< db2 restore database wsdb from /tmp/backup taken at 200802241234 into wsdb replace existing’db2_all ‘<<+3< db2 restore database wsdb from /tmp/backup taken at 200802241234 into wsdb replace existing’

3、增量备份的还原

周日 backup db mydb use tsm周一 backup db mydb online incremental delta use tsm周二 backup db mydb online incremental delta use tsm周三 backup db mydb online incremental use tsm周四 backup db mydb online incremental delta use tsm周五 backup db mydb online incremental delta use tsm周六 backup db mydb online incremental use tsm

restore db mydb incremental automatic taken at (周五)restore db mydb incremental taken at (周五)restore db mydb incremental taken at (周日)restore db mydb incremental taken at (周三)restore db mydb incremental taken at (周二)restore db mydb incremental taken at (周五)4、前滚语法

前滚恢复的示例backup db sample online to /dev3/backup include logsrestore db sample from /dev/backup logtarget /dev3/logsrollforward db sample to end of logs and stop overflow log path /dev3/logs五、示例1、不完全恢复数据库创建测试表db2 “create table mytable(id int)”插入测试数据db2 “insert into mytable values(1)”检查测试数据db2 “select * from mytable”在线备份数据库db2 backup database testdb online在测试表中插入测试数据db2 “insert into mytable values(2)”检查测试数据db2 “select * from mytable”查看备份信息db2 list history all for testdb恢复数据库db2 restore database testdb taken at 20150520093424前滚数据库db2 rollforward database testdb to end of backup and complete检查测试数据db2 “select * from mytable”#结果是表中只有1这一条数据2、完全恢复数据库在测试表中插入测试数据db2 “insert into mytable values(2)”在线备份数据库以及日志db2 backup database testdb online include logs查看备份信息db2 list history all for testdb恢复数据库db2 restore database testdb taken at 20150520094119前滚数据库db2 rollforward database testdb to end of logs and complete检查测试数据db2 “select * from mytable”#结果是表中有1,2这两条数据3、恢复表空间恢复某个表空间db2 “restore database testdb tablespace (USERSPACE1) online taken at 20150521084143″查看表空间状态db2 list tablespace前滚表空间(回滚前tablespace状态为Roll forward pending)db2 “rollforward database testdb to end of logs and complete tablespace (USERSPACE1)”查看表空间状态db2 list tablespace4、数据库的增量恢复对数据库进行在线的全备份db2 backup database testdb online include logs对数据库进行增量备份db2 backup database testdb online incremental include logs检查数据库的备份信息db2 list history all for testdb恢复数据库db2 restore database testdb incremental automatic taken at [timestamp]前滚数据库db2 rollforward database testdb to end of logs and complete 一个今天胜过两个明天

db2 数据库与表空间备份与恢复

相关文章:

你感兴趣的文章:

标签云: