Migrate to Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure

This section describes how to migrate your on-premise VMware database workloads to Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure, and application workloads to Oracle Cloud VMware Solution.

Architecture

This architecture shows a migration from on-premise VMware database and applications to Oracle Cloud Infrastructure.

The first step is to migrate on-premise databases and applications running on VMware to Oracle Cloud VMware Solution using VMware tools such as HCX and vMotion. Oracle Cloud VMware Solution gives you a fully automated implementation of a VMware software-defined data center (SDDC) within your OCI tenancy, running on OCI bare metal instances.

Next, using Oracle Zero Downtime Migration, automate your database migration from Oracle Cloud VMware Solution database virtual machines to Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure to consolidate to a high-performance database platform.

Note:

Oracle Database licensing rules and support conditions must be observed when migrating databases from on-premises VMware to Oracle Cloud VMware Solution.

The following diagram illustrates this reference architecture.



migrate-vmware-exadata-base-architecture.zip

This architecture supports the following components:

  • Region

    An Oracle Cloud Infrastructure region is a localized geographic area that contains one or more data centers, called availability domains. Regions are independent of other regions, and vast distances can separate them (across countries or even continents).

  • Virtual cloud network (VCN) and subnet

    A VCN is a customizable, software-defined network that you set up in an Oracle Cloud Infrastructure region. Like traditional data center networks, VCNs give you complete control over your network environment. A VCN can have multiple non-overlapping CIDR blocks that you can change after you create the VCN. You can segment a VCN into subnets, which can be scoped to a region or to an availability domain. Each subnet consists of a contiguous range of addresses that don't overlap with the other subnets in the VCN. You can change the size of a subnet after creation. A subnet can be public or private.

  • Oracle Base Database Service

    Oracle Base Database Service enables you to maintain absolute control over your data while leveraging the combined capabilities of Oracle Database and Oracle Cloud Infrastructure (OCI). OCI offers single-node database systems and multi-node RAC database systems on virtual machines.

  • Oracle Exadata Database Service on Dedicated Infrastructure

    Oracle Exadata Database Service on Dedicated Infrastructure provides Oracle Exadata Database Machine as a service in an OCI data center. The Oracle Exadata Database Service on Dedicated Infrastructure service can host many Oracle databases that run in one or more VM clusters that run on a single Exadata rack in an OCI region. Oracle Exadata Database Service on Dedicated Infrastructure is an ideal platform for database consolidation.

  • Oracle Cloud VMware Solution Software-Defined Data Center (SDDC)

    Oracle and VMware have partnered to develop a VMware certified software-defined data center (SDDC) implementation for use within Oracle Cloud Infrastructure. This implementation, called the Oracle Cloud VMware Solution, uses OCI to host a highly available VMware SDDC. It also allows seamless migration of all your on-premises VMware SDDC workloads to Oracle Cloud VMware Solution. Oracle Cloud VMware Solution contains the following VMware components:

    • VMware vSphere ESXi
    • VMware vSAN
    • VMware vCenter
    • VMware NSX-T
    • VMware HCX (optional)
  • Bare metal

    An Oracle Cloud VMware Solution software-defined data center (SDDC) contains bare metal servers hosting Oracle Cloud VMware Solution. The bare metal server supports applications that require high core counts, large amounts of memory, and high bandwidth (such as Oracle Cloud VMware Solution). You can deploy Oracle Cloud VMware Solution on bare metal servers, and configure virtual machines with significant performance improvements compared to other public clouds and on-premises data centers.

  • Service gateway

    The service gateway provides access from a VCN to other services, such as Oracle Cloud Infrastructure Object Storage. The traffic from the VCN to the Oracle service travels over the Oracle network fabric and never traverses the internet.

  • Dynamic routing gateway (DRG)

    The DRG is a virtual router that provides a path for private network traffic between VCNs in the same region, between a VCN and a network outside the region, such as a VCN in another Oracle Cloud Infrastructure region, an on-premises network, or a network in another cloud provider.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect provides an easy way to create a dedicated, private connection between your data center and Oracle Cloud Infrastructure. FastConnect provides higher-bandwidth options and a more reliable networking experience when compared with internet-based connections.

  • File storage

    OCI File Storage is used during migration to import the migrated database from a shared file system.

Before You Begin

