Tuesday, 27 January 2026

 

Understanding Oracle Cloud: SaaS, PaaS, and IaaS Explained

Oracle Cloud Infrastructure (OCI) offers a complete set of cloud services that help businesses run applications, manage data, and scale efficiently. Oracle Cloud is broadly categorized into SaaS (Software as a Service), PaaS (Platform as a Service), and IaaS (Infrastructure as a Service). Each plays a unique role in modern IT environments.

This blog explains these three models in a simple and practical way.


1. Oracle SaaS (Software as a Service)

Oracle SaaS provides ready-to-use business applications delivered over the internet. Users can access these applications through a browser without worrying about infrastructure, databases, or application maintenance.

Key Features

  • No installation or maintenance required

  • Automatic upgrades by Oracle

  • Secure and scalable

  • Subscription-based pricing

Common Oracle SaaS Products

  • Oracle Fusion Financials

  • Oracle HCM Cloud

  • Oracle SCM Cloud

  • Oracle CX (Sales, Service, Marketing)

Who should use SaaS?

Organizations that want to focus on business operations rather than IT management.

📌 Example: Finance teams using Oracle Fusion Financials without managing servers or databases.


2. Oracle PaaS (Platform as a Service)

Oracle PaaS provides a development and deployment platform where developers can build, customize, and extend applications without managing the underlying infrastructure.

Key Features

  • Managed database and middleware services

  • Faster application development

  • Easy integration with Oracle SaaS and on-prem systems

  • High availability and security handled by Oracle

Common Oracle PaaS Services

  • Oracle Autonomous Database

  • Oracle Integration Cloud (OIC)

  • Oracle Visual Builder

  • Oracle Analytics Cloud

Who should use PaaS?

Development teams who want to build custom applications or extend Oracle SaaS with minimal infrastructure effort.

📌 Example: Creating custom approval workflows integrated with Oracle Fusion using OIC.


3. Oracle IaaS (Infrastructure as a Service)

Oracle IaaS provides core infrastructure resources like compute, storage, and networking. Customers have full control over operating systems, databases, and applications.

Key Features

  • Full control over servers and networks

  • High performance and scalability

  • Pay only for what you use

  • Ideal for lift-and-shift workloads

Common Oracle IaaS Components

  • Compute (VMs, Bare Metal)

  • Block, Object, and File Storage

  • Virtual Cloud Network (VCN)

  • Load Balancers

Who should use IaaS?

Organizations that want maximum flexibility and control, especially for legacy or custom workloads.

📌 Example: Migrating an on-prem Oracle E-Business Suite database to OCI.


SaaS vs PaaS vs IaaS – Quick Comparison

ServiceManaged by OracleManaged by Customer
SaaSApplication, DB, OS, InfraOnly business usage
PaaSInfra, OS, DB (mostly)Application & logic
IaaSInfra onlyOS, DB, Application

Conclusion

Oracle Cloud offers a complete cloud ecosystem:

  • SaaS simplifies business operations

  • PaaS accelerates development and integration

  • IaaS provides full control and flexibility

Organizations often use a combination of all three to meet different business and technical needs.

Choosing the right model depends on whether your priority is speed, customization, or control.

Tuesday, 20 January 2026

 

Database Health Checks in Oracle – Practical DBA Guide

Database health checks are a critical DBA activity, especially when application users report performance issues, slowness, or errors. This blog provides a step-by-step, real-world checklist that DBAs can follow to quickly assess the overall health of an Oracle database and identify potential problem areas.


When Should You Perform a Health Check?

  • Application slowness or hanging

  • User complaints about timeouts or errors

  • Sudden increase in database load

  • Post-maintenance or patching validation

  • Proactive daily/weekly monitoring


1. Check the Database Details

Understanding the basic database status is the first step.

SET pages 9999 lines 300
COL open_mode FOR a10
COL host_name FOR a30

