Reduce your Autonomous Database Cost using Scheduled Downtime

Matt PaineMatt Paine
3 min read

Introduction

The Always-Free version of Oracle Autonomous Database is great and you may find it meets all of your needs. If so - great - it's a super easy way to get started with a low-maintenance database with ORDS and APEX:

  • https://www.oracle.com/cloud/free/

At some point, you might find that you need functionality that only comes with the paid version of Autonomous, for example:

  • The ability to locate the database in a private subnet.
  • The ability to clone and restore on demand.
  • Over 20GB of storage.
  • More than one OCPU.

At the time of writing, a paid Autonomous instance can cost around $1400 per instance per month. An APEX Autonomous instance costs less if you're prepared to sacrifice SQL*Net access, but you're still looking at $300-$400 a month. And of course, you may want one or more development instances as well as a Production instance.

So your database costs increase from zero to ... well ... not zero. What can you do about that?

Scheduling Downtime

The good news is that most of the monthly cost is OCPU Per Hour and this charge relates to the hours that the database runs. So if you don't need your database at night or at weekends, you can stop the database during these times and your monthly invoice will be reduced. That may not be true of your production database - but development instances are often unused for long periods of time during a week.

You can do this in two ways using the OCI console:

  • You can manually stop the database, and start it only when required. This is more appropriate if your development instance is not needed for a long period of time. A possible downside of this approach is the time spent logging into the console to execute each stop and start.

  • You can configure automatic uptime and downtime for each Autonomous instance

Automatic Stop and Start

Open the OCI console, access your Autonomous instance, and under More Actions, open Auto Start/Stop Schedule.

image.png

You will then be able to configure your database start and stop times:

image.png

The schedule shown has the database active from 4:00 AM to 9:00 PM UTC Monday to Friday. Note that all times are in UTC.

Summary

Using the simple steps above, the savings can quickly add up. The schedule above has database scheduled downtime for 83 hours out of the 168 hours in a week.

You have access for the full working day Monday to Friday, and on Autonomous, this could save nearly half of the monthly OCPU Per Hour cost.

For one instance, this could be as much as $500 per month, or $6,000 a year. A client we work with has five non-Production instances and applied these settings to all of them, saving $30,000 a year.

Not bad for five minutes of work ...

4
Subscribe to my newsletter

Read articles from Matt Paine directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Matt Paine
Matt Paine