本文共 1361 字,大约阅读时间需要 4 分钟。
1.对于一台安装mysql数据库的服务器来说比较重要的资源就是iops(I/O per second)与内存,所以在安装部署一台数据库服务器来说最好先测试一下该服务器的iops性能,这里使用sysbench测试。
2.sysbench的安装与使用下载地址 找到对应版本下载解压tar包:cd sysbench./autogen.sh./configuremake && make install3.使用某一目录生成测试文件:cd /data/testsysbench --test=fileio --file-num=4 --file-block-size=8k --file-total-size=4G --file-test-mod=rndrd --file-extra-flags=direct --max-requests=0 --time=1200 --threads=4 prepare--test=fileio ##测试服务器的io性能,还可以测试内存,cpu等--file-num=4 ##生成4个测试文件--file-block-size=8k ##文件块大小,这个值最好与mysql数据库的innodb_page_size大小一致--file-total-size=4G ##4个文件总大小--file-test-mod=rndrd ##测试随机io读性能,随机io写为rndwr,一般只用测试随机读写io,顺序io性能不测试--file-extra-flags=direct ##测试文件写入磁盘,跳过缓存,对应mysql中的参数innodb_flush_method=O_DIRECT,直接跳过先写入文件系统缓存,直接落盘。会影响mysql性能,但是可以提高数据安全性.--max-requests=0##最多请求次数,0表示不限制--time=1200 ##最大持续时间--threads=4 ##处理线程数prepare ##生成文件,对应参数还有run开始测试,cleanup清理测试文件生成对应文件后开始测试,使用run参数3.开始测试磁盘随机读性能--report-interval=3 每3秒生成一次报告信息4.在运行sysbench时,通过iostat查看磁盘信息:iostat -xm 3##每3秒刷新一次信息,xm扩展输出信息的单位为m/s比较重要的值为r/s,w/s,%util这边查看到%util为100.说明磁盘基本满载,达到性能上限.5.查看sysbench运行完成信息并计算iops值。在上面中,测试的是随机读性能,可以通过这个参数计算出对于数据库比较重要的iops值:4.67X1024/8(file-block-size)=597 ##磁盘这就是每秒随机读性能,属于比较高的值,正常SSD磁盘基本在300iops,另外在正式环境中应该测试时间设置为一天或两天测试出的值,才是比较准确的.6.查看服务器磁盘调度算法:这里直接为deadline,无需修改。如果为 noop或cfq建议改为deadline. 修改方法echo deladline >/sys/block/xvde/queue/scheduler转载地址:http://vrnyl.baihongyu.com/