Before you begin, check the versions of major components used in this setup, and review the product documentation for later reference.

Review Requirements

  • Ensure the source Oracle Cloud VMware Solution database VM is running Oracle Linux 7.9, and Oracle Database version 19.18 Standard Edition or Enterprise Edition.
  • The target Oracle Exadata Database Service on Dedicated Infrastructure database must be Oracle Enterprise Extreme Performance version 19.18 or above.
  • The target Oracle Base Database Service database can be Standard Edition or Enterprise Edition version 19.18 or above.
  • Oracle Zero Downtime Migration must be version 21.4 or above.
  • Intermediate storage must include OCI File Storage.

Review Documentation

This solution playbook describes how to migrate your database workloads. Refer to the solution below to learn how to migrate your VMware workloads. The additional resources are helpful for context, details, and reference for your database migration.

Learn how to migrate the VMware components of your workload to Oracle Cloud VMware Solution.

Review Oracle Zero Downtime Migration resources:

Review logical migration resources:

Review Oracle Database resources:

About Required Products and Roles

This solution requires the following products:

  • Oracle Cloud Infrastructure Identity and Access Management
  • OCI Compute
  • OCI File Storage
  • Oracle Zero Downtime Migration
  • Oracle Cloud VMware Solution
  • Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure

These are the roles needed for each product.

Product Name: Role Required to...
Oracle Cloud Infrastructure Identity and Access Management: OCI_user Create API keys for logical migration
OCI Compute: admin Create OCI Compute instance to run Oracle Zero Downtime Migration software
OCI File Storage: Storage Admin Create OCI File Storage for export/import operations
Oracle Zero Downtime Migration: opc Create zdmuser to install and run Oracle Zero Downtime Migration software
Oracle Zero Downtime Migration: zdmuser
  • Install Oracle Zero Downtime Migration software
  • Run Oracle Zero Downtime Migration
Oracle Cloud VMware Solution Virtual Machine: root/sudoer user
  • Mount network file system share from OCI File Storage to export database for logical migration
  • Enable passwordless ssh from Oracle Zero Downtime Migration virtual machine
  • Run sudo commands to install Oracle Zero Downtime Migration software agent
  • Run sudo commands to backup or export database
Oracle Cloud VMware Solution Database: sys/system Run Data Pump to export database
OCI Oracle Cloud VMware Solution and OCI Virtual Cloud Network: Admin
  • Modify Oracle Cloud VMware Solution configuration to add OCI Services Gateway, routing, and security rules
  • Modify Oracle Cloud VMware Solution configuration to add routing and security rules to the virtual cloud network subnet where the target database is running
Oracle Exadata Database Service on Dedicated Infrastructure or Oracle Base Database Service: Database Admin Create target database
Oracle Exadata Database Service on Dedicated Infrastructure or Oracle Base Database Service VM Cluster Nodes: opc
  • Mount network file system share from OCI File Storage to import database for logical migrations
  • Enable passwordless ssh from Oracle Zero Downtime Migration virtual machine
  • Install Oracle Zero Downtime Migration software agent
  • Run sudo commands to restore or import database
Oracle Exadata Database Service on Dedicated Infrastructure or Oracle Base Database Service: sys/system Run Data Pump to import database

See Oracle Products, Solutions, and Services to get what you need.

Considerations for Migration

