问题描述
我创建了具有 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_table
和 max_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