benchmarksql 5.0測試達夢數據庫

參考鏈接:https://blog.csdn.net/fuqiangnxn/article/details/98758707

https://www.jianshu.com/p/622545cb1341

 

要求:安裝jdk7及以上版本

安裝apache-ant(在官網上下載apache-ant-xxx.bin.zip,解壓,然後將bin目錄添加進環境變量PATH中)

 

1.在官網上下載benchmarksql 5.0

2.解壓,修改源碼,使其支持達夢數據庫

修改benchmarksql-5.0/src/client下的jTPCC.java,增加dm相關部分

        if (iDB.equals("firebird"))
            dbType = DB_FIREBIRD;
        else if (iDB.equals("oracle"))
            dbType = DB_ORACLE;
        else if (iDB.equals("postgres"))
            dbType = DB_POSTGRES;
        else if (iDB.equals("dm"))
            dbType = DB_UNKNOWN;
        else
        {
            log.error("unknown database type '" + iDB + "'");
            return;
        }

3. 創建數據庫實例,並在其中創建BENCHMARK用戶,授予DBA權限

4. 使用ant編譯源碼。直接進加壓後的benchmarksql目錄下,執行ant即可

5. 在run目錄下根據其它數據庫的props文件創建達夢的props.dm

//前面一部分修改如下,後面的暫時沒改
db=dm
driver=dm.jdbc.driver.DmDriver
conn=jdbc:dm://localhost:5236
user=BENCHMARK
password=BENCHMARK

6. 修改benchmarksql-5.0/run下的funcs.sh,添加dm數據庫類型

在benchmarksql-5.0/lib目錄下創建一個dm目錄,將對應的jdbc驅動拷貝至該目錄下,然後修改funcs.sh文件

function setCP()
{
    case "$(getProp db)" in
        firebird)
            cp="../lib/firebird/*:../lib/*"
            ;;
        oracle)
            cp="../lib/oracle/*"
            if [ ! -z "${ORACLE_HOME}" -a -d ${ORACLE_HOME}/lib ] ; then
                cp="${cp}:${ORACLE_HOME}/lib/*"
            fi
            cp="${cp}:../lib/*"
            ;;
        postgres)
            cp="../lib/postgres/*:../lib/*"
            ;;
        dm)
            cp="../lib/dm/*:../lib/*"
            ;;
    esac
    myCP=".:${cp}:../dist/*"
export myCP

case "$(getProp db)" in
    firebird|oracle|postgres|dm)
        ;;
    "") echo "ERROR: missing db= config option in ${PROPS}" >&2
        exit 1
        ;;
    *)  echo "ERROR: unsupported database type 'db=$(getProp db)' in ${PROPS}" >&2
        exit 1
        ;;
esac

7. 修改benchmarksql-5.0/run/runDatabaseBuild.sh,去掉AFTER_LOAD中的extraHistID

8. 構建測試環境,在benchmarksql-5.0/run目錄下執行

./runDatabaseBuild.sh props.dm

9. 開始測試TPC-C,在benchmarksql-5.0/run目錄下執行

./runBenchmark.sh props.dm

在測試之前,可以修改props.dm中的runTxnsPerTerminal=0,runMins=20

測試完成後會在benchmarksql-5.0/run目錄下生成一個my_result_+日期的文件夾

10. 生成結果報告,在benchmarksql-5.0/run目錄下執行

./generateReport.sh my_result_2020-04-02_030832

注意:執行這個命令之前需要先安裝R語言。

yum -y install R

 

這篇文章只是單純的讓benchmarksql5.0能夠在達夢數據庫上測試TPC-C,關於提升性能方面的一些配置,如修改ini參數、創建適合達夢的索引、修改建表語句以提升性能等均不涉及。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章