Mysql 表格已满(带内存引擎)

Mysql 表格已满(带内存引擎),mysql,Mysql,我想把一个生产数据库转移到我的开发机器上进行测试 为了提高性能,它有6个带有内存引擎的表 我做了mysqldump--routines-hxxx-uxxx-pxxx prod_database>prod_dump.sql。当我在同一台生产服务器上创建了mysql-hxxx-uxxx-pxx prod_clone_数据库

我想把一个生产数据库转移到我的开发机器上进行测试

为了提高性能,它有6个带有
内存
引擎的表

我做了
mysqldump--routines-hxxx-uxxx-pxxx prod_database>prod_dump.sql
。当我在同一台生产服务器上创建了mysql-hxxx-uxxx-pxx prod_clone_数据库
(因此我有一个UAT的克隆,因为我们还没有购买UAT mysql虚拟服务器),它工作正常

当我执行相同的
mysql-uroot-proot prod_clone
时,我在第138735行得到一个错误
error 1114(HY000):表'sezione_a'已满

生产服务器使用1GB的RAM运行Linux,并且只运行
mysqld
daemon。
我的笔记本电脑有16GB内存。为什么我会出现满表错误?我如何避免这种情况?由于该表中的数据与测试无关,我可以从转储中排除其DML吗?无论如何,我需要MySQL中的DDL,默认情况下,使用内存引擎创建的临时表可以快速增长,超过最大堆表大小和tmp表大小的16mb限制,因为每行分配的内存比通常需要的多。例如,如果每行需要16kb,则只需1k行即可达到限制。对于许多应用程序,可以使用ROW_FORMAT=DYNAMIC解决此问题,如下所述:


也许是个愚蠢的问题,但MySQL配置在您的笔记本电脑上使用了多少内存?如果你的机器有16 GB的RAM,但服务器只配置为使用,比如说,128 Mb…实际上一点也不愚蠢。如何获得该值?可能需要进行一些调整。看看这个问题: