MySQL和Oracle相信大家都不陌生,这篇文章来对他们做个压力测试。
1:服务器环境
操作系统:Red Hat Enterprise Linux Server release 5.5 (Tikanga)
CPU:Intel(R) Xeon(R) CPU E5607 @ 2.27GHz 8核
内存:16G
Mysql:Ver 14.14 Distrib 5.5.21, for Linux (x86_64)
Oracle:Oracle Database 11g Enterprise Edition Release
2:测试用例
测试数据结构
tbook
BookID 书ID 整型 唯一索引
BookName 书名称 200字符 索引
CategoryID 书分类ID 整型 索引
CategoryName 书分类名称 45字符 索引
SubCategoryID 书子分类ID 整型
SubCategoryName 书子分类名称 45字符
CreateTime 书创建时间
KeyWord 书标签 500字符 索引
Status 书发布状态 1字符
AuthorID 作者ID 整型
AuthorName 作者名称 50字符
WordsCount 书字数 整型
Description 书简介 2000字符
Price 书价格 整型
NewChapterID 最新章节ID 整型
NewChapterName 最新章节名称 100字符
3:测试结果
Insert
Search
分页
Update
Delete
插入:读取:分页读取:修改:删除 = 1:6:1:1:1(读:写=7:3)
4:详细数据测试(操作通过存储过程完成)
A:数据插入
500并发Mysql插入性能图示(横坐标:当前数据总量,纵坐标:每秒执行次数){平均值:1369.884}
500并发Oracle插入性能图示(横坐标:当前数据总量,纵坐标:每秒执行次数){平均值:2102.566}
{采用的是每100W一次,如果连续执行500W行数据则最大每秒处理3900,最少每秒处理890}
0到100万行数据
100万到200万
200万到300万
300万到400万
400万到500万
50并发Mysql插入性能图示(横坐标:当前数据总量,纵坐标:每秒执行次数){平均值:4841.98}
50并发Oracle插入性能图示(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:1459.408}
5并发Mysql插入性能图示(横坐标:当前数据总量,纵坐标:每秒执行次数){平均值:2308.416}
B:数据查询
500万数据总量,500并发下mysql按主键查询性能(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:1400.683}
500万数据总量,500并发下Oracle按主键查询性能(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:2220.662}
500万数据总量,50并发下mysql按主键查询性能(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:6122.653}
500万数据总量,50并发下Oracle按主键查询性能(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:4904.504}
500万数据总量,500并发下mysql分页查询(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:1360.927}
500万数据总量,500并发下oracle分页查询(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:2948.971}
500万数据总量,50并发下mysql分页查询(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:6214.188}
500万数据总量,50并发下oracle分页查询(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:4949.283}
C:数据修改
500万数据总量,500并发下mysql按照随即主键修改记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:2286.661}
500万数据总量,500并发下oracle按照随即主键修改记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:5511.632}
500万数据总量,50并发下mysql按照随即主键修改记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:1647.013}
500万数据总量,50并发下oracle按照随即主键修改记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:1321.357}
D:数据删除
500万数据总量,500并发下mysql按照随即主键删除记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:2864.562}
500万数据总量,500并发下oracle按照随即主键删除记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:10838.03}
500万数据总量,50并发下mysql按照随即主键删除记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:3363.272}
500万数据总量,50并发下oracle按照随即主键删除记录(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:3666.02}
E:综合测试
插入:读取:分页读取:修改:删除 = 1:6:1:1:1(读:写=7:3)
500万数据总量,500并发下mysql(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:143.871}
500万数据总量,500并发下oracle(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:328.7097}
500万数据总量,50并发下mysql(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:449.629}
500万数据总量,50并发下oracle(横坐标:执行时间(秒),纵坐标:每秒执行次数){平均值:450}