Linux/AIX环境下DB2数据库数据迁移(DB2的数据备份与恢复)理念篇。

AIX环境下的DB2数据迁移计划

说明:同平台Linux/AIX环境下DB2数据库数据迁移只需要做备份恢复,保存完整的备份文件,通过数据库恢复文件的过程,重新构造新的数据库,达到数据迁移的目的。

 

DB2数据库备份按照可按以下方式划分

1按照数据库备份对数据库的使用影响可划分为联机备份和脱机备份。联机备份是在应用连接到数据库时和事务正在处理时进行备份;脱机备份是在没有任何应用连接到数据库时进行备份(此条作为参考)。

2按照数据库的数据备份范围可划为完全备份和增量备份。DB2数据库恢复是指数据库恢复到事务一致状态或者新建数据库(数据迁移),需要在没有任何应用连接到数据库时进行恢复。

 

实现:

  1. DB2数据库备份命令:DB2数据库使用命令BACKUP来备份。BACKUP命令需要SYSADMSYSCTRLSYSMAINT的权限。其命令语法为:

BACKUP DATABASE TESTDB测试数据库名称) TO绝对路径

或者

BACKUP DATABASE TABLESPACE表空间名ONLINE TO 绝对路径

在AIX中可以将数据存放在磁带机设备上也可将数据备份在硬盘上(对应绝对路径 例如/home/db2inst1/)。BACKUP命令在指定的绝对路径上生成一个或多个备份文件。备份文件的路径格式是这样的:

REPORT.0.db2inst1.DBPART000.20200407213240.001

其中20200407213240备份日期+备份时间 。

之后恢复数据到新数据时,数据库文件时间戳为20200403150320下面有引用讲解,可以暂时忽略这句。

 

2、DB2数据库备份实现

(1)DB2数据库脱机模式下完全备份实现在没有任何应用连接到数据库时进行备份,命令:

db2 backup db testdb to 绝对路径

(2)DB2数据库脱机模式下增量备份实现要在DB2数据库进行增量备份之前首先确认数据库参数TrackMod值为YES支持增量备份,确认完参数后必须完全离线备份数据库,然后进行增量备份,命令:

db2 backup db testdb incremental to 绝对路径

(3)DB2数据库联机模式下完全备份实现联机备份数据库可以使数据库在备份的同时仍然保持在可用状态。要让数据库支持联机备份,必须更改数据库的日志归档方式。在脱机备份模式下,数据库采用循环日志方式记录数据库日志,在联机备份模式下,数据库则采用归档日志的方式备份数据库日志,对于联机备份的数据库来说,活动日志和归档日志就很重要了,必须经常备份保存; 命令:

db2 backup db REPORT online to 绝对路径

 (4)DB2数据库联机模式下完全备份实现执行联机增量备份之前,首先确认已经进行完一次全备份,命令:

db2 backup db testdb online incremental to 绝对路径

 

*** 备份完毕之后在另一台AIX系统创建新的DB2数据库,恢复数据 ***

 

迁移:

AIX平台下DB2数据库恢复实现:

1、DB2数据库恢复使用的命令有RESTARTRESTOREROLLFORWARD命令。

2、DB2数据库备份的恢复实现:

(1)DB2数据库脱机模式下完全备份的恢复,命令:

db2 restore db testdb from 绝对路径 taken at 时间戳(时间戳对应新的数据库文件名称,例如上面讲到执行backup 命令返回的备份文件名20200407213240.001,对应后时间戳为20200403150320)

(2)DB2数据库脱机模式下增量备份的恢复,实现DB2数据库在数据库恢复之前首先还原至完全离线备份状态,命令:

db2 restore db testdb from 绝对路径 taken at 时间戳

然后再还原至增量离线备份状态的,命令:

db2 restore db testdb incremental automatic from 绝对路径 taken at 时间戳

(3)DB2数据库联机机模式下完全备份的恢复实现,命令:

db2 restore db testdb from 绝对路径 taken at 时间戳

恢复完后进行日志前滚,命令:

db2 rollforward db testdb to end of logs and complete

(4)DB2数据库联机模式下完全备份的恢复,实现DB2数据库在数据库恢复之前首先还原至完全离线备份状态,命令:

db2 restore db testdb from 绝对路径 taken at 时间戳

然后进行增量备份恢复,命令:

db2 restore db testdb incremental automatic from 绝对路径 taken at 时间戳

恢复完后进行日志前滚,命令:

db2 rollforward db testdb to end of logs and complete

 

你可能感兴趣的:(Linux/AIX环境下DB2数据库数据迁移(DB2的数据备份与恢复)理念篇。)