今天上午老蒋看到一个同事在处理一个客户网站的数据迁移问题,这个客户的网站是B2B商城网站,而且数据还是比较大的,我看到图片库文件就有20GB,数据库也有几个GB。所以同事在导入数据库的时候有看到报错"ERROR 1206 (HY000): The total number of locks exceeds the lock table size",这个他还是用命令导入的,如果用phpmyadmin导入肯定更加不可以的。
这个问题我以前有遇到过,只要修改服务器WEB环境中的innodb_buffer_pool_size参数就可以,默认的参数太小才会这样报错,我直接改大。
1、如果非面板环境
如果我们采用的是非面板环境,比如宝塔面板,那我们就找到"/etc/my.cnf"文件,然后在里面把innodb_buffer_pool_size=16M 改成 innodb_buffer_pool_size=64M ,我索性让他改成128M。
2、如果是宝塔面板
这里我们直接到MYSQL数据库设置找到上图所示的参数,调大即可。然后我们保存后重启数据库。
这样,我们再导入数据库就没有"The total number of locks exceeds the lock table size"报错问题。
本文出处:老蒋部落 » 关于导入大数据库"The total number of locks exceeds the lock table size"报错问题 | 欢迎分享( 公众号:老蒋朋友圈 )