我有一个MySQL集群设置,有2个数据节点和1个管理节点。现在,在执行插入操作时,我们的数据节点上会出现错误。
错误1114 (HY000):表'users‘已满
感谢您的帮助,这是一个配置问题吗?如果是,是哪个节点?每个节点都是一台Ubuntu 9服务器。
发布于 2012-03-20 01:40:38
答案就在这里:http://dev.mysql.com/doc/refman/5.0/en/faqs-mysql-cluster.html#qandaitem-B-10-1-13
简而言之: ndb引擎将所有数据保存在RAM中。如果您的节点有1 1GB的RAM,而您试图加载一个4 1GB的数据库,那么您(几乎)就不走运了。
有一种方法可以将ndb配置为使用磁盘存储数据,以便内存仅用于存储索引(它们仍然必须存储在内存中),方法如下:http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster-disk-data-objects.html
然而,如果你这样做,你得到的性能会低得多。
发布于 2012-11-27 13:35:44
如果有人忽略了这个问题,那么这个问题的根本原因就是MaxNoOfConcurrentOperations
的值,这个值应该随着表预期容纳的行数而相应地提高。
下面是这个问题的解决方案。
MaxNoOfConcurrentOperations
和MaxNoOfConcurrentTransactions
的值增加到大于集群中最大表的值。这可能是因为在大表上应用任何操作时,MySQL群集并行处理所有行。发布于 2010-11-15 03:02:25
检查innodb_data_file_path
设置-此错误表明您已超出该注册表项中定义的可用空间。为InnoDB重新定义空间,请检查this link。
或者,您可能只是耗尽了存储数据的分区上的磁盘空间。
https://stackoverflow.com/questions/4179087
复制相似问题