以下的文章主要向大家讲述的是在Linux操作系统下进实现DB2数据库迁移的导出步骤,我们大家都知道DB2 Universal Database™(DB2 UDB) 有一对非常有用的工具,可以帮助您实现这种跨平台的备份与恢复功能。
db2move 工具利用了 DB2 的数据移动工具(export 和 import 或load)来移动数据库表。然而,由于数据库的内容远远不止于用户表,因此您需要使用其他方法在不同的数据库之间迁移其他数据库对象,例如约束、触发器、索引、序列、表空间、缓冲池等。
这就是db2look工具出现的原因。使用这个工具,您可以在源数据库中捕获到定义这些对象使用的数据定义语言(DDL),并在目标数据库中使用这些数据定义语言重新创建这些对象。
1、环境说明:
DB2数据库迁移名字叫 sample , SCHEMA也是oatest ,用户名是 oatest
2、导出步骤:
(1) 建立新目录,如果是在 linux 下要注意目录的权限问题,目录应该可以被 db2inst1 用户写访问
- [db2inst1@devsvr2 db2inst1]$ pwd
- /home/db2inst1
- [db2inst1@devsvr2 db2inst1]$ mkdir oatest0303
- [db2inst1@devsvr2 db2inst1]$ ls
- db2inst1 db2test Desktop oatest0303 sqllib
(2)进入该目录
- [db2inst1@devsvr2 db2inst1]$ cd oatest0303/
- [db2inst1@devsvr2 oatest0303]$
(3)用数据库抽取工具 db2look 导出数据库结构
主要命令
- db2look -d sample -e -z oatest -l -o oatest.sql
- [db2inst1@devsvr2 oatest0303]$ db2look -d sample -e -z oatest -l -o oatest.sql
未指定用户标识,db2look 试图使用环境变量 USER
USER 是: DB2INST1
指定的模式为: OATEST
创建表的 DDL
联合部分的模式名被忽略
输出被发送到文件: oatest.sql
脚本中包括DB2数据库迁移建立 bufferpool 以及tablespace的 DDL 语句
(4)用 db2move 工具导出数据库数据
主要命令
- db2move sample export
- [db2inst1@devsvr2 oatest0303]$ db2move sample export
- ***** DB2MOVE *****
- Action: EXPORT
- Start time: Sun Mar 5 11:00:52 2006
- Connecting to database SAMPLE ... successful! Server: DB2 Common Server V8.2.0
- EXPORT: 0 rows from table "OATEST "."ATTACHFILE"
- EXPORT: 0 rows from table "OATEST "."BASE"
- ……
(5)打包压缩该目录 oatest0303/
主要命令:
- tar zcvf oatest0303.tar.gz oatest0303/
- [db2inst1@devsvr2 oatest0303]$ cd ..
- [db2inst1@devsvr2 db2inst1]$ tar zcvf oatest0303.tar.gz oatest0303/
- oatest0303/
- oatest0303/oatest.sql
- oatest0303/EXPORT.out
- oatest0303/db2move.lst
- oatest0303/tab1.msg
- oatest0303/tab1.ixf
- ……
以上的相关内容就是对在Linux平台下进行DB2数据库迁移导出步骤的介绍,望你能有所收获。
【编辑推荐】