DB2 数据库的备份与还原

鉴于网上对DB2数据库的备份、还原资料较少,故将自己整理的内容记录一下。

常见的备份方式有三种,

第一种:数据库整体备份,通过时间戳还原数据库;

第二种:通过将数据库文件导出为 .ixf 文件,命令行还原方式;

第三种:通过其他中间件备份,如CSV表格等等。

这里仅对前两种备份的方式进行说明。

Part One -》

     通过cmd命令进入db2cmd,

     备份命令: db2 backup database to E:/

     还原命令: db2 restore db   from E:/   taken  at 20190505181334 replace existing

     (或通过datastudio进行备份、复原亦可)

 

Part Two -》

  1> 导出表结构

    db2look -d -u -e -o  E:\FILE_TO_EXPORT.sql

   单模式导出语句   db2look -d -u   -e -z -o  E:\FILE_TO_EXPORT.sql

   具体参数说明:  https://blog.csdn.net/qiuyoungster/article/details/48549817

  2> 导出表数据

    通过数据库连接工具运行如下命令,这里以备份COMMON 模式为例。

   select 'db2 export to '|| 'E:\data\COMMON\' || tabname ||'.ixf of ixf  select * from '||'COMMON.'||tabname  from syscat.tables where TABSCHEMA='COMMON'

    将运行的结果写入批处理文件中。

    export.bat

db2 connect to  user administrator using  


db2 export to E:\data\COMMON\T_BAS_ATTACH.ixf of ixf select * from COMMON.T_BAS_ATTACH
db2 export to E:\data\COMMON\T_BAS_COMPANY.ixf of ixf select * from COMMON.T_BAS_COMPANY

  另外如果密码中含有特殊字符,如","等,需要将密码转义, \" xx,.xx \"。

  在需要备份的数据库db2cmd中运行该批处理文件,即可将数据备份至文件目录下。

 3> 导入表结构

      db2 -tvf E:\FILE_TO_EXPORT.sql

      单模式还原  db2 -z   -tvf E:\FILE_TO_EXPORT.sql

 4> 导入表数据

 通过数据库连接工具运行如下命令,这里以备份COMMON 模式为例。

select 'db2 load  from '|| 'D:\data\COMMON\' || tabname ||'.ixf of ixf modified by identityoverride  replace into ' ||'COMMON.' || tabname   from syscat.tables where TABSCHEMA='COMMON'

将运行的结果写入批处理文件中。

import.bat

db2 connect to  user administrator using  


db2 load from E:\data\COMMON\T_BAS_ATTACH.ixf of ixf modified by identityoverride replace into COMMON.T_BAS_ATTACH
db2 load from E:\data\COMMON\T_BAS_COMPANY.ixf of ixf modified by identityoverride replace into COMMON.T_BAS_COMPANY

在需要备份的数据库db2cmd中运行该批处理文件,即可将数据还原。

5> 数据表有时会出现暂挂的状态。

不允许对表 "" 执行操作,原因码为 "1"。. SQLCODE=-668, SQLSTATE=57016, 

// 查看表是否暂挂
db2 load query TABLE 

db2 set integrity for  check immediate unchecked

ps: 此外,如果需要将备份的数据导入到别名的数据库中,命令如下

db2 RESTORE DATABASE   from E:\   taken  at 20190505181334 INTO   

 

 

你可能感兴趣的:(工具,SQL)