Before you begin your migration, review these assumptions and considerations.

  • The steps in this playbook describe how to migrate using an offline logical migration, see the Review Documentation section for information on how to migrate using an online logical migration. During logical online migration, Oracle Zero Downtime Migration configures Oracle GoldenGate for migrations between the source and target databases to ensure the databases are always online during migration.
  • Oracle Zero Downtime Migration supports two types of database migrations from Oracle Cloud VMware Solution database VMs to Oracle Base Database Service and Oracle Exadata Database Service on Dedicated Infrastructure: logical migration and physical migration. We recommend using logical migration because this method is the simplest. Physical migrations require the source and target databases to be at the same patch level. This can be challenging if the source database is not patched regularly.
  • During logical migration, pluggable databases (PDBs) and/or schemas are migrated. Non-container databases (non-CDB) are migrated to pluggable databases configured in a container database running on the target database.
  • Oracle Zero Downtime Migration can export and import directly from network file system storage, therefore, OCI File Storage mounted via network file system is the best data transfer option. OCI File Storage can be presented to the VCN where the target databases are configured via a mount target. Security rules are required to allow the network file system protocol between the OCI File Storage mount target and target database. Network file system must also be allowed between the mount target and NSX Overlay network where the source database is running.
  • The source database can run Oracle single-instance. Oracle Base Database Service can run single-instance or RAC databases, while Oracle Exadata Database Service on Dedicated Infrastructure always runs RAC databases. During database migration, Oracle Zero Downtime Migration converts single-instance to RAC databases when required.
  • Oracle Transparent Data Encryption database encryption is optional for the Oracle Cloud VMware Solution database VM source database. When migrating databases to Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure, the target database will always be encrypted.
  • The source and target databases must run the same timezone files. For instructions, refer to "Upgrading the Time Zone File and Timestamp with Time Zone Data" in the Review Documentation section.
  • The steps in this playbook assume there is direct network connectivity from the Oracle Cloud VMware Solution Overlay Network, where the database VM is installed, to the OCI VCN where the target database and the Oracle Zero Downtime Migration VM is configured.
  • The source and target databases do not have to have the same sys password, wallet password, database version, database name, and patch level.

Migrate Using Logical Migration

