我有一个 MySQL RDS 实例开始间歇性不可用。
在某些时候我设法得到以下错误:
1114 (HY000): The table '/rdsdbdata/tmp/#sql4c54_f_a' is full
我的实例有大量存储空间 (300GB),我可以看到这些存储空间几乎没有被使用。
不知道如何解决这个问题。
请帮忙。
假设tmp存储太小。 发出以下查询(在您的查询之前)来扩展它:
SET session tmp_table_size = 8*16777216;
SET session max_heap_table_size = 8*16777216;
16777216 是默认值。如果需要,请更改 8。 您可以尝试使用 [global] 而不是 [session] 以使其可用于其他会话。
试试这个:
set global internal_tmp_mem_storage_engine=Memory
https://dev.mysql.com/doc/refman/8.0/en/internal-temporary-tables.html