【问题标题】:MySQL Cluster - The table is fullMySQL 集群 - 表已满
【发布时间】:2021-09-12 16:38:42
【问题描述】:

我创建了具有 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:

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

【问题讨论】:

    标签: mysql mysql-cluster


    【解决方案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
    

    【讨论】:

    • 我已经编辑了我的问题。另外,由于我使用的是 liquibase,所以这不是一个可行的解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-21
    • 2016-08-18
    • 1970-01-01
    • 2019-01-20
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    相关资源
    最近更新 更多