The following steps describe how to perform an offline logical migration. For online migration, see Step-by-Step Guide - Logical Migration and In-Flight Upgrade from On-Premises to Oracle Exadata Database Service on Dedicated Infrastructure in the Review Documentation section.

  1. In the OCI console, verify the following workflows were run when Oracle Cloud VMware Solution was deployed:
    • Configure connectivity to Oracle Services Network
    • Configure connectivity to VCN resources
    These workflows allow the VMs running in the Oracle Cloud VMware Solution NSX Overlay to communicate with the Oracle Services Network and the VCN where the target database and Oracle Zero Downtime Migration server are, or will be running. Run these workflows if they haven't been run yet to configure all required security and routing rules.
  2. Create a target Oracle Base Database Service or Oracle Exadata Database Service on Dedicated Infrastructure database using the OCI console or REST API. Configure the database as follows:
    • The new target database can have a different name than the source database.
    • The new database can be a newer version than the source database.
    • Provide a password for the sys user. Take note of the password.
    Note the database OCID after the database is created.
  3. In the OCI console, create a compute instance in the same VCN where the target database is configured.
    This compute instance can be any shape, with at least two OCPUs and 16GB of RAM, running the Oracle Linux 7.9 operating system. This virtual machine will be used to run the Oracle Zero Downtime Migration software.
  4. Follow the Oracle Zero Downtime Migration installation documentation in the Review Documentation section to download and install Oracle Zero Downtime Migration 21.4 software on the OCI compute instance.
    Run Oracle Zero Downtime Migration software as the zdmuser.
  5. Ensure the Oracle Zero Downtime Migration VM can communicate with the source database hosts using hostname and IP address. Modify the VCN DNS resolver, or the /etc/hosts file in the Oracle Zero Downtime Migration VM if necessary. Verify the following:
    • Verify there is a security rule that allows the Oracle Zero Downtime Migration VM to connect to the source database VM on the default listener port 1521 and ssh port 22.
    • Ensure the Oracle Zero Downtime Migration VM can reach the target database hosts on the default listener port 1521 and ssh port 22.
  6. Log in as the zdmuser to the compute instance running Oracle Zero Downtime Migration software, and generate an ssh key-pair. Enable passwordless ssh from the zdmuser account to the source database VM (root, privilege-sudoer user).
  7. In the OCI console, create an OCI File Storage.
    Note the mount target, export, and IP address on the VCN.
  8. Follow the steps in "Configuring VCN Security Rules for File Storage" in the Review Documentation section to configure the required security rules in the VCN to allow the network file system protocol from the target database system to the OCI File Storage IP address created in step 7. Refer to the documentation to create rules to allow the network file system protocol from the OCI NSX Overlay network to the OCI File Storage IP address created in step 7.
  9. Use the IP address and Export from step 7 to mount this OCI File Storage via network file system on the source Oracle Cloud VMware Solution database VM and on all nodes of the target database. Note the mount point.
  10. In the OCI console, create an API key for the OCI user who owns the target database.
    Note the user OCID, tenancy OCID, fingerprint, and OCI region. Save the corresponding private and public keys on PEM files. This API key will be used by Oracle Zero Downtime Migration to connect to OCI to obtain target database information during database migration.
  11. Copy the PEM files from the previous step to the Oracle Zero Downtime Migration VM.
  12. Log in as the sys user to the source database to ensure the parameter Streams_Pool_Size is set to at least 2G, for example:
    SQL>show parameter streams_pool_size;
    SQL>alter system set streams_pool_size=2G scope=both SID=’*’;                  
  13. Use Oracle Zero Downtime Migration's logical migration response file template included with Zero Downtime Migration to create a response file for the migration. Key parameters are:
    • TARGETDATABASE_OCID: OCID of the target database from step 1.
    • MIGRATION_METHOD: OFFLINE_LOGICAL
    • DATA_TRANSFER_MEDIUM: NFS
    • TARGETDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_CONNECTIONDETAILS_HOST: IP/hostname of the source Oracle Cloud VMware Solution database VM.
    • SOURCEDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCEDATABASE_CONNECTIONDETAILS_SERVICENAME: Service name of the source pluggable database (PDB) or non-container database (CDB). Use lsnrctl to find.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_TENANTID: Tenancy OCID from step 10.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_USERID: User OCID from step 10.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_FINGERPRINT: Fingerprint from step 10.
    • OCIAUTHENTICATIONDETAILS_PRIVATEKEYFILE: File path to private key PEM file on the Oracle Zero Downtime Migration server from step 11.
    • OCIAUTHENTICATIONDETAILS_REGIONID: OCI region ID for the OCI user from step 10.
    • TARGETDATABASE_CONNECTIONDETAILS_HOST: IP/hostname of the first VM on the target database system.
    • TARGETDATABASE_CONNECTIONDETAILS_PORT: 1521
    • TARGETDATABASE_CONNECTIONDETAILS_SERVICENAME: Service name for the target pluggable database in the target database. Use lsnrctl to find.
    • SOURCECONTAINERDATABASE_ADMINUSERNAME: system
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_HOST: IP/hostname of the source Oracle Cloud VMware Solution database VM.
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_SERVICENAME: Service name for the source container database on the Oracle Cloud VMware Solution database VM. Use lsnrctl to find.
    • DATAPUMPSETTINGS_JOBMODE: SCHEMA
    • DATAPUMPSETTINGS_FIXINVALIDOBJECTS: TRUE
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_PATH: Network file system mount point from step 9.
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_PATH: Network file system mount point from step 9.
    • DATAPUMPSETTINGS_CREATEAUTHTOKEN: TRUE
    • DATAPUMPSETTINGS_DATAPUMPPARAMETERS_IMPORTPARALLELISMDEGREE: Comment this line with a number sign (#) if the target is an Oracle Base Database Service running Oracle Standard Edition 2. Otherwise, enter a number greater than two, according tot he number of CPUs available.
    • DATAPUMPSETTINGS_DATAPUMPPARAMETERS_EXPORTPARALLELISMDEGREE: Comment this line with a number sign (#) if the source Oracle Cloud VMware Solution database VM is running Oracle Standard Edition 2. Otherwise, enter a number greater than two, according tot he number of CPUs available.
    • TABLESPACEDETAILS_AUTOCREATE: TRUE
    • TABLESPACEDETAILS_USEBIGFILE: TRUE
    • TABLESPACEDETAILS_EXTENTSIZEMB: 512
    • EXCLUDEOBJECTS-1: owner:PDBADMIN
  14. Run an Oracle Zero Downtime Migration dry run migration job (-eval), to validate all prerequisites for migration are met. This runs the Cloud Pre-Migration Advisor Tool (CPAT) to validate the source database is suitable for migration to the target database using Oracle Zero Downtime Migration logical migration. Address issues reported by CPAT before continuing. For example:
    
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_13 \
    -eval
    This command asks for two passwords. The first password is the system password for the source database. The second password is the system password for the target database.
    Note the Oracle Zero Downtime Migration job ID.
    After a successful dry run migration, proceed to the next step.
  15. After a dry run migration is successful, run the Oracle Zero Downtime Migration job. For example:
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_13
    This command asks for two passwords. The first password is the system password for the source database. The second password is the system password for the target database.
    Note the Oracle Zero Downtime Migration job ID.