ASBench一款可以同时对Oracle、PostgreSQL、MySQL做性能对比测试的数据库压测工具
目前能灵活编写SQL或测试脚本对不同的数据库进行压测对比的工具比较少,而此压测软件就是可以编写包含压测SQL的lua脚本,完成对Oracle、MySQL、PostgreSQL的压测,从而对比这些数据库在不同SQL下的性能差异。
安装和测试在gitee的软件项目的release(https://gitee.com/csudata/asbench/releases/0.1)中找到asbench的发行版本asbench.X.Y.tar.xz(其中X.Y是版本号)解压开,有目录asbenchXX,下面有一些文件:asbench_mysqlasbench_oraasbench_ora11asbench_ora19asbench_pgbench_ora.shbench_pg.shluatnsnames.ora测试Oracle如果主机上没有安装Oracle客户端程序,需要到在gitee的软件项目的release(https://gitee.com/csudata/asbench/releases/0.1)中下载:oracle-instant11.2.taroracle-instant12.2.taroracle-instant19.9.tar根据不同的oracle版本下载不同的客户端版本,下载下来后,使用rpm命令安装即可:
rpm-ivhoracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpmoracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpmoracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
注意如果我们测试Oracle11.2,需要把连接文件asbench_ora指向asbench_ora11。修改bench_ora.sh中的内容:Oracle的环境变量:exportLD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib:$LD_LIBRARY_PATHexportPATH=/usr/lib/oracle/11.2/client64/bin:$PATH测试相关的内容:--test=lua/select.lua:是指定测试项,select.lua是一个按主键随机查询的测试--oracle-db=oradb:自定Oracle的连接服务名,这里的oradb需要在tnsnames.ora中的一个名称--oracle-user=sysbench:测试使用的数据库用户名称--oracle-password=sysbench:测试使用的数据库用户的密码在tnsnames.ora中配置数据库的连接。做好上面的配置后,就可以先初始化数据:./bench_oraprepare测试:./bench_orarun可以自己建一些测试的lua文件,如从lua/select.lua拷贝成一些新的文件:my_select.lua,修改其中的SQL,然后修改bench_ora中的lua/select.lua成lua/my_select.lua,然后运行./bench_orarun就可以开始测试了。
评论