sysbench 报错:/usr/share/sysbench/oltp_common.lua:197: Unknown storage engine 'innodb'

运行环境:CentOS 7.5 + MariaDB 10.3.8 +sysbench 1.0.15

# rpm -qa | grep -i sysbench
sysbench-1.0.15-2.el7.x86_64

背景:
在对MyRocksDB进行benchmark测试的时候为了方便使用sysbench
采用了Percona打包好的sysbench RPM包,安装的MySQL实例默认的存储引擎为RocksDB。
在对此实例压测的时候报错:

sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2)

Initializing worker threads...

Creating table 'sbtest1'...
FATAL: mysql_drv_query() returned error 1286 (Unknown storage engine 'innodb') for query 'CREATE TABLE sbtest1(
  id INTEGER NOT NULL AUTO_INCREMENT,
  k INTEGER DEFAULT '0' NOT NULL,
  c CHAR(120) DEFAULT '' NOT NULL,
  pad CHAR(60) DEFAULT '' NOT NULL,
  PRIMARY KEY (id)
) /*! ENGINE = innodb */ '
FATAL: `sysbench.cmdline.call_command' function failed: /usr/share/sysbench/oltp_common.lua:197: SQL error, 
errno = 1286, state = '42000': Unknown storage engine 'innodb'

根据 提示信息说是不支持非InnoDB为存储引擎的表。
按照提示打开/usr/share/sysbench/oltp_common.lua,修改存储引擎为rocksDB。
看来Percona公司对InnoDB存储引擎做了特殊的定制。

 69    mysql_storage_engine =
 70 --      {"Storage engine, if MySQL is used", "innodb"},
 71       {"Storage engine, if MySQL is used", "rocksdb"},


修改之后重新使用sysbench进行压测即可。

 

你可能感兴趣的:(MariaDB)