DB2数据迁移
概 要
☺ 数据移动格式
☺ 导出(EXPORT)工具
☺ 导入(IMPORT)工具
☺ 导入(LOAD)工具
☺ db2move 工具
☺ db2look 工具.
DB2数据迁移
数据库B数据库A
数据文件
EXPORT
IMPORT
LOAD
单表操作
DB2MOVE
多表操作
DB2LOOK
数据库A
脚本文件
客户端 B客户端 A
数据库操作
数据文件
数据库A
数据移动格式
• ASC\DEL 文本文件。
• WSF 工作表格式 主要用于LOTUS软件。
• IXF 集成交换格式。
ASC,DEL,WSF在跨平台可能会导致数据丢
失.跨平台建议使用IXF。
数据移动格式
数据库表 DEL文件:可视 IXF文件:不可视
导出工具
EXPORT
• Export用于将数据从数据表中导出几种格式
的文件中。其实,它执行了一个SQL 的
SELECT操作。
• 支持DEL,IXF,WSF,不支持ASC。
导出(EXPORT)工具
• BD2命令行,如:
C:\>db2 connect to sample
C:\>db2 export to C:\ of ixf select *
from test
导出(EXPORT)工具
控制中心:点击Export选项之后会出现一个向
导,根据向导提示操作即可一步步的完成导出操作
(Import,Load也可以通过控制中心执行)。
导入工具
• IMPORT
支持DEL,IXF,WSF,ASC。
• LOAD
支持DEL,IXF,ASC,不支持WSF。
区别:Import可以创建表和索引,支持触发器记
录日志,但速度较慢。Load导入时表必须存
在,不支持触发器,不记录日志,速度较快。
导入(IMPORT)工具
• Import用于将数据文件导入到数据表中。
• 主要方式:
导入(IMPORT)工具
例:
C:\>db2 Import from of ixf
REPLACE_CREATE into test1
例:
C:\>db2 Create table test2 like act
C:\>db2 Import from C:\ of del
INSERT into test2
导入(LOAD)工具
• Load不能创建表及索引,故不能使用Create方式。
• 主要方式:
导入(LOAD)工具
例:
C:\>db2 connect to sample
C:\>db2 Load from of del
REPLACE into test1
例:
C:\>db2 Create table test2 like act
C:\>db2 Load from C:\ of del
INSERT into test2
数据导出导入
• 设计如下两个相同结构表:
TEST1表 TEST2表
数据导出导入
数据Export导出:
数据导出导入
(1)数据Import导入: Insert
执行 db2 imoprt from c:\ insert into
test2
数据导出导入
• Import利用Insert方式
导入结果:
Test1插入到Test2表中。
Test2表
数据导出导入
(2)数据Import导入: Replace_Create
执行: db2 import from c:\ of ixf
replace_create into test2
• 执行结果:
表Test2原有数
据被删除,插入
表Test1数据。
数据导出导入
(3)数据Import导入: Replace_Create
执行 db2 import from c:\ of ixf
replace_create into test3
数据导出导入
• Import利用Replace_Create方式导入结
果:
Import工具建立了表Test3,并插入导入数
据。
• Replace_Create:
表存在,执行Replace;
表不存在,执行Create。
db2move 工具
• Export,Import和 Load每次都只对一个表
进行操作。但是您若使用它们来写一段脚
本,就可对一个数据库中的所有的表进行
操作。 db2move可以更方便地完成同样的
工作。
• db2move工具只兼容IXF格式的文件。
• db2move不可以通过控制中心来调用。
db2move 工具
• 语法格式:
db2move <dbname> <Action> <Option>
• Action: Exoprt,Import,Load,Copy
• 导出,例:C:\test>db2move sample export
1,db2move会自动连接至目标数据库实例。
2,自动生成的IXF文件会保存在当前命令行
目录(C:\test)。
db2move 工具
• 导入,例:C:\test>db2move t0 imoprt
db2look 工具
• db2look工具则可以将DDL语句、数据库统
计状态、表空间参数导出到一个脚本文件
中,这个文件可以用于不同系统的数据库。
命令为:
db2look -d <数据库名> <-参数> <脚本名>
• 参数可以输入db2look -h察看。
• 脚本文件扩展名可以是ddl,sql,xml等。
• 通过db2 -tvf <文件名>来导入数据库。
db2look 工具
•我的例子:
(1) 执行C:\>db2look -d T0 -a -e -x -o
不需要数据库连接,输出文件在C盘符
下.
(2) 建立一个新的数据库T2。
执行 C:\>db2 connect to T1
C:\>db2 -tvf
db2look 工具
• 报错! 创建对象与现有对象相同
db2look 工具
• 分析:
db2look 工具
• 改正: 在另一台机器上建立数据库T0,或删除本
机T0数据库,重新执行脚本导入命令。
• 分析:要先连接至T0数据库,然后
在当前T0数据库中建立先前T0数据库结
构。
db2look 工具
成功! 新的数据库T0中,先前从
sample倒入的test1,test2,test3等表均为
空表。
空表。表中数据通过导入导出工具传输
谢 谢
谢 谢