Sysbenchを使用してmySQLデータベースでベンチマークを実行しようとしています。ただし、組み込みテストoltp
が見つからないと表示されます。
詳細:ローカルマシンにmySQLとsysbenchをインストールしました。また、mySQL内にデータベースdbtest
を作成しました。そして、次の指示を実行しました。
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=dbtest --mysql-user=root --mysql-password=<password> prepare
しかし、その後、このエラーメッセージが発生しました。
WARNING: the --test option is deprecated. You can pass a script
name or path on the command line without any options.
sysbench 1.0.8 (using bundled LuaJIT 2.1.0-beta2)
FATAL: Cannot find benchmark 'oltp': no such built-in test, file or module
sysbenchは、次のような他のテストで正常に機能しました
sysbench --test=cpu --cpu-max-prime=20000 run
問題は、sysbenchがoltp
という定義済みのテストを見つけられないことだと思いますが、それを理解する方法がわかりません。
読んでくれてありがとう。
出力から、最新のsysbench1.0がインストールされているように見えます。したがって、以下のようにprepareコマンドを試すことができます-
sysbench --db-driver=mysql --mysql-user=root --mysql-password=<pwd> \
--mysql-socket=<mysql.sock path> --mysql-db=foo --range_size=100 \
--table_size=10000 --tables=2 --threads=1 --events=0 --time=60 \
--Rand-type=uniform /usr/share/sysbench/oltp_read_only.lua prepare
Prepareコマンドを実行する前に、mysqlコンソールを開き、データベースfooを作成します-データベースfooを作成します。 mysqlのインストールが標準の場所にある場合、mysql.sockのパスは必要ありません。
上記のコマンドを使用してデータベースfoo内に8つのテーブルが作成されます。次のコマンドを使用して、mysqlコンソールでそれらを確認できます-データベースfoo、showtablesなどを使用します。
次に、次のようにベンチマークを実行できます-
sysbench --db-driver=mysql --mysql-user=root --mysql-password=<pwd> \
--mysql-socket=<mysql.sock path> --mysql-db=foo --range_size=100 \
--table_size=10000 --tables=2 --threads=1 --events=0 --time=60 \
--Rand-type=uniform /usr/share/sysbench/oltp_read_only.lua run
注:sysbenchの共有フォルダー内には、oltp_read_only以外にも多くのワークロードがあり、それらを試してみることができます。 githubリンクに提供されている十分なドキュメントがあります- https://github.com/akopytov/sysbench
dpkg
ツールは、インストールされたパッケージのファイルがシステムのどこに保存されているかを示すのに便利です。 sysbench1.0.14のテストスクリプトを見つけるときに使用しました。その他のオプションについては、manページを参照してください。
# dpkg --listfiles sysbench
...
/usr/share/sysbench/bulk_insert.lua
/usr/share/sysbench/select_random_ranges.lua
/usr/share/sysbench/oltp_update_non_index.lua
/usr/share/sysbench/oltp_delete.lua
/usr/share/sysbench/oltp_update_index.lua
/usr/share/sysbench/oltp_read_write.lua
/usr/share/sysbench/oltp_point_select.lua
...