sysbench on M1 Mac

M1MacでSysbenchを試す*1

1. sysbenchのインストール

github.com

$ git clone https://github.com/akopytov/sysbench.git
$ cd sysbench
$ autogen.sh
$ ./configure --prefix=/Users/hironobu/tmp/sysbench.bin \
> --without-mysql --with-pgsql=/Users/hironobu/tmp/pgsql/ \
> --with-pgsql-includes=/Users/hironobu/tmp/pgsql/include/ \
> -with-pgsql-libs=/Users/hironobu/tmp/pgsql/lib/
$ make
$ make install

2. PostgreSQLサーバの準備

$ ./bin/createdb testdb

3. データの準備

古いからか記事の内容のままでは動かないが、参考になる。 MySQL, PostgreSQL ベンチマーク(sysbench, pgbench) - hayashier Tech Blogs

$ cd /Users/hironobu/tmp/sysbench.bin
$ export MACOSX_DEPLOYMENT_TARGET=12.7
$ ./bin/sysbench oltp_common \
> --db-driver=pgsql --pgsql-host=192.168.128.17 --pgsql-user=postgres --pgsql-db=postgres \
> --table_size=10 prepare

4. ベンチマーク

$ ./bin/sysbench oltp_read_write \
> --db-driver=pgsql --pgsql-host=192.168.128.17 --pgsql-user=postgres --pgsql-db=testdb \
> --table_size=10 --tables=5 --threads=10 --time=10 run

*1:HammerDBはM1 Mac上で動かない。HammerDBを自前でコンパイルするのはtcltk関連の依存関係が非常に難しく現実的でない。HammerDBはLinux版がバイナリで提供されているが、M1Mac上の仮想マシン上では動かない。