Common questions about ApsaraDB RDS storage capacity, including expansion behavior, billing, troubleshooting high usage, and recovering disk space.
Can I expand storage capacity without migrating data? What are the impacts?
If the current host has enough resources, storage expands in place without data migration. Otherwise, the system creates a new instance on a host with sufficient capacity and migrates your data automatically.
Expansion steps and transient connection behavior vary by engine:
What are the billing rules for storage expansion?
Expanding storage changes the instance fee. Billing details about configuration change.
How do I troubleshoot an abrupt increase in storage usage?
-
Log on to the ApsaraDB RDS console. On the Instances page, select the target region, find your instance, and click its ID.
-
In the left-side navigation pane, click Monitoring and Alerts
. Review the storage usage breakdown by data type and the trend over time.
How do I free up storage by deleting files?
Choose the topic that matches the storage consumer:
I created an empty database, but it already occupies storage. Why?
At initialization, the database creates system tables for accounts and permissions and generates internal logs (redo logs, undo logs). Both consume storage before any user data is added.
Why does MySQL use more storage than the source database after migration?
MySQL's compression settings and index structures differ from those of other engines. The same dataset can occupy more space after import depending on how MySQL stores and indexes it.
Does storage capacity include backup storage?
No. Storage Capacity on the Basic Information page (Usage Statistics section) counts only instance storage. Backup storage is tracked separately in View and manage the size of backup files.
What happens when storage is exhausted, and how do I respond?
When storage is exhausted, the instance is locked and enters the Locking state after a short delay. Write operations are then blocked.
To prevent this, configure alerting and enable automatic storage expansion so the system scales capacity when usage reaches a threshold.
To enable automatic storage expansion:
-
Configure automatic storage expansion for an ApsaraDB RDS for MySQL instance
-
Configure automatic storage expansion for an ApsaraDB RDS for PostgreSQL instance
-
Configure automatic storage expansion for an ApsaraDB RDS for SQL Server instance
RDS for MySQL instances also support automatic fragment reclamation to reclaim fragmented space without manual intervention.
If the instance is already locked, follow What do I do if my ApsaraDB RDS instance is in the Locking state? to recover.
After deleting a large amount of data on SQL Server, why isn't disk space reclaimed?
DELETE on SQL Server does not immediately free disk space. Three mechanisms keep space allocated after a DELETE:
| What happens | Why |
|---|---|
| Transaction logs grow | All operations, including DELETE, are logged for consistency and recovery. The logs occupy disk space even after rows are deleted. |
| Data pages stay allocated | SQL Server marks deleted data pages as reusable rather than releasing them. This speeds up future inserts by avoiding frequent disk recycling. |
| Index and table fragments remain | Deleted rows leave gaps in tables and indexes. The database still considers that fragmented space allocated. |
To reclaim disk space, use one or more of the following approaches:
-
Shrink database or file group files — Run
DBCC SHRINKDATABASEorDBCC SHRINKFILEto compact data files and return unused space to the file system.ImportantShrinking can be time-consuming and may degrade instance performance if run frequently. Solve the problem that SQL Server instances are locked when the storage space is full or Troubleshoot insufficient storage issues on an ApsaraDB RDS for SQL Server instance.
-
Rebuild indexes — Large deletes fragment indexes. Rebuilding reorganizes data pages, reclaims space, and improves query performance.
-
Back up transaction logs — Under the full recovery model, regular log backups let the database truncate committed entries and free space. Manage logs and Simple recovery model.
-
Use `TRUNCATE TABLE` instead of `DELETE` —
TRUNCATE TABLEreleases data pages immediately without large transaction logs, making it more efficient for removing all rows.ImportantTRUNCATE TABLEis irreversible and does not support theWHEREclause. Use it only when you intend to remove all rows.
After expanding storage, does the free backup storage quota increase?
Yes. The free backup storage quota scales with instance storage capacity:
| Disk type | Free backup storage quota |
|---|---|
| Cloud disk | 200% of storage capacity |
| Premium Local SSD | 50% of storage capacity |
The quota is measured in GB and is always rounded up to the nearest integer.