MySQL5.6解决‘’(1206)The total number of locks exceeds the lock table size‘’问题

       在往另外一张表INSERT大数据量数据的时候,报出“The total number of locks exceeds the lock table size”这个问题,经查询相关资料,发现是由于innodb_buffer_pool_size不够大的缘由,现解决方法步骤以下:mysql

1.在进入MySQL客户端控制台输入以下命令:sql

show variables like "%_buffer%";大数据

通常状况下innodb_buffer_pool_size默认是134217728byte,也就是128Mserver

咱们尝试修改这个值,我根据须要设置为1G=1*1024*1024*1024=1073741824。blog

输入以下命令:innodb

SET GLOBAL innodb_buffer_pool_size=1073741824;table

可是报了以下的错误:配置

别着急,那咱们就来修改下mysql的配置文件就行,以下操做service

2.找到mysql的配置文件,通常状况下放在/etc/my.cnf中,添加以下语句方法

innodb_buffer_pool_size=1073741824

而后重启下mysql server:

$ service mysqld stop

$ service mysqld start

再用show variables like "%_buffer%";查看一下配置

OK,修改完成

3.最后,咱们再执行下INSERT语句,插入成功,问题解决~