软件开发Db2跨平台迁移

db2 windows2008 跨平台迁移 SUSE linux?

环境:

  1. windows_2008 DB2 V9.7
  2. linux SUSE_11_SP1 DB2 V9.7

windows_2008 具体操作如下:
导出库结构:db2look -d db -e -a -o db2look_db.sql 生成以下文件

db2look_db.sql
将db2look_db.sql文件内的db2admin 修改成 db2inst1
利用notepad++ 将文件编码修改成utf-8无BOM编码格式
winscp上传到linux服务器
如果数据库有索引、视图、触发器、存储过程、字典用此命令会一并导出嘛?

导出库数据:db2move db export 生成以下文件

tab*.IXF、tab1a.001.lob、tab*.msg、tab58a.001.lob、db2move、EXPORT.out
winscp db2move,文本传输方式 上传linux服务器
winscp  *.IXF、*.msg、*.001.lob、EXPORT.out,二进制(bin)传输方式 上传linux服务器

linux服务器操作
使用 db2inst1用户
导入库文件:

db2 CREATE DB HBLF USING CODESET UTF-8 TERRITORY CN
db2 connect to HBLF
db2 -tvf db2look_db.sql
无报错

导入数据:

db2move HBLF import
总共有7张表报错。
出现错误都是这2个错误如下图
![db2move.png](/club/attachments/month_1802/1802061924e7c14deab579151b.png)
打开tab11.msg查看
![db2move_error.png](/club/attachments/month_1802/18020619230dc8eae7737fff43.png)
![db2move_2.png](/club/attachments/month_1802/18020619276ce5d7e6e740712d.png)

查看数据:发现报错7张表,数据缺少或没有

参与11

2同行回答

libai21libai21课题专家组软件架构设计师海通证券
导入数据:db2move HBLF import无报错import导入已经成功了,为啥还做一遍load呢?写个脚本,把每张表的数据条数统计一下,然后比较一下。如果表中包含blob,clob等lob字段的,需要手工导出并导入。另外要注意sequence和自增长列,是否需要根据原数据库的值重置,10.1在导出脚本中包含重置...显示全部

导入数据:
db2move HBLF import
无报错

import导入已经成功了,为啥还做一遍load呢?
写个脚本,把每张表的数据条数统计一下,然后比较一下。

如果表中包含blob,clob等lob字段的,需要手工导出并导入。

另外要注意sequence和自增长列,是否需要根据原数据库的值重置,10.1在导出脚本中包含重置的命令,9.7我不知道是否包含,你可以检查一下

收起
证券 · 2018-02-05
wade666wade666数据库管理员Cloud
看你的tab119.msg显示全部

看你的tab119.msg

收起
软件开发 · 2018-02-05
浏览1703

提问者

chinazzb
系统运维工程师null
擅长领域: 服务器数据库信创

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2018-02-05
  • 关注会员:3 人
  • 问题浏览:2383
  • 最近回答:2018-02-05
  • X社区推广