最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
MySQL手册版本 5.0.20-MySQL优化(四) (1)(3)
时间:2022-07-02 09:35:41 编辑:袖梨 来源:一聚教程网
7.2.12 加速 INSERT
插入一条记录花费的时间由以下几个因素决定,后面的数字大致表示影响的比例:
连接:(3)
发送查询给服务器:(2)
解析查询:(2)
插入记录:(1 x 记录大小)
插入索引:(1 x 索引数量)
关闭:(1)
这里并没有考虑初始化时打开数据表的开销,因为每次运行查询只会做这么一次。
如果是 B-tree 索引的话,随着索引数量的增加,插入记录的速度以 log N 的比例下降。
可以使用以下几种方法来提高插入速度:
如果要在同一个客户端在同一时间内插入很多记录,可以使用 INSERT 语句附带有多个 VALUES 值。这种做法比使用单一值的 INSERT 语句快多了(在一些情况下比较快)。如果是往一个非空的数据表里增加记录,可以调整变量 bulk_insert_buffer_size 的值使之更快。详情请看"5.2.3 Server System Variables"。
如果要从不同的客户端中插入大量记录,使用 INSERT DELAYED 语句也可以提高速度。详情请看"14.1.4 INSERT Syntax"。
对 MyISAM 而言,可以在 SELECT 语句正在运行时插入记录,只要这时候没有正在删除记录。
想要将一个文本文件加载到数据表中,可以使用 LOAD DATA INFILE。这通常是使用大量 INSERT 语句的20倍。详情请看"14.1.5 LOAD DATA INFILE Syntax"。
相关文章
- 洛克王国世界雪境宝箱在哪里 雪境宝箱具体位置 10-14
- 洛克王国世界神圣狮鹫在哪 神圣狮鹫捕捉位置 10-14
- 洛克王国世界可可果树在哪里 可可果树具体位置 10-14
- 二重螺旋深渊boss怎么打 深渊boss打法教学 10-14
- 蓝色星原旅谣寒悠悠怎么样 寒悠悠角色介绍 10-14
- 蓝色星原旅谣PVP怎么玩 PVP玩法介绍 10-14