How it's billed (simplified)
compute = ECPU-hours actually allocated (base + auto-scaled usage), while the database is running
storage = provisioned (or used, for some workload types) storage per month
Stopped databases don't bill compute, but storage keeps billing. Check the current pricing model for your workload type and licence option.
1. Measure
From the ADB metrics (namespace oci_autonomous_database) over 30 days: CpuUtilization, ECPUsAllocated (or OCPU equivalents), Sessions, StorageUtilization, and peak times. Performance Hub shows which SQL uses the CPU (see the "Autonomous Database is slow" post).
| Pattern | Action |
|---|---|
| CPU low, base ECPUs high | Lower the base ECPU count |
| Short peaks above base | Enable compute auto scaling instead of a high base |
| Used only during office hours | Schedule stop/start |
| Many small databases with low use | Elastic pool |
2. Base ECPUs + auto scaling
oci db autonomous-database update --autonomous-database-id $ADB \
--compute-count 4 --is-auto-scaling-enabled true
With auto scaling, the database can use up to three times the base ECPUs when needed and you pay for what's used. A lower base with auto scaling usually costs less than a base sized for the peak. Watch that peak usage doesn't regularly exceed the 3× ceiling.
Storage auto scaling (--is-auto-scaling-for-storage-enabled true) avoids over-provisioning storage "just in case" and prevents full-storage outages.
3. Stop non-production out of hours
oci db autonomous-database stop --autonomous-database-id $ADB
oci db autonomous-database start --autonomous-database-id $ADB
Automate with OCI Resource Scheduler or a scheduled Function (see the non-production scheduling post). Agree with users that dev/test databases are unavailable at night.
4. Elastic resource pools
An elastic pool lets many Autonomous Databases share a pool of ECPUs, billed on the pool's actual aggregated usage, which is useful for many small databases (SaaS tenants, departmental apps) with uneven load. The pool leader sets the pool size and members join it. Check the minimum pool size and supported workload types before planning.
5. Licence model
| Option | When |
|---|---|
| License Included | No existing Oracle Database licences to apply |
| Bring Your Own License (BYOL) | Eligible existing licences. Lower ECPU price; check edition and licence rules |
Changing licence type is an update on the database. Confirm entitlement with your licensing owner first.
6. Developer and free options
- Free tier Always Free databases for learning and small tools (with fixed limits).
- Developer databases for development and testing, with fixed small sizing and no production SLA.
Use them for sandboxes instead of full-price instances.
7. Other cost items
- Long backup retention and long-term backups: set retention to what's required.
- Autonomous Data Guard standby: cost depends on the configuration (local vs cross-region). Keep it for databases that need it.
- Refreshable clones for reporting: often cheaper than scaling the primary for reports.
Tip
Fix the top SQL before buying ECPUs. One missing index or a runaway report can double average ECPU use, and Autonomous Database bills for it every hour.
Checklist
- 30 days of ECPU and CPU usage reviewed
- Base ECPUs lowered with auto scaling on
- Storage auto scaling on
- Non-production stop/start scheduled
- Elastic pool for many small databases
- Licence model confirmed; free/developer for sandboxes