sysbench 報錯:/usr/share/sysbench/oltp_common.lua:197: Unknown storage engine 'innodb'
阿新 • • 發佈:2019-02-12
執行環境: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進行壓測即可。