问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

DB2的复制迁移

发布网友 发布时间:2022-04-09 13:09

我来回答

1个回答

热心网友 时间:2022-04-09 14:38

以下方法经测试,在环境IBM x346,3.2G×2,4G,RAID 1,DB2 V8.2.4,Win2000 Adv Server,DMS表空间中,数据的load速度在60-100万条/min左右。
背景:需要更改数据库表空间,或者需要将数据库中所有表的数据迁移到一个新的数据库中。
步骤:
1.通过db2控制台(db2cc)选中源数据库中的所有表,将其导出成DDL脚本;
2.根据需要对脚本进行必要的修改,譬如更改表空间为GATHER;
3.新建数据库,新建DMS表空间:GATHER;
4.将DDL脚本在此数据库中执行;
5.编写代码查询源数据库中的所有表,自动生成export脚本;
6.编写代码查询源数据库中的所有表,自动生成import脚本;
7.连接源数据库执行export脚本;
8.连接目标数据库执行import脚本;
附录1:生成export脚本代码示例:/**
* 创建导出脚本* @param conn
* @param creator 表创建者
* @param filePath
*/
public void createExportFile(Connection conn,String creator,String filePath) throws Exception {
DBBase dbBase = new DBBase(conn);
String selectTableSql 2= select name from sysibm.systables where creator = ' + creator + ' and type='T';
try {
dbBase.executeQuery(selectTableSql2);
} catch (Exception ex) {
throw ex;
} finally {
dbBase.close();
}
DBResult result = dbBase.getSelectDBResult();
List list = new ArrayList();
while (result.next()) {
String table = result.getString(1);
list.add(table);
}
StringBuffer sb = new StringBuffer();
String enterFlag = ;
for (int i = 0; i < list.size();i++) {
String tableName = (String)list.get(i);
sb.append(db2 export to aa + String.valueOf(i+1)+ .ixf of ixf select * from + tableName + );
sb.append(enterFlag);
}
String str = sb.toString();
FileUtility.saveStringToFile(filePath, str, false);
} 附录2:生成import脚本代码示例:/**
* 创建装载脚本
* @param conn
* @param creator 表创建者
* @param filePath
*/
public void createLoadFile(Connection conn,String creator,String filePath) throws Exception {
DBBase dbBase = new DBBase(conn);
String selectTableSql = select name from sysibm.systables where creator = ' + creator + ' and type='T';
try {
dbBase.executeQuery(selectTableSql);
} catch (Exception ex) {
throw ex;
} finally {
dbBase.close();
}
DBResult result = dbBase.getSelectDBResult();
List list = new ArrayList();
while (result.next()) {
String table = result.getString(1);
list.add(table);
}
StringBuffer sb = new StringBuffer();
String enterFlag = ;
for (int i = 0; i < list.size();i++) {
String tableName = (String)list.get(i);
sb.append(db2 load from aa + String.valueOf(i+1)+ .ixf of ixf into + tableName + COPY NO without prompting );
sb.append(enterFlag);
}
String str = sb.toString();
FileUtility.saveStringToFile(filePath, str, false);
} 附录3:export脚本示例db2 connect to testdb user test password test
db2 export to aa1.ixf of ixf select * from table1
db2 export to aa2.ixf of ixf select * from table2
db2 connect reset 附录4:import脚本示例db2 connect to testdb user test password test
db2 load from aa1.ixf of ixf replace into table1 COPY NO without prompting
db2 load from aa2.ixf of ixf replace into table2 COPY NO without prompting
db2 connect reset

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
送你离开千里之外歌词完整版 枇杷怎么做才有营养? 枇杷怎么吃最有营养啊? 用护肤品脸上刺痛怎么办 洗脸脸上刺痛 肠粉有什么家常做法? 肠粉的家常做法 教你自制广东肠粉 小度voice是什么意思? 小度智能屏x10是否支持粤语_小度智能屏x10支持粤语吗 小度支持粤语吗 为什么QQ发邮件的时候 文档获取失败 正文没有显示文件内容 是什么情况??? i53570k超频问题。我把倍频调到41,动态加速最高能上到4.1GHZ,这样长期使用会不会对电脑造成影响? 我的oppo手机耗电量为什么突然变快了? 『提问』『i5-3570K + P8Z77-V 如何超频,超多少合适』 手机耗电突然变得很快,谁知道怎么回事 i5 3570k1超频4.5电压1.275v算垃圾吗 超频到底有多大性能提升?比如Intel i5 3570K, Intel酷睿i5 3570K它本身有自动超频的功能吗。还是要手动去调超频的。我是个不懂超频又喜欢 酷睿i5 3570k如何超频。 i5 3570k超4.5g电压1.3温度98能稳定运行。有没有风险? I5 3570K超频4.5G用什么散热器和电源好 i5 3570k默认频率为3.4G ,可睿频到3.8G 。那是不是默电超到3.8G睿频就能上4.2G? 酷睿i5 3570K的最大Turbo频率是多少 酷睿i5 3570k超频至少能超到多少 i5 3570k 2500k 超频性能哪个好点,超到4.5 最好用什么散热器? i53570k超频和e31231v3打吃鸡那个帧数高? i5 3570 能超频吗 怎么超频 请高手指教 多氟多股票股近个月走势 现在新洁能股票走势?新洁能下周一的走势如何?新洁能股价目前波动区间? 积成电子股票目前走势?积成电子深度分析股价?积成电子重大利好消息? 我把要上传的文件放在桌面,但在QQ邮箱上传附件时桌面显示的文件中没有,且我的文档里也是空的 在QQ邮箱里能发文件夹吗,还有为何我发送文件之前点了‘回执’,但收看人看了我也没收到什么回执啊? 为什么我的QQ邮箱的文件中转站中说明有文件,但是却没有显示文件出来??求大神解答!!! 荣耀8xmax后盖有花纹的是不是翻新机? QQ邮箱发送给我的文件夹打不开怎么办 想买个手机,纠结在华为nove 4e,荣耀8XMax,荣耀8X,到底选哪个,明白人给点意见~ 三雅的新国标电动车速度太慢,怎么能解除限速? 关于分体式泳衣和连体式泳衣 金彭电动车跑的太慢,怎么办? 电瓶车车速慢如何调快? 分体裙式泳衣在水中会浮起来吗? 电动车是不是速度越慢越省电? 分体式泳衣的英语是“Tankini”还是“Seperate”? 分体式泳衣与连体式泳衣怎么翻译 你觉得连体泳衣好还是分体的好呢? “美邦威新能量科技绒“跟羽绒服比有何不同? 美国邦威是什么药? 美国邦威生物的黑客是什么药 美国邦威这款产品好用吗? 美国邦威药片是治疗胃痛的吗