MySQL——常用SQL优化(一)

一、大批量数据的插入。

当使用load命令导入数据时,适当的设置可以有效提高速度。

(一)、对于MyISAM存储引擎的表,可以通过一下方式快速地批量导入数据。

DISABLES KEYS和ENABLE KEYS用来打开或者关闭MyISAM表非唯一索引的更新。在导入大量数据到一个非空的MyISAM表时,通过设置这两个命令,可以提高导入速率。对于导入速率到一个空的MyISAM表,默认表示先导入数据然后再创建索引。所以不用进行设置。

   


(二)、InnoDB存储引擎的表。

a、因为InnoDB类型的表是按照主键的顺序保存的,所以将导入的数据按照主键顺序排序,可以有效提高导入数据的效率。

b、在导入数据前,执行set unique_checks=0,关闭唯一性校验。导入结束后,执行set unique_checks=1,恢复唯一性校验,可以提高导入的效率。

c、如果应用设置自动提交事务,那么在导入数据前,执行set autocommit=0,关闭自动提交。导入数据结束后,执行set autocommit=1,开启自动提交事务。可以有效提高导入效率。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值