视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MysqlInnoDB引擎主键性能
2020-11-09 14:04:01 责编:小采
文档


带着以上问题,本人做了如下测试:

先自报测试环境:

测试电脑配置如图:


MySQL 5.1(社区版) my.ini配置如下

[client]
port	=	3306
socket	= MySQL

[mysqld]
port	=	3306
socket	= MySQL
key_buffer_size = M
max_allowed_packet = 16M

thread_cache_size = 8
thread_concurrency = 8
max_connections = 100

table_open_cache = 2048
sort_buffer_size = 8M
read_buffer_size = 2M
read_rnd_buffer_size = 24M
net_buffer_length = 2K
thread_stack = 1024K
server-id	= 1
character-set-server=utf8
default-storage-engine=INNODB

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
character-set-server=utf8

[myisamchk]
key_buffer_size = M
sort_buffer_size = 8M

[mysqlhotcopy]
interactive-timeout

c3p0连接池配置:
jdbcUrl = jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
user = root
password = root
devMode = true
driverClass = com.mysql.jdbc.Driver
maxPoolSize = 30
minPoolSize = 3
initialPoolSiz e= 3
maxIdleTime = 120
acquireIncrement = 3


测试语言为:JAVA

框架使用的是:JFinal1.1.0

测试结果如下:

1、插入测试:

第一次 插入350000行数据 第二次 插入350000行数据 第三次 插入350000行数据 第四次 插入350000行数据 插入1000000行数据 插入8000000行数据
UUID主键 33750毫秒 36772毫秒 34885毫秒 35217毫秒 111496毫秒 1070219毫秒
自增ID主键 27939毫秒 28709毫秒 29015毫秒 28728毫秒 85666毫秒 654988毫秒
自增ID物理主键、UUID逻辑主键(唯一索引) 58578毫秒 - - - 110851毫秒 -

2、count()查询

count(*) count(id)
UUID主键(表中有10400000行数据,ID在第一位) 30634毫秒 31312毫秒
自增ID主键(表中有10400000行数据,ID在第一位) 5461毫秒 5514毫秒
由于时间原因,就暂时测试这几种情况吧…… 毕竟在正式项目中,还有很多不可控因素…… 剩下的就是仁者见仁智者见智,我只是抛砖引玉

下载本文
显示全文
专题