Normally when we execute the grep unix command to list oracle processes, you will find all “detailed” oracle process:
ps -ef | grep [o]ra_
this is the normal process architecture in Oracle database hosted on Unix environment prior to 12c release.
In oracle 12c you can switch to Multi-threaded architecture by adding a new parameter in your init.ora file.
go to $ORACLE_HOME/dbs and edit your init.ora (text init file in case you are not configuration SPFILE) and add the parameter:
threaded_execution=TRUE
Then, create a password file per the documentation: https://geodatamaster.wordpress.com/2015/05/25/oracle-12c-database-password-file/
Then bounce the Oracle instance (shutdown/startup) the database.
Please note that the OS authentication won’t’ work anymore after changing the mode to “multi-threading”, and you will receive the below error:
If you face problems connecting to the database, you can connect internally through Bequeath protocol: http://www.dbi-services.com/index.php/blog/entry/multithreaded-12c-and-connect-as-sysdba
After enabling multi-threading, the oracle process on the server will look like this:
Interesting part that in IBM AIX environment the Oracle database process using topas command shows the database is consuming around 97% of the CPU ….. This will requires more investigation from my side 😐