Ellucian Banner on Oracle BaseDB (OCI): Modernizing the Database Layer & Migration Runbook

Step-by-step higher-ed infrastructure runbook for migrating Ellucian Banner Oracle 19c databases from legacy on-premises hardware to Oracle Cloud Infrastructure (OCI) Base Database Service.

⚡ BLUF (Bottom Line Up Front) Summary

⚠️ Advisory Scope & Terms

Migrating Ellucian Banner databases to Oracle Cloud Infrastructure (OCI) Base Database Service (BaseDB) requires modernizing the Oracle 19c database layer, re-platforming storage diskgroups to OCI Block Volumes, and tuning connection pools for registration week concurrency. This runbook details the end-to-end migration methodology—including RMAN active duplicate with TDE encryption, ORDS/Tuxedo web tier network security, and database parameter optimization.

Environment & Prerequisites

ComponentVersion / Specification
Ellucian BannerBanner 8.x / Banner 9.x
Oracle Database SourceOracle 19c (On-Premises Linux/Solaris/AIX)
Oracle Database TargetOCI Base Database Service (Oracle 19c / 23ai)
Web Tier / ORDSORDS 24.x / Tomcat 9.0 / WSO2 IS
OS / InfrastructureOracle Linux 8.x (UEK R6)

Executive Summary & Architectural Overview

niversity IT departments managing Ellucian Banner Student & Financials face increasing pressure to eliminate legacy on-premises database hardware, optimize cloud licensing costs, and guarantee high availability during high-concurrency student registration weeks.

Migrating Ellucian Banner to Oracle Cloud Infrastructure (OCI) Base Database Service (BaseDB) provides enterprise-grade Oracle RAC/Data Guard resilience, automated backups, and NVMe-backed block storage. However, lifting and shifting Banner to OCI requires careful database parameter tuning, Transparent Data Encryption (TDE) migration, and connection pool scaling.

<div class="process-flow">
  <div class="process-step">
    <div class="step-number">1</div>
    <div class="step-title">OCI Provisioning</div>
    <div class="step-desc">Provision OCI BaseDB VM shape, VCN subnets, and TDE master keystore.</div>
  </div>
  <div class="process-arrow">➔</div>
  <div class="process-step">
    <div class="step-number">2</div>
    <div class="step-title">RMAN Active Duplicate</div>
    <div class="step-desc">Migrate database files over OCI FastConnect via RMAN DUPLICATE TARGET DATABASE.</div>
  </div>
  <div class="process-arrow">➔</div>
  <div class="process-step">
    <div class="step-number">3</div>
    <div class="step-title">Banner Object Compile</div>
    <div class="step-desc">Recompile BANINST1/BANSECR schemas, rebuild indexes, and gather DBMS_STATS.</div>
  </div>
  <div class="process-arrow">➔</div>
  <div class="process-step">
    <div class="step-number">4</div>
    <div class="step-title">Registration Validation</div>
    <div class="step-desc">Cut over ORDS/Ethos web tier, verify connection pools, and test SFRSTCR batch locks.</div>
  </div>
</div>

🛠️ Step 1: OCI BaseDB Provisioning & Banner Instance Parameter Tuning

Provision an OCI Base Database Service instance (Oracle Linux 8 with Oracle Database 19c) within a Private Subnet of your OCI Virtual Cloud Network (VCN).

Connect as SYSDBA and configure initialization parameters tailored for Ellucian Banner ERP workloads:

-- Configure Banner 9 SGA/PGA Memory and Session Limits (64GB RAM Node Base)
ALTER SYSTEM SET sga_target = 32G SCOPE=SPFILE;
ALTER SYSTEM SET pga_aggregate_target = 16G SCOPE=SPFILE;

-- Optimizer Parameter Tuning for Banner CBO SQL Execution Plans
ALTER SYSTEM SET optimizer_capture_sql_plan_baselines = FALSE SCOPE=BOTH;
ALTER SYSTEM SET "_optimizer_use_feedback" = FALSE SCOPE=BOTH;
ALTER SYSTEM SET "_gby_hash_aggregation_enabled" = FALSE SCOPE=BOTH;

-- Enforce Case-Insensitive Password Management for Legacy Banner Compatibility
ALTER SYSTEM SET sec_case_sensitive_logon = FALSE SCOPE=BOTH;

