1114
aws
runtime_error
ai_generated
true
MySQL server has gone away: error 1114 (HY000) The table '/rdsdbdata/tmp/#sql_xxx' is full
ID: aws/rds-storage-full
85%Fix Rate
82%Confidence
1Evidence
2023-08-20First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| rds-mysql-8.0.35 | active | — | — | — |
| rds-mariadb-10.6.16 | active | — | — | — |
Root Cause
RDS instance storage is exhausted, causing temporary tables or data files to fail writes; often due to insufficient allocated storage or unoptimized queries generating large temp tables.
generic中文
RDS 实例存储已耗尽,导致临时表或数据文件写入失败;通常是由于分配的存储不足或未优化的查询生成了大量临时表。
Official Documentation
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Troubleshooting.html#CHAP_Troubleshooting.StorageFullWorkarounds
-
90% success Modify RDS instance to increase allocated storage: `aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
Modify RDS instance to increase allocated storage: `aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
-
75% success Clean up old data or logs: delete unused tables, truncate binary logs with `CALL mysql.rds_rotate_binlog;` or reduce binlog retention.
Clean up old data or logs: delete unused tables, truncate binary logs with `CALL mysql.rds_rotate_binlog;` or reduce binlog retention.
-
65% success Optimize queries to use indexes and avoid large temp tables; set tmp_table_size and max_heap_table_size to allow in-memory temp tables.
Optimize queries to use indexes and avoid large temp tables; set tmp_table_size and max_heap_table_size to allow in-memory temp tables.
中文步骤
修改 RDS 实例以增加分配的存储:`aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
清理旧数据或日志:删除未使用的表,使用 `CALL mysql.rds_rotate_binlog;` 轮换二进制日志或减少 binlog 保留时间。
优化查询以使用索引并避免大型临时表;设置 tmp_table_size 和 max_heap_table_size 以允许内存临时表。
Dead Ends
Common approaches that don't work:
-
Restart the RDS instance to clear temporary tables
70% fail
Restarting may free temp space temporarily, but if storage is full, the root cause (disk space) persists and queries will fail again.
-
Increase innodb_buffer_pool_size to reduce disk I/O
85% fail
Buffer pool size affects memory, not disk storage; it won't free up space on the volume.