久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

IBM DB2 的數(shù)據(jù)復(fù)制、遷移方法

瀏覽:4日期:2023-11-10 15:52:13
以下方法經(jīng)測(cè)試,在環(huán)境IBM x346,3.2G×2,4G,RAID 1,DB2 V8.2.4,Win2000 Adv Server,DMS表空間中,數(shù)據(jù)的load速度在60-100萬(wàn)條/min左右。背景:需要更改數(shù)據(jù)庫(kù)表空間,或者需要將數(shù)據(jù)庫(kù)中所有表的數(shù)據(jù)遷移到一個(gè)新的數(shù)據(jù)庫(kù)中。步驟:1.通過(guò)db2控制臺(tái)(db2cc)選中源數(shù)據(jù)庫(kù)中的所有表,將其導(dǎo)出成DDL腳本;2.根據(jù)需要對(duì)腳本進(jìn)行必要的修改,譬如更改表空間為GATHER;3.新建數(shù)據(jù)庫(kù),新建DMS表空間:GATHER;4.將DDL腳本在此數(shù)據(jù)庫(kù)中執(zhí)行;5.編寫代碼查詢?cè)磾?shù)據(jù)庫(kù)中的所有表,自動(dòng)生成export腳本;6.編寫代碼查詢?cè)磾?shù)據(jù)庫(kù)中的所有表,自動(dòng)生成import腳本;7.連接源數(shù)據(jù)庫(kù)執(zhí)行export腳本;8.連接目標(biāo)數(shù)據(jù)庫(kù)執(zhí)行import腳本;附錄1:生成export腳本代碼示例:/*** 創(chuàng)建導(dǎo)出腳本* @param conn* @param creator 表創(chuàng)建者* @param filePath*/public void createExportFile(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 "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腳本代碼示例:/*** 創(chuàng)建裝載腳本* @param conn* @param creator 表創(chuàng)建者* @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 testdb2 "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 testdb2 "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
標(biāo)簽: DB2 數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 通道| 芦溪县| 天水市| 东明县| 峨眉山市| 九江县| 密云县| 乌鲁木齐县| 丹阳市| 沙坪坝区| 澄迈县| 阿拉善右旗| 静安区| 尉犁县| 万年县| 汕尾市| 恭城| 五常市| 新田县| 康马县| 方山县| 黎川县| 嘉鱼县| 泽普县| 石楼县| 报价| 景东| 台北县| 平塘县| 吴堡县| 开江县| 龙门县| 吉水县| 彰化县| 安康市| 肥西县| 且末县| 拜泉县| 贡觉县| 安福县| 名山县|