-- Configure Process & Session Limits for Peak Registration Concurrency
ALTER SYSTEM SET processes = 3000 SCOPE=SPFILE;
ALTER SYSTEM SET sessions = 4500 SCOPE=SPFILE;

🚨 Critical Note: Setting _optimizer_use_feedback = FALSE and _gby_hash_aggregation_enabled = FALSE prevents cardinal estimation errors on core Banner registration tables (SFRSTCR, STVTERM, SSBSECT) during heavy concurrency.


🚀 Step 2: Live Migration via RMAN Active Duplicate over OCI FastConnect

To migrate a multi-terabyte Banner database from on-premises to OCI BaseDB with minimal downtime, use RMAN Active Duplicate over OCI FastConnect or VPN IPsec tunnels.

1. Configure TNS Names Resolution on Target OCI BaseDB Node

Edit $ORACLE_HOME/network/admin/tnsnames.ora on the OCI BaseDB host to resolve the on-premises source database:

BANNER_ONPREM =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.20.15)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = banner_prod.example.edu)
    )
  )

2. Launch RMAN Active Duplicate Script

Run RMAN on the target OCI BaseDB server to stream datafiles directly from the on-premises source:

rman target sys/OnPremPassword@BANNER_ONPREM auxiliary sys/OciPassword@BANNER_OCI <<EOF
RUN {
  ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
  ALLOCATE CHANNEL c2 DEVICE TYPE DISK;
  ALLOCATE CHANNEL c3 DEVICE TYPE DISK;
  ALLOCATE CHANNEL c4 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL a1 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL a2 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL a3 DEVICE TYPE DISK;
  ALLOCATE AUXILIARY CHANNEL a4 DEVICE TYPE DISK;

  DUPLICATE TARGET DATABASE TO banner_oci
    FROM ACTIVE DATABASE
    USING BACKUPSET
    NOFILENAMECHECK;
}
EOF

🔍 Step 3: Post-Migration Banner Schema Validation & Optimizer Stats

Once the database is duplicated to OCI BaseDB, connect to the database to recompile legacy Banner schemas (BANINST1, BANSECR, SATURN, FAISMGR, PAYROLL) and refresh CBO statistics.

-- 1. Recompile Invalid Banner Schema Objects
EXEC DBMS_UTILITY.compile_schema(schema => 'BANINST1', compile_all => FALSE);
EXEC DBMS_UTILITY.compile_schema(schema => 'SATURN', compile_all => FALSE);
EXEC DBMS_UTILITY.compile_schema(schema => 'FAISMGR', compile_all => FALSE);

-- 2. Gather Optimizer Statistics for Core Banner Tables
BEGIN
  DBMS_STATS.GATHER_SCHEMA_STATS(
    ownname          => 'SATURN',
    estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
    method_opt       => 'FOR ALL COLUMNS SIZE AUTO',
    degree           => 8,
    cascade          => TRUE
  );
END;
/

⚡ Step 4: ORDS & Ethos Identity Web Tier Cutover Checklist

  1. ORDS Connection Pool Sizing: Update $ORDS_CONFIG/databases/default/pool.xml on your Tomcat/ORDS web servers to set db.connection.maxLimit to 300 connections per node.
  2. Ethos Identity (WSO2 IS) SAML Endpoint: Update WSO2 SSO endpoints to point to the new OCI BaseDB private IP address.
  3. Registration Smoke Test: Execute a simulated student registration transaction (SFRSTCR insert/update) to verify zero lock contention on STVTERM and SSBSECT.

📚 Official Documentation & Technical References


Need higher-education infrastructure experts to architect or execute your Ellucian Banner cloud database migration to OCI? Contact our Enterprise Cloud Specialists or explore our Enterprise Health Audits.

⚠️INFORMATIONAL & TECHNICAL ADVISORY DISCLAIMER

The diagnostic methodologies, commands, and runbooks provided on DBPros.Net are published for informational and educational purposes only. They do not constitute customized professional consulting advice. Operating engineers and DBAs are solely responsible for securing pre-flight backups (RMAN, VM snapshots, LVM clones), validating changes in non-production staging environments, and adhering to organizational change-control policies. All content, scripts, and runbooks are provided "AS IS" without warranty of any kind, and DBPros.Net assumes no liability for system downtime, database corruption, data loss, or operational disruption. For complete advisory limitations and legal terms, view our full Terms of Service & Advisory Disclaimer.