As you may have expected already since Oracle Database 21c is available for download on Linux, I will publish some additional posts this week. Today, I will give a quick insight into the installation process.

Photo by Dominik Scythe on Unsplash
CDB-only architecture
As you may or may not be aware, Oracle Database 21c is the first Oracle database release with CDB-only architecture. You can’t have a non-CDB in Oracle 21c anymore. Ah, wait a bit, didn’t I blog 1.5 years ago that Oracle Database 20c will be the first CDB-only release? True. But as you saw, there is no Oracle Database 20c. Hence, Oracle 21c will be now the first CDB-only release. This will have an effect on upgrading to Oracle 21c as you will see later this week in another blog post.
Installation
Before you just start right away with the installation, have a quick look into the Installation Guide at first.
Using the Database Preinstallation RPM is not a requirement but may be helpful. If it is available …
[root@hol oracle]# yum list oracle-database-preinstall-21c Loaded plugins: langpacks, ulninfo Error: No matching Packages to list
In my case this shouldn’t be an issue as I have several other homes in my environment.
Remember to create a new directory for the installation, and then copy the downloaded zip file into it and unpack it.
[CDB3] oracle@hol:/u01/app/oracle/product/21 $ ls addnode cv has jlib olap oui racg sqldeveloper utl assistants data hs ldap oml4py owm rdbms sqlj xdk bin dbs install lib OPatch perl relnotes sqlpatch cfgtoollogs deinstall instantclient md opmn plsql root.sh sqlplus clone demo inventory mgw oracore precomp runInstaller srvm crs diagnostics javavm network ord python schagent.conf suptools css dv jdbc nls ords QOpatch sdk ucp ctx env.ora jdk odbc oss R slax usm
Call the OUI:
[CDB3] oracle@hol:/u01/app/oracle/product/21 $ ./runInstaller Launching Oracle Database Setup Wizard... The response file for this session can be found at: /u01/app/oracle/product/21/install/response/db_2021-08-16_11-05-41AM.rsp You can find the log of this install session at: /u01/app/oraInventory/logs/InstallActions2021-08-16_11-05-41AM/installActions2021-08-16_11-05-41AM.log
Then the Installer starts.
And a few clicks later you will see this screen:
Nothing seems unusual until now.
OS Certification
Please see the Installation Guide for certified operating systems and minimum requirements:
- Operating System Checklist for Oracle Database 21c on LinuxThe following Linux x86-64 kernels are supported:
- Oracle Linux 8.2 with the Unbreakable Enterprise Kernel 6: 5.4.17-2011.1.2.el8uek.x86_64 or later
- Oracle Linux 8.2 with the Red Hat Compatible Kernel: 4.18.0-193.19.1.el8_2.x86_64 or later
- Oracle Linux 7.6 with the Unbreakable Enterprise Kernel 5: 4.14.35-2025.404.1.el7uek.x86_64 or later
- Oracle Linux 7.4 with the Unbreakable Enterprise Kernel 4: 4.1.12-124.53.1.el7uek.x86_64 or later
- Red Hat Enterprise Linux 8.2: 4.18.0-193.19.1.el8_2.x86_64 or later
- SUSE Linux Enterprise Server 15 SP1: 4.12.14-197.29-default or later
Read-Only Home
The Oracle Home for Oracle 21c by default is a read-only Oracle Home. You can read more about Read-Only Homes here. I think the concept is quite good and well-thought but of course, you can revert to read-write homes again.
In a read-only ORACLE_HOME you will find the user-specific files, instance-specific files, and log files in a location known as the ORACLE_BASE_HOME.
[CDB3] oracle@hol:/u01/app/oracle/product/21 $ cd bin [CDB3] oracle@hol:/u01/app/oracle/product/21/bin $ ./orabasehome /u01/app/oracle/homes/OraDB21Home1
You will find the configuration files for a read-only ORACLE_HOME in a location known as ORACLE_BASE_CONFIG.
[CDB3] oracle@hol:/u01/app/oracle/product/21/bin $ ./orabaseconfig /u01/app/oracle
How do you find out now whether you have a read-only Oracle Home?
$ cd $ORACLE_HOME/install [CDB3] oracle@hol:/u01/app/oracle/product/21/install $ cat orabasetab #orabasetab file is used to track Oracle Home associated with Oracle Base /u01/app/oracle/product/21:/u01/app/oracle:OraDB21Home1:Y:
The Y at the end of the line indicates that this is a read-only home.
What I find really funny is that any reference to roohctl, the tool to change to read-only homes and reverse, is not documented in the 21c documentation anymore. If you need more information about roohctl, you can find it in the 19c documentation:
If needed – and only then -, you can use the tool to disable Read-Only Oracle Homes:
$ ./roohctl -disable Disabling Read-Only Oracle home. Update orabasetab file to disable Read-Only Oracle home. Orabasetab file has been updated successfully. Read-Only Oracle home has been disabled successfully. Check the log file /u01/app/oracle/cfgtoollogs/roohctl/roohctl-210816AM113056.log for more details. [CDB3] oracle@hol:/u01/app/oracle/product/21/bin
Don’t get me wrong. I think Read-Only Homes are a very useful. So take this as “just in case”.
Afterwards, the marker switched to N:
$ cat orabasetab #orabasetab file is used to track Oracle Home associated with Oracle Base /u01/app/oracle/product/21:/u01/app/oracle:OraDB21Home1:N:
Ok, installation is now done. Next step will be upgrading to Oracle Database 21c.
Further Links and Information
- Oracle Database 21c is available for download on Linux
- Oracle Database 20c – the first CDB-only release
- Oracle 21c is available in the Oracle Cloud – plus Documentation
- Oracle Database 21c Documentation
- Oracle Database 21c – Installation on Linux
- Read-Only Oracle Home is the default in Oracle 21c
- Operating System Checklist for Oracle Database 21c on Linux
–Mike
Dear Mike,
as always, your blog posts are very interesting and comprehensive.
Now I just wonder about the “read only” Oracle-Home. Honestly, even after reading the section “Evolution of Oracle-Homes” in the installation guide, I don’t see a real benefit. I simply see more directories and even more logfiles.
Could you please explain the benefits of the read-only OH in one of your next blogs?
best regards
Dieter
Hi Dieter,
the idea is that the core home doesn’t get spoiled anymore.
I will see whether I can put up a blog post sometime.
Cheers,
Mike
Hi Mike,
I noticed the certification matrix surprisingly is not showing RHEL7 anymore but OL7. Same in MOS Doc ID 1304727.2. Both Distros are nearly the same, aren’t they?
Cheers,
Björn
Hi Bjöorn,
I think the kernel matters – and except for the fact that we fix Oracle related things much faster than RH, the distros are very similar.
Cheers,
Mike
So where is Oracle Linux 7.6 with the Unbreakable Enterprise Kernel 5: 4.14.35-2025.404.1.el7uek.x86_64 or later found if not at the yum.oracle.com repository Mike?
Hi Terence,
I fear that I can’t answer such questions. You may please check via an SR.
Sorry,
Mike