
In my previous few posts (Oracle PL/SQL: SELECT INTO & Oracle PL/SQL: GROUP BY), I was simply using an Oracle Autonomous Transaction (ATP) Database that I spun up in my free tier account. Incidentally, I was helping one of my team members get setup to learn some SQL/PLSQL. Whilst doing so, I figured it would be worth while to document the steps to setup your own ATP service in OCI.
As such, I figured it would be worth while to document here the steps to create your own ATP service in Oracle Cloud Infrastructure. This blog post provides this detail.
Note 1: The details in this post assume that you already have an Oracle Cloud free tier (or upgraded!) account. If you don’t you can get one here.
Note 2: Given the regular release schedule present in Oracle Cloud, it is possible that the screens may change somewhat beyond the writing of this post. If this happens, please comment on this post and I will try to help you out. (and update this post!)
Create a new ATP database in OCI
Step 1: Log into your Oracle Cloud account (free tier is suitable)

Step 2: Click on the menu icon (often referred to as “Hamburger” or “Pancake Stack” icon)

Step 3: Select “Oracle Database” and then select “Autonomous Database”

Step 4: If you wish to change the compartment in which you are provisioning the ATP database, you can do so here before clicking “Create Autonomous Database”. Here you can see that I already have 2 services already provisioned (1 x ATP and 1 x ADW). Note that both have a state equal to “Stopped” – I’ll mention this later

Step 5: Provide basic information for the ATP service. Note that you can also amend the compartment here

Step 6: Choose a workload and deployment type. As we want to create an ATP service, I have selected the “Transaction Processing” workload type and “Shared Infrastructure” as deployment type. As I am using an “Always Free” autonomous database, it is not possible to select “Dedicated Infrastructure”

Step 7: Configure your database. Here I will leave the default options which for an Always Free ATP database is 1 OCPU core and 20GB of storage.


If I chose to select database version 21c, at the time of writing this post, I would be presented with a warning message as below. So, if you do plan to later upgrade this service to a paid instance then you’ll need to go with version 19c.

I also mentioned earlier about my 2 autonomous database instances that were both in a “stopped” state. Take note of the message seen in the screenshots above and reiterated below.

Step 8: Create your administrator credentials. Note that your chosen password must contain between 12 and 30 characters, 1 uppercase letter, 1 lowercase letter and 1 number as a minimum.

Step 9: Select choice of network access rules. Here I have retained the default selection to secure access from anywhere. This means that I won’t need to specify a list of IP addresses/VCNs that can access (clearly you should do this if you are trying to productionize your service 🙂 ). Instead, if you have the database credentials, access will be allowed.

Step 10: Select license type. For Always Free, there is again only 1 option here to select

Step 11: Provide a contact email

Note – there are additional advanced options that you can configure as per the below screenshot, however, for the purposes of this blog I have not changed this from default settings:

Step 12: Click “Create Autonomous Database”

The service will now be automatically be provisioned by Oracle Cloud. The state is shown as “Provisioning”

And there we have it! After a short period of time Oracle Cloud has successfully provisioned my new ATP service and the database is ready to use!

To read about how to connect and use this database in SQL Developer & SQL*Plus see my post here.
Pingback: Connecting to an ATP Database in Oracle Cloud | AMY SIMPSON-GRANGE – BLOG
Pingback: Oracle Autonomous Database: Accessing & Using Database Actions | AMY SIMPSON-GRANGE – BLOG
Pingback: Oracle Integration: Connecting to Autonomous Database OOTB using Adapters | AMY SIMPSON-GRANGE – BLOG