##############
瞭解MySQL 8.0.26的錯誤日誌出現"The table /home/work/mysql_3306/tmp/#sqla2b_298b06_4d is fu11!"的bug,暫時通過修改臨時表的存儲引擎爲內存引擎解決
MySQL8.0.13 開始引入新的臨時內存表引擎 TempTable,並將其作爲內存中創建臨時表的默認存儲引擎。
TempTable引擎大小由參數temptable_max_ram、temptable_max_mmap控制,該兩個參數默認值爲 1G。
當查詢語句使用內存臨時表分配空間超過 temptable 引擎的限制時(temptable_max ram+temptable),temptatable 引擎由於內部邏輯處理有問題,直接返回 tableisfull 錯誤,導致查詢語句執行失敗。
如果臨時表存儲引擎爲 memory,會將超過分配空間的內存臨時表置換爲磁盤臨時表,保證查詢語句正常運行,建議將內存臨時表
解決方案:
1.更改臨時表存儲引擎;
2.升級到MySQL 8.0.27
############