RISC-V公測平臺發(fā)布 · 使用YCSB測試SG2042上的MySQL性能
實驗介紹:
YCSB(全稱為Yahoo! Cloud Serving Benchmark),該性能測試工具由Java語言編寫(在之前的MC文章中也提到過這個,如果沒看過的讀者可以去看看之前MC那一期),主要用于云端或者服務器端的數(shù)據(jù)庫性能測試工具,其內(nèi)部涵蓋了常見的NoSQL數(shù)據(jù)庫產(chǎn)品,如Cassandra、MongoDB、HBase、Redis等等。
MySQL數(shù)據(jù)庫服務是一個完全托管的數(shù)據(jù)庫服務,可使用世界上最受歡迎的開源數(shù)據(jù)庫來部署云原生應用程序。它是百分百由MySQL原廠開發(fā),管理和提供支持。
當然,本次實驗所用到的平臺還是衡山-2(HS-2)RISC-V通用主板,該主板是一款專為開發(fā)者設(shè)計的標準mATX主板,該主板最高支持128GB內(nèi)存,通過類似PC的豐富的接口和較強的兼容性,賦予開發(fā)者桌面級的RISC-V開發(fā)體驗。
HS-2主板搭載了一顆國產(chǎn)的服務器級RISC-V 64核處理器(SG2042)。SG2042是目前已量產(chǎn)的性能最高的RISC-V處理器,主要針對高性能計算領(lǐng)域需求設(shè)計,適用于科學計算、工程計算、AI計算、融合計算等大算力應用場景。
實驗材料:
MySQL/MySQL源代碼
一臺SG2042服務器(HS-2)
TPCC源代碼
YCSB源代碼
JDK(本教程使用系統(tǒng)自帶的JDK 11)
實驗過程:
安裝MySQL:
方式一:直接通過apt安裝
方式二:編譯安裝(此路不通)
下載源碼
wget
https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.34.tar.gz
如果wget太慢,可以先提前下載到電腦上,然后再傳到服務器上。
解壓并進入
由于MySQL需要boost,而且直接下載boost比較慢,因此我們選擇手動下載boost
https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.tar.gz
解壓
回到mysql的build文件夾下:
運行cmake
編譯并安裝
結(jié)果提示SHM_Buffer.hpp上的代碼報錯,后來發(fā)現(xiàn)當時不支持RISC-V平臺編譯,因此在此建議還是通過包管理器安裝mysql。
注意,如果是之前已經(jīng)卸載并重裝過mysql,如果出現(xiàn)sock無法訪問,請參考:
https://stackoverflow.com/questions/70813122/getting-error-mysql-service-failed-because-the-control-process-exited-with-erro
如果提示mysql.cnf出錯,只要執(zhí)行以下命令即可修復。
初始化設(shè)置:

發(fā)現(xiàn)沒有權(quán)限
進入mysql
執(zhí)行以下命令:
然后退出mysql shell
接下來我們運行YCSB測試
獲取YCSB
https://hub.yzuu.cf/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz
或
https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz
如果wget下載太慢的話可以先在電腦上使用多線程下載工具下載到電腦上,然后上傳到服務器上
傳到服務器上后解壓:
進入YCSB文件夾
由于YCSB使用的Java語言編寫,因此我們還需要JDK。不過系統(tǒng)以已經(jīng)提前提供了JDK11,因此無需另外安裝JDK。
登錄數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)庫和表:

編輯db.properties
db.properties內(nèi)容如下:
然后下載所需要的數(shù)據(jù)庫驅(qū)動
wget
https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-j-8.0.33.tar.gz
解壓并將驅(qū)動安裝到指定文件夾下: