前言
生产上有部分DB2数据想要迁移到MongoDB,为确保数据的一致性故采用离线迁移的方式。DB2端导出为CSV格式,然后MongoDB端通过mongoimport方式导入。
DB2端-导出数据
DB2端导出格式为DEL,列与列之间以“,”分隔
创建测试表
[db2inst1]# db2 connect to gaoyu
[db2inst1]# db2 "create table t2(id int not null,name varchar(99),primary key(id)"
[db2inst1]# db2 "insert into t2 values(1,'name1')"
导出数据
db2 "export to t2.csv of del MODIFIED BY COLDEL, select * from t2"
然后把t2.csv传输到MongoDB服务器上。
MongoDB端-导入数据
导入数据
[mongo]# mongoimport -u gaoyu -p Gaoyu@029 -d gaoyu -c t2 --fields id,name --file=/root/t2.csv --type=csv
2022-01-31T07:07:49.301+0000 connected to: mongodb://localhost/
2022-01-31T07:07:49.317+0000 1 document(s) imported successfully. 0 document(s) failed to import.
验证数据是否成功导入
replicas:PRIMARY> db.t2.find()
{ "_id" : ObjectId("61f78ac56251ab8b3bedfb8d"), "id" : 1, "name" : "name1" }
数据导入成功。