PG数据库提供了一款轻量级的压力测试工具叫pgbench,其实就是一个编译好后的扩展性的可执行文件。介绍如下。
环境:
CentOS 5.7(final)
PG:9.1.2
Vmware 8.0
数据库参数: max_connection=100 ,其他略,默认
1.安装
进入源码安装包,编译,安装
安装完毕以后可以在bin文件夹下看到新生成的pgbench文件
2.参数介绍
3.初始化测试数据
说明:
a.这里使用的是默认的参数值,带-s 参数时可指定测试数据的数据量,-f可以指定测试的脚本,这里用的是默认脚本
b.不要在生产的库上做,新建一个测试库,当生产上有同名的测试表时将被重置
4.测试过程
4.1 1个session
4.2 30个session
4.3 50个session
4.4 100个session
超过100个会报错,因为数据库当前设置最大session是100
5.说明
我们主要关心的是最后的输出报告中的TPS值,里面有两个,一个是包含网络开销(including),另一个是不包含网络开销的(excluding),这个值是反映的每秒处理的事务数,反过来也可以查出每个事务数所消耗的平均时间,一般认为能将硬件用到极致,速度越快越好。