首页 > 解决方案 > MySQL 集群 - 表已满

问题描述

我创建了具有 1 个管理节点、2 个数据节点和 2 个 SQL 节点的 MySQL 集群。当我运行我的应用程序(弹簧启动)时,应用程序在创建表时崩溃并出现错误:

The table 'user' is full [Failed SQL: ALTER TABLE user ADD CONSTRAINT ... FOREIGN KEY...

我检查了以下内容:

innodb_data_file_path, tmp_table_size,innodb_file_per_tablemax_heap_table_size值与我本地环境中的值相同。我还能检查什么来解决此错误?

编辑1:

之前的外键已成功创建,直到所述表。

标签: mysqlmysql-cluster

解决方案


这是外键检查问题。将NOCHECK添加到您的外键构造中。

ALTER TABLE user
    WITH NOCHECK
    ADD CONSTRAINT FK_user FOREIGN KEY (....) REFERENCES t1(....) 
GO

然后启用它:

ALTER TABLE user
      WITH CHECK CHECK CONSTRAINT ALL
 GO

推荐阅读