MySQL 集群 - 表已满

问题描述

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

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

我检查了以下内容

innodb_data_file_pathtmp_table_sizeinnodb_file_per_tablemax_heap_table_size 的值与我本地环境中的值相同。我还能检查什么来解决这个错误

编辑 1:

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

解决方法

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

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

然后启用它:

ALTER TABLE user
      WITH CHECK CHECK CONSTRAINT ALL
 GO