oracle与mysql本地安装对比集群rbd块安装基本性能测试

本文目的:将mysql与oracle分别安装在本地Linux磁盘上,与安装在ceph rbd块上做基础的性能对比。因图片较多。没有上传所有图片。若是有兴趣的可以与我联系。  

一、测试工具

Oracle:loadrunner11 Mysql :? sysbench

二、基本方法

在不涉及任何具体业务系统,单纯对比数据库装在本地与装在集群rbd上的基本测试数据。 Oracle12c :在本地服务器上安装后,通过loadrunner往数据库一个表中持续写1个小时的数据测试出基本的每秒事务处理数,以及每个事物的相应时间。然后将oracle安装在集群rbd上并持续写1个小时的数据,对比2者的tps(每秒事务处理数),response(事务相应时间)。 Mysql? :在本地安装后,通过sysbench往数据库表中写100W条数据,取耗时和每秒事务数。然后与安装在集群rbd上的数据做对比。

三、测试环境

本地服务器:CPU Intel(R) Xeon(R) CPU E3-1220 v3 @ 3.10GHz 内存32G 集群:2节点 Rbd客户端:CPU Intel(R) Xeon(R) CPU E3-1220 v3 @ 3.10GHz 内存32G

四、测试步骤

a、本地服务器测试

?????? 1、oracle12c

安装步骤(省略)
本地服务器挂载独立磁盘,安装oracle12c,安装选择OLTP且选择内存自动管理。Win8客户端安装oracle11g win32的客户端(安装过程省略)。
在oracle服务端配置监听文件listener.ora
[root@one ~]# cd /u01/app/oracle/product/12.1.0/db_1/network/admin/ [root@one admin]# cat listener.ora # listener.ora Network Configuration File: /u01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora # Generated by Oracle configuration tools.   SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /u01/app/oracle/product/12.1.0/db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = ORA12C) (ORACLE_HOME = /u01/app/oracle/product/12.1.0/db_1) (SID_NAME = ora12c) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.241)(PORT = 1521)) ) )
在win8客户端配置tnsnames
进入到客户端安装目录D:\app\zhang\product\11.2.0\client_1\network\admin 编辑tnsnames.ora文件 CONN241 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.241)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ora12c) ) ) 注意格式,CONN241位服务端解析到本地的服务名,ora12c为数据库实例名。Ip为oracle服务端Ip地址.
Win8客户端配置环境变量
验证客户端连接远程oracle数据库
至此win8本地客户端连接远程oracle12c服务端配置成功。接下来安装测试软件loadrunner。
安装测试工具LD
安装过程省略 loadrunner11 。下载后,请下载破解工具 严格按照操作说明导入global-100 的序列号。
配置LD并测试
1、创建测试脚本
2、创建
3、严格按照下列设置
4、开始录制脚本 输入用户名跟密码。在安装数据库后创建的表test中插入一条数据,commit,quit.完成录制后,会生成脚本。这里我们把脚本修改调整一下: 红框中为在原来基础上增加的内容,并删掉所有的等待时间行lr_think_time所有
4、保存该脚本
点击保存,我这里保存到桌面,文件名为abc。
5、运行测试
选择之前保存的脚本abc 最终改成如下: 一个用户往数据库表中写数据,持续写1个小时。完成后取值。作为基本参考。
6、开始测试
7、持续写1个小时并取值
取最终结果值 tps:14.099?? response:0.002

?????? 2、mysql

安装步骤
进官网下载安装包,解压并安装。 官网安装步骤http://dev.mysql.com/doc/refman/5.7/en/linux-installation-rpm.html
验证登入
Mysql新版增加了密码复杂度插件。必须修改密码达到条件。才能操作数据库。
安装sysbench
下载sysbench   因为mysql是默认安装的,所有直接configure.否则需要执行mysqllib库文件 Make? &&? make install
Syebench测试
1、 准备100W的测试数据
2、开始测试
 
3、清除测试数据
结果:每秒事务数:68.24? 共执行时间146秒。

b、集群fuse挂载使用

集群环境:243 244 2台节点。创建1000G的rbd,通过iscsi挂载出去。

1、oracle12c测试

本地fuse挂载集群
安装oracle12c
剩下的省略。。。。。
Oracle配置监听
 
在win8客户端配置tnsnames
进入到客户端安装目录D:\app\zhang\product\11.2.0\client_1\network\admin 编辑tnsnames.ora文件 CONN241new = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.241)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ora12c) ) ) 注意格式,CONN241位服务端解析到本地的服务名,ora12c为数据库实例名。Ip为oracle服务端Ip地址.
Win8客户端配置环境变量
配置客户端连接远程oracle数据库
Tnsnames.ora文件
验证客户端连接并写数据测试
  至此win8本地客户端连接远程oracle12c服务端配置成功。接下来安装测试软件loadrunner。
运行loadrunner测试
选择之前保存的脚本abc 最终改成如下: 一个用户往数据库表中写数据,持续写1个小时。完成后取值。作为基本参考。
开始测试
持续写1个小时并取值
取最终结果值 tps:5.175?? response:0.005

2、 Mysql测试

更改mysql安装路径到集群目录
在集群挂载点创建mysql数据存储目录,并修改mysql权限。
重新安装mysql到集群挂载点
启动mysql并查看是否安装在集群挂载点
  可以看到数据库重新安装到集群挂载点成功。
Syebench测试
1、 准备100W的测试数据
修改默认密码(默认为空,现在设置为123456) 准备1000000条数据  
2、开始测试
观察集群容量是在增加
3、清除测试数据
结果:每秒事务数187,耗时53秒。

五、总结

本次测试只是对比数据库mysql与oracle安装在本地服务器上与安装在集群挂载目录时的每秒事务处理数(tps)。没有任何的业务系统,都是空数据库。Oracle对比一个用户持续写(loadrunner)1个小时的值。Mysql对比一个用户写100W(sysbench)条数据值。
    Sysbench Loadrunner
    每秒事务数 共耗时 每秒事务数 (tps) 事物相应时间 (response)
Mysql5.1 本地服务器 68 146s    
集群挂载点 187 53s    
Oracle12c 本地服务器     14.099 0.002
集群挂载点     5.175 0.005
Oracle12c 本地测试持续写1个小时较集群持续写1个小时tps值快近3倍。 Mysql 集群写100W条数据较本地写100W条数据tps值快近3倍。 具体的数据库性能测试得结合实际应用业务系统,与需求。

posted on 2016-11-15 15:00  歪歪121  阅读(176)  评论(0)    收藏  举报