SELECT name AS db_name,
       host_name,
       database_role,
       open_mode,
       version AS db_version,
       logins,
       TO_CHAR(startup_time,'DD-MON-YYYY HH24:MI:SS') AS db_up_time
FROM v$database, gv$instance;

For RAC Databases

SET pages 9999 lines 300
COL open_mode FOR a10
COL host_name FOR a30

SELECT inst_id,
       instance_name,
       name AS db_name,
       host_name,
       database_role,
       open_mode,
       version AS db_version,
       logins,
       TO_CHAR(startup_time,'DD-MON-YYYY HH24:MI:SS') AS db_up_time
FROM v$database, gv$instance;

2. Monitor Resource Consumption

Check whether database resources are nearing configured limits.

SELECT *
FROM v$resource_limit
WHERE resource_name IN ('processes','sessions');

Note: V$SESSION shows current sessions, whereas V$RESOURCE_LIMIT shows current and maximum usage, which is more useful during incidents.


3. Check the Alert Log

The alert log records critical database events such as ORA errors, crashes, and space issues.

Locate Alert Log

locate alert_<ORACLE_SID>

OR

find / -name 'alert_*.log' 2> /dev/null

Review Alert Log

vi <alert_log_path>

Inside vi:

  • Shift + G → go to end of file

  • ?ORA- → search for Oracle errors

  • n / N → navigate search results

Alert Log Location (11g and Above)

SELECT name, value
FROM v$diag_info
WHERE name = 'Diag Trace';

4. Check Listener Log

Listener issues can cause connectivity problems.

Locate Listener Log

locate listener.log

OR

find / -name 'listener.log' 2> /dev/null

Review Listener Log

vi listener.log

Search for:

  • TNS- errors

  • error

OR

lsnrctl status

From the output, note the Listener Log File location.


5. Check Filesystem Space Usage

Disk space issues are one of the most common causes of outages.

df -h   # Linux / UNIX
df -g   # AIX

Ensure adequate free space for:

  • Datafiles

  • Redo logs

  • Archive logs

  • Oracle Home


6. Generate AWR Report

AWR reports help identify performance bottlenecks.

@?/rdbms/admin/awrrpt.sql

For RAC

@?/rdbms/admin/awrrpti.sql

Compare Two Periods (Optional)

@?/rdbms/admin/awrddrpt.sql

7. Generate ADDM Report

ADDM analyzes AWR data and provides findings and recommendations.

@?/rdbms/admin/addmrpt.sql

For RAC

@?/rdbms/admin/addmrpti.sql

8. Find Locks, Blockers, and Waiting Sessions

Locking issues can severely impact application performance.

Basic Lock Queries

SELECT * FROM v$lock;
SELECT * FROM gv$lock;  -- RAC

Blocking and Waiting Sessions

SELECT * FROM v$lock
WHERE block > 0 OR request > 0;

Detailed Lock Information

SELECT object_name, s.inst_id, s.sid, s.serial#, p.spid, s.osuser,
       s.program, s.machine, s.status
FROM gv$locked_object l,
     gv$session s,
     gv$process p,
     dba_objects o
WHERE l.object_id = o.object_id
AND   l.session_id = s.sid
AND   s.paddr = p.addr;

Identify Blockers and Waiters

SELECT blocking_session, sid, serial#, wait_class,
       seconds_in_wait, username, osuser, program, logon_time
FROM v$session
WHERE blocking_session IS NOT NULL
ORDER BY 1;

If two sessions are both blockers and waiters, Oracle automatically resolves the deadlock.


9. Check Alerts in OEM

Oracle Enterprise Manager provides centralized alert monitoring.

Steps

  1. Login to OEM

  2. Navigate to Alerts

  3. Review:

    • Targets Down

    • Critical Alerts

    • Warning Alerts

    • Errors

OEM alerts often provide early warning signs of database issues.


Conclusion

A structured database health check helps DBAs quickly diagnose issues and restore normal operations. Following this checklist ensures that database, OS, listener, and performance aspects are all reviewed in a systematic manner.

