1114 aws resource_error ai_generated true

MySQL server has gone away: error 1114 (HY000) The table is full - Storage autoscaling failed to increase capacity

ID: aws/rds-storage-full-autoscaling-failure

Also available as: JSON · Markdown · 中文
82%Fix Rate
87%Confidence
1Evidence
2024-11-05First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
MySQL 8.0.35 active — — —
RDS 2024-09-01 active — — —
AWS CLI 2.18.0 active — — —

Root Cause

RDS instance storage is full and automatic storage scaling failed due to reaching the maximum storage limit, insufficient IAM permissions for the autoscaling policy, or a storage type that does not support autoscaling (e.g., magnetic).

generic

中文

RDS 实例存储已满,由于达到最大存储限制、自动扩展策略的 IAM 权限不足或存储类型不支持自动扩展(例如,磁性存储),自动存储扩展失败。

Official Documentation

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageAutoscaling.html

Workarounds

  1. 95% success Increase storage manually via the AWS CLI: `aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
    Increase storage manually via the AWS CLI: `aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
  2. 85% success Enable storage autoscaling with a higher maximum limit: `aws rds modify-db-instance --db-instance-identifier mydb --max-allocated-storage 1000`
    Enable storage autoscaling with a higher maximum limit: `aws rds modify-db-instance --db-instance-identifier mydb --max-allocated-storage 1000`
  3. 70% success Run OPTIMIZE TABLE on the affected table to reclaim space: `OPTIMIZE TABLE mytable;` (note: this locks the table and may take time).
    Run OPTIMIZE TABLE on the affected table to reclaim space: `OPTIMIZE TABLE mytable;` (note: this locks the table and may take time).

中文步骤

  1. Increase storage manually via the AWS CLI: `aws rds modify-db-instance --db-instance-identifier mydb --allocated-storage 200 --apply-immediately`
  2. Enable storage autoscaling with a higher maximum limit: `aws rds modify-db-instance --db-instance-identifier mydb --max-allocated-storage 1000`
  3. Run OPTIMIZE TABLE on the affected table to reclaim space: `OPTIMIZE TABLE mytable;` (note: this locks the table and may take time).

Dead Ends

Common approaches that don't work:

  1. 75% fail

    InnoDB does not release disk space to the OS after deletes; the table remains full until OPTIMIZE is run.

  2. 90% fail

    Storage is still full; the error will reappear immediately after restart.

  3. 60% fail

    If storage fills again, autoscaling will fail if not re-enabled or if the new limit is still too low.