oltp 数据库性能(OLTP 基准测试)
(使用此测试功能时, 需要在 sysbenc 编译是指定 MySQL 相关参数选项)
oltp 是针对数据库的基准测试, 例如每次对数据库进行优化后执行基准测试来测试不同的配置的 tps
- sysbench --test=oltp help
- oltp options:
--oltp-test-mode=STRING 执行模式 {simple,complex(advanced transactional),nontrx(non-transactional),sp} 默认是 complex
--oltp-reconnect-mode=STRING 重新连接模式{session(不使用重新连接每个线程断开只在测试结束),transaction(在每次事务结束后重新连接),
query(在每个 SQL 语句执行完重新连接),random(对于每个事务随机选择以上重新连接模式)}默认是 session
--oltp-sp-name=STRING 存储过程的名称默认为空
--oltp-read-only=[on|off] 只读模式 Update,delete,insert 语句不可执行默认是 off
--oltp-skip-trx=[on|off] 省略 begin/commit 语句默认是 off
--oltp-range-size=N 查询范围默认是 100
- --oltp-point-selects=N number of point selects [10]
- --oltp-simple-ranges=N number of simple ranges [1]
- --oltp-sum-ranges=N number of sum ranges [1]
- --oltp-order-ranges=N number of ordered ranges [1]
- --oltp-distinct-ranges=N number of distinct ranges [1]
- --oltp-index-updates=N number of index update [1]
- --oltp-non-index-updates=N number of non-index updates [1]
--oltp-nontrx-mode=STRING 查询类型对于非事务执行模式{select, update_key, update_nokey, insert, delete} [select]
--oltp-auto-inc=[on|off] AUTO_INCREMENT 是否开启默认是 on
--oltp-connect-delay=N 在多少微秒后连接数据库默认是 10000
--oltp-user-delay-min=N 每个请求最短等待时间单位是 ms 默认是 0
--oltp-user-delay-max=N 每个请求最长等待时间单位是 ms 默认是 0
--oltp-table-name=STRING 测试时使用到的表名默认是 sbtest
--oltp-table-size=N 测试表的记录数默认是 10000
--oltp-dist-type=STRING 分布的随机数 {uniform(均匀分布),Gaussian(高斯分布),special(空间分布)} 默认是 special
--oltp-dist-iter=N 产生数的迭代次数默认是 12
--oltp-dist-pct=N 值的百分比被视为 special (for special distribution)默认是 1
--oltp-dist-res=N special 的百分比值默认是 75
General database options:
--db-driver=STRING 指定数据库驱动程序(help to get list of available drivers)
--db-ps-mode=STRING 编制报表使用模式{auto, disable} [auto]
示例:
需要先创建好测试数据库 sbtest
事务测试, 测试 12 个线程执行 1 万条请求, 10 个表, 每个表大小 100W
来源: http://www.bubuko.com/infodetail-2524589.html