MySQL基准测试工具-sysbench安装测试
发表于:2024-10-04 作者:千家信息网编辑
千家信息网最后更新 2024年10月04日,环境:CentOS6.5,MySQL5.7.221.下载 sysbench下载地址2.安装tar -zxvf sysbench-1.1.0.tar.gzyum install automake lib
千家信息网最后更新 2024年10月04日MySQL基准测试工具-sysbench安装测试
环境:CentOS6.5,MySQL5.7.22
1.下载 sysbench下载地址
2.安装
tar -zxvf sysbench-1.1.0.tar.gzyum install automake libtool -y #安装依赖包cd sysbench-0.4.12.14./autogen.sh./configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib --with-mysqlexport LD_LIBRARY_PATH=/usr/local/mysql/include #这里换成机器中mysql路径下的includemakemake installsysbench --version # 检验安装是否成功
3.简介
sysbench是跨平台的基准测试工具,支持多线程,支持多种数据库,主要包括以下几种测试:
- CPU性能
- 磁盘io性能
- 调度程序性能
- 内存分配及传输速度
- POSIX线程性能
- 数据库性能(基于OLTP的基本测试)
4.sysbench语法 sysbench [options] [testname] [command] - command sysbench要执行的命令,包括prepare,run,cleanup。
- testname 指定要进行的测试
options
- --mysql-host MySQL服务器主机名
- --mysql-port MySQL服务器端口,默认为3306
- --mysql-user MySQL用户名
- --mysql-password MySQL密码
- --oltp-test-mode 执行模式,默认为complex
- --oltp-tables-size 测试表的大小
- --oltp-tables-count 测试表的数量
- --threads 客户端的并发连接
- --time 测试执行的时间
5.测试实例
- CPU测试
- --cpu-max-prime=N upper limit for primes generator [10000]
sysbench --cpu-max-prime=20000 --report-interval=10
- --cpu-max-prime=N upper limit for primes generator [10000]
- fileio测试
*4个线程,随机读写,每10s输出一次结果[root@slave1 sysbench-master]# sysbench fileio helpsysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)fileio options:--file-num=N number of files to create [128] #需要创建的文件数,默认为128--file-block-size=N block size to use in all IO operations [16384]--file-total-size=SIZE total size of files to create [2G] 创建的文件总大小--file-test-mode=STRING test mode {seqwr, seqrewr, seqrd, rndrd, rndwr, rndrw} #读写方式--file-io-mode=STRING file operations mode {sync,async,mmap} [sync] # 文件操作模式{sync(同步),async(异步),fastmmap(快速map映射),slowmmap(慢map映射)}。默认是sync--file-async-backlog=N number of asynchronous operatons to queue per thread [128] --file-extra-flags=[LIST,...] list of additional flags to use to open files {sync,dsync,direct} [] #使用额外的标志来打开文件{sync,dsync,direct} 。默认为空--file-fsync-freq=N do fsync() after this number of requests (0 - don't use fsync()) [100]--file-fsync-all[=on|off] do fsync() after each write operation [off]--file-fsync-end[=on|off] do fsync() at the end of test [on]--file-fsync-mode=STRING which method to use for synchronization {fsync, fdatasync} [fsync] #使用哪种方法进行同步{fsync, fdatasync}。默认是fsync--file-merged-requests=N merge at most this number of IO requests if possible (0 - don't merge) [0] #如果可以,合并最多的IO请求数(0-表示不合并)。默认是0--file-rw-ratio=N reads/writes ratio for combined test [1.5] #测试时的读写比例。默认是1.5
[root@slave1 sysbench-master]# sysbench --threads=4 --file-test-mode=rndwr --report-interval=10 fileio prepare #准备阶段[root@slave1 sysbench-master]# sysbench --threads=4 --time=60 --report-interval=10 --file-test-mode=rndrw fileio runsysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)Running the test with following options:Number of threads: 4Report intermediate results every 10 second(s)Initializing random number generator from current timeExtra file open flags: (none)128 files, 16MiB each2GiB total file sizeBlock size 16KiBNumber of IO requests: 0Read/Write ratio for combined random IO test: 1.50Periodic FSYNC enabled, calling fsync() each 100 requests.Calling fsync() at the end of test, Enabled.Using synchronous I/O modeDoing random r/w testInitializing worker threads...Threads started![ 10s ] reads: 3.65 MiB/s writes: 2.44 MiB/s fsyncs: 494.49/s latency (ms,95%): 30.265[ 20s ] reads: 3.00 MiB/s writes: 2.00 MiB/s fsyncs: 412.60/s latency (ms,95%): 34.954[ 30s ] reads: 3.28 MiB/s writes: 2.19 MiB/s fsyncs: 444.19/s latency (ms,95%): 35.589[ 40s ] reads: 3.19 MiB/s writes: 2.13 MiB/s fsyncs: 434.41/s latency (ms,95%): 38.247[ 50s ] reads: 3.00 MiB/s writes: 2.00 MiB/s fsyncs: 410.90/s latency (ms,95%): 37.565[ 60s ] reads: 3.09 MiB/s writes: 2.06 MiB/s fsyncs: 419.19/s latency (ms,95%): 35.589Throughput: read: IOPS=204.22 3.19 MiB/s (3.35 MB/s) write: IOPS=136.15 2.13 MiB/s (2.23 MB/s) fsync: IOPS=442.70Latency (ms): min: 0.00 avg: 5.14 max: 310.70 95th percentile: 35.59 sum: 239996.51[root@slave1 sysbench-master]# sysbench --threads=4 --time=60 --report-interval=10 --file-test-mode=rndrw fileio cleanup #清理文件sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)Removing test files...
- 内存测试
- 测试4个线程,60秒,每10秒输出一次报告信息,总内存大小100G,随机访问模式
[root@slave1 sysbench-master]# sysbench --threads=4 --time=60 --report-interval=10 --memory-total-size=100G --memory-access-mode=rnd memory runsysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)Running the test with following options:Number of threads: 4Report intermediate results every 10 second(s)Initializing random number generator from current timeRunning memory speed test with the following options: block size: 1KiB total size: 102400MiB operation: write scope: globalInitializing worker threads...Threads started![ 10s ] 671.96 MiB/sec[ 20s ] 672.65 MiB/sec[ 30s ] 667.18 MiB/sec[ 40s ] 675.73 MiB/sec[ 50s ] 676.82 MiB/secTotal operations: 41341475 (689021.00 per second)40372.53 MiB transferred (672.87 MiB/sec)Throughput: events/s (eps): 689021.0010 time elapsed: 60.0003s total number of events: 41341475Latency (ms): min: 0.00 avg: 0.01 max: 20.25 95th percentile: 0.00 sum: 218390.97Threads fairness: events (avg/stddev): 10335368.7500/59009.67 execution time (avg/stddev): 54.5977/0.14
- MySQL测试
- 压测实例,4张表,每张表10W条记录,压测120秒
sysbench --db-driver=mysql --time=120 --threads=4 --report-interval=10 --mysql-host=localhost --mysql-port=2433 --mysql-socket=/data/mysqldata/mysql.sock --mysql-user=7roaddba --mysql-password=y%6bm@3o_q1a --mysql-db=inc --tables=4 --table-size=100000 oltp_read_write prepare ##准备sysbench --db-driver=mysql --time=120 --threads=4 --report-interval=10 --mysql-host=localhost --mysql-port=3306 --mysql-socket=/data/mysqldata/mysql.sock --mysql-user=7roaddba --mysql-password=y%6bm@3o_q1a --mysql-db=inc --tables=4 --table-size=100000 oltp_read_write run ##测试sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)Running the test with following options:Number of threads: 4Report intermediate results every 10 second(s)Initializing random number generator from current timeInitializing worker threads...Threads started![ 10s ] thds: 4 tps: 111.37 qps: 2233.72 (r/w/o: 1564.69/445.88/223.14) lat (ms,95%): 101.13 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 4 tps: 197.50 qps: 3950.22 (r/w/o: 2764.42/790.80/395.00) lat (ms,95%): 44.98 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 4 tps: 211.10 qps: 4222.06 (r/w/o: 2955.87/843.99/422.20) lat (ms,95%): 44.17 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 4 tps: 213.70 qps: 4272.79 (r/w/o: 2991.39/854.00/427.40) lat (ms,95%): 43.39 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 4 tps: 211.80 qps: 4239.27 (r/w/o: 2967.15/848.41/423.71) lat (ms,95%): 43.39 err/s: 0.10 reconn/s: 0.00[ 60s ] thds: 4 tps: 223.10 qps: 4459.15 (r/w/o: 3121.36/891.59/446.19) lat (ms,95%): 41.85 err/s: 0.00 reconn/s: 0.00[ 70s ] thds: 4 tps: 190.40 qps: 3811.24 (r/w/o: 2667.73/762.71/380.80) lat (ms,95%): 45.79 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 4 tps: 183.00 qps: 3660.05 (r/w/o: 2561.97/732.09/366.00) lat (ms,95%): 43.39 err/s: 0.00 reconn/s: 0.00[ 90s ] thds: 4 tps: 211.60 qps: 4226.63 (r/w/o: 2958.32/845.11/423.20) lat (ms,95%): 44.17 err/s: 0.00 reconn/s: 0.00[ 100s ] thds: 4 tps: 213.30 qps: 4272.92 (r/w/o: 2991.64/854.58/426.69) lat (ms,95%): 39.65 err/s: 0.10 reconn/s: 0.00[ 110s ] thds: 4 tps: 212.51 qps: 4249.12 (r/w/o: 2974.88/849.22/425.01) lat (ms,95%): 41.10 err/s: 0.00 reconn/s: 0.00[ 120s ] thds: 4 tps: 183.00 qps: 3660.19 (r/w/o: 2561.80/732.40/366.00) lat (ms,95%): 51.94 err/s: 0.00 reconn/s: 0.00SQL statistics: queries performed: read: 330820 #总select数量 write: 94513 # 总update,insert,delete数量 other: 47258 ##commit,unlock tables 数量 total: 472591 transactions: 23628 (196.88 per sec.) #通常需要关注的数字(TPS) queries: 472591 (3937.94 per sec.) # ignored errors: 2 (0.02 per sec.) # 忽略的错误数 reconnects: 0 (0.00 per sec.)Throughput: events/s (eps): 196.8840 time elapsed: 120.0098s total number of events: 23628 #总的事件数Latency (ms): min: 6.03 avg: 20.31 max: 847.12 95th percentile: 44.98 sum: 479909.87Threads fairness: events (avg/stddev): 5907.0000/60.54 execution time (avg/stddev): 119.9775/0.00
测试
性能
数量
文件
线程
内存
大小
模式
实例
数据
数据库
服务器
准备
同步
支持
服务
输出
基准
工具
测试工具
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
onlinedb数据库
如何知道传真服务器位置
手机上视频加速服务器未开启
网络安全法 安全责任人
网络安全专题网站作用
移动宽带无法连接服务器的问题
连接另外一台计算机的数据库
莱芜节能软件开发多少钱
csgo进去前选服务器
数据库的两个表怎么链接在一块
软件开发的生命周期是
服务器安全狗手机管理端
终端服务器的拼音
博物院网络安全法实施方案
广州2u服务器散热器生产厂家
网络安全访问服务边缘
数据库的备份恢复
大数据库如何配置网络
可视化网络安全技术论坛
党统系统数据库安装失败
汽车防盗网络技术工程师
北京网站软件开发
常用的英文数据库包括
云服务器性能指标
工会国家网络安全周
命令提示符启动数据库无法启动
速成网络技术
软件开发用户故事
软件开发者宣传片
移动采用的4g网络技术