Posts by Md Asif Hussain

Immutable table in oracle database 19c

Why Do We Need Immutable Tables? In many applications, certain data should never be modified once it is stored. Traditional tables allow UPDATE and DELETE operations, which can accidentally or intentionally change critical records. Immutable tables solve this problem by allowing only INSERT operations and protecting data from modification or deletion until the configured retention period expires. Common use cases include: Audit logs Financial transactions Compliance records (SOX, HIPAA, GDPR) Healthcare data Legal and government records Immutable Tables in Oracle Database Immutable tables are insert-only relational structures that enforce immutability through system-managed retention controls at both the table and row levels. These controls prohibit UPDATE and DELETE operations until the retention period expires. While functionally similar to blockchain tables in terms of data immutability, immutable tables do not maintain cryptographic hash links between records. Oracle introduced immutable tables in Oracle Database 19c Release Update 19.11, and they are supported in all later releases. Prerequisites The COMPATIBLE initialization parameter must be set to the appropriate value before immutable tables can be used. [oracle@Primary ~]$ sqlplus / as sysdba NOTE: Verify the database version and apply the appropriate COMPATIBLE value accordingly. SQL> STARTUP SQL> ALTER SYSTEM SET compatible=’19.11.0′ SCOPE=SPFILE; System altered. SQL> SHUT IMMEDIATE; Database closed. Database dismounted. ORACLE instance shut down. SQL> STARTUP ORACLE instance started. Oracle Version Requirements Immutable Tables were introduced in Oracle Database 19c RU 19.11. Oracle 19.11 contains a few known issues related to retention policy modifications. These issues are resolved in Oracle 19.12 and later releases, including Oracle 21.3. For production environments, Oracle recommends using the latest supported Release Update (RU).…

Read More

How to Configure Oracle Database Vault on an Oracle 19c CDB

Why Oracle Database Vault? In a traditional Oracle database, users with powerful privileges such as SYS or DBA can access sensitive application data. While these privileges are required for database administration, they can also pose security and compliance risks. Oracle Database Vault addresses this by enforcing separation of duties and restricting access to sensitive data, even for privileged users. Common use cases include: Protecting HR employee records Securing Finance and payroll data Meeting compliance requirements such as SOX, PCI-DSS, and HIPAA Restricting privileged users from accessing application data Step 1. Verify Current Database Vault and Oracle Label Security Status Start the database. SQL> STARTUP ORACLE instance started. Total System Global Area 1560278096 bytes Fixed Size                  9135184 bytes Variable Size             385875968 bytes Database Buffers         1157627904 bytes Redo Buffers                7639040 bytes Database mounted. Database opened. Connect to the CDB root. SQL> SHOW CON_NAME CON_NAME CDB$ROOT Verify whether Database Vault is enabled. SQL> SELECT value     FROM v$option     WHERE parameter = ‘Oracle Database Vault’; VALUE—– FALSE Verify whether Oracle Label Security is enabled. SQL> SELECT value     FROM v$option     WHERE parameter = ‘Oracle Label Security’; VALUE—–FALSE…

Read More

How to Perform Password-Based Encrypted RMAN Tablespace Backup & Restore

  Overview  This blog explains how to secure an Oracle 19c tablespace using RMAN password-based encryption and demonstrates a complete backup, restore, and recovery cycle. It covers verifying tablespaces and datafiles, taking an encrypted RMAN backup…

Read More

Oracle 19c Table Shrink Space

Shrinking a table in an Oracle database is used to reclaim unused space and optimize storage. As data is inserted, updated, and deleted over time, tables can become fragmented and retain empty blocks, leading to wasted…

Read More

APEX 21.2 Installation in Oracle Linux 19C Database

Introduction:This document provides a step-by-step guide to installing Oracle APEX 21.2 on an Oracle 19c database running on Oracle Linux.It covers prerequisites, setup, and configuration for APEX, ORDS, Java, and…

Read More

Configuring Transparent Data Encryption (TDE) in Oracle 19c with WALLET_ROOT and FILE Keystore

IntroductionThis guide explains how to enable Transparent Data Encryption (TDE) in Oracle 19c.TDE protects sensitive data at rest by encrypting it automatically.We will set up the wallet, create the master…

Read More