Mysql insert声明优化

1) 假设你同一时候从同一客户插入非常多行,使用多个值表的INSERT语句。

这比使用分开INSERT语句快(在一些情况中几倍)。
    Insert into test values(1,2),(1,3),(1,4)…

2) 假设你从不同客户插入非常多行。能通过使用INSERT DELAYED语句得到更高的速度。

Delayed的含义是让insert 语句立即运行,事实上数据都被放在内存的队列中,并没有真正写入磁盘。这比每条语句分别插入要快的多;LOW_PRIORITY刚好相反,在全部其它用户对表的读写完后才进行插入。

3) 将索引文件和数据文件分在不同的磁盘上存放(利用建表中的选项)。



4) 假设进行批量插入。能够添加bulk_insert_buffer_size变量值的方法来提快速度,可是。这仅仅能对myisam表使用。

5) 当从一个文本文件装载一个表时,使用LOAD DATA INFILE。这通常比使用非常多INSERT语句快20倍。

6) 依据应用情况使用replace语句取代insert。

7) 根据不同的应用案例ignorekeyword忽略重复记录。

你可能感兴趣的:(insert)