熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> DB2 >> 正文

IBM DB2 的數據復制、遷移方法[1]

2013-11-15 14:31:40  來源: DB2 

    以下方法經測試在環境IBM xGRAID DB VWin Adv ServerDMS表空間中數據的load速度在萬條/min左右

    背景需要更改數據庫表空間或者需要將數據庫中所有表的數據遷移到一個新的數據庫中

    步驟

     通過db控制台(dbcc)選中源數據庫中的所有表將其導出成DDL腳本;

     根據需要對腳本進行必要的修改譬如更改表空間為GATHER;

     新建數據庫新建DMS表空間:GATHER;

     將DDL腳本在此數據庫中執行;

     編寫代碼查詢源數據庫中的所有表自動生成export腳本;

     編寫代碼查詢源數據庫中的所有表自動生成import腳本;

     連接源數據庫執行export腳本;

     連接目標數據庫執行import腳本;

    附錄:生成export腳本代碼示例:/** 
    * 創建導出腳本

    * @param conn

    * @param creator 表創建者

    * @param filePath

    */

    public void createExportFile(Connection connString creatorString filePath) throws Exception {

    DBBase dbBase = new DBBase(conn);

    String selectTableSql = select name from sysibmsystables where creator = + creator + and type=T;

    try {

    dbBaseexecuteQuery(selectTableSql);

    } catch (Exception ex) {

    throw ex;

    } finally {

    dbBaseclose();

    }

    DBResult result = dbBasegetSelectDBResult();

    List list = new ArrayList();

    while (resultnext()) {

    String table = resultgetString();

    listadd(table);

    }

    StringBuffer sb = new StringBuffer();

    String enterFlag = \r\n;

    for (int i = ; i < listsize();i++) {

    String tableName = (String)listget(i);

    sbappend(db \export to aa + StringvalueOf(i+)+ ixf of ixf select * from + tableName + \);

[]  []  


From:http://tw.wingwit.com/Article/program/DB2/201311/21944.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.