Proactive and consistent health checks significantly reduce downtime and improve application reliability.



Tuesday, 13 January 2026

 Oracle 19c: Wallet Issue When Adding Datafile in Newly Created PDB (ORA-28374)

Overview:

While creating a new Pluggable Database (PDB) in Oracle 19c and attempting to add a datafile/tempfile, DBAs may encounter the error:

ORA-28374: typed master key not found in wallet

This blog explains:

Why this error occurs

How to diagnose it

The correct fix using Oracle Key Management commands

Environment Details

Oracle Version: 19c (19.28)

Edition: Standard Edition 2

Storage: ASM (+DATA)

Security: TDE enabled with auto-login wallet

sqlplus / as sysdba

Check existing PDBs:

SQL> SHOW PDBS;

CON_ID  CON_NAME     OPEN MODE

------  -----------  ----------

2       PDB$SEED     READ ONLY

3       PREPROD      READ WRITE

Step 1: Create a New PDB

SQL> CREATE PLUGGABLE DATABASE UAT ADMIN USER Admin IDENTIFIED BY DEV2012Sugu#Q;

Open the PDB:

SQL> ALTER PLUGGABLE DATABASE UAT OPEN READ WRITE;

SQL> ALTER SESSION SET CONTAINER = UAT;

Step 2: Error While Adding Tempfile

❌ Error:

ORA-28374: typed master key not found in wallet

Step 3: Diagnose Wallet Status

SQL> SELECT * FROM v$encryption_wallet;

Output:


STATUS               : OPEN_NO_MASTER_KEY

WALLET_TYPE          : AUTOLOGIN

CON_ID               : 5  (UAT PDB)

Key Observation

Wallet is open

Master Encryption Key is missing

This is common for newly created PDBs

Root Cause

When a new PDB is created:

The wallet opens automatically

❌ But no TDE master key is generated for the PDB

Any encrypted operation (tablespace, tempfile, datafile) fails

Step 4: 

 Create a TDE Master Key for the PDB Create Encryption Key 

SQL> ADMINISTER KEY MANAGEMENT CREATE ENCRYPTION KEY USING TAG 'UAT_rekey' FORCE KEYSTORE IDENTIFIED BY "DEV2012Sugu#Q" WITH BACKUP USING 'UAT_rekey';

Check key creation:

SQL> SELECT key_id FROM v$encryption_keys WHERE tag = 'UAT_rekey';

Step 5: Activate the Encryption Key

SQL> ADMINISTER KEY MANAGEMENT USE ENCRYPTION KEY 'Ad+0E2RijU+iv9Xur6AYQWgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' FORCE KEYSTORE IDENTIFIED BY "DEV2012Sugu#Q" WITH BACKUP;

💡 This step associates the key with the PDB

Step 6: Verify Wallet Again

SQL> SELECT * FROM v$encryption_wallet;


Even if it still shows OPEN_NO_MASTER_KEY, Oracle internally now has a usable key for the PDB.

Step 7: Retry Tablespace Creation (Success)

SQL> CREATE TABLESPACE DEV DATAFILE '+DATA' SIZE 1G AUTOEXTEND ON NEXT 128M MAXSIZE 30G;

✅ Tablespace created successfully

Key Takeaways

Why ORA-28374 Happens

New PDB has no TDE master key

Wallet is open but key is missing

Mandatory Fix for New PDBs

Always create and activate a master encryption key after PDB creation

Best Practice Checklist (DBA)

✔ After creating a PDB

✔ Check v$encryption_wallet

✔ Create a PDB-level encryption key

✔ Activate the key

✔ Then add datafiles / tempfiles

Conclusion :

ORA-28374 is not a bug, but a TDE lifecycle requirement in multitenant Oracle databases.

Proper key management ensures smooth PDB operations and prevents encryption-related failures.


  EBS ADOP Woes: Tackling ORA-20001 in Cleanup Phase   This blog aims to support DBAs who encounter issues during the EBS application R12.2 ...