Overview of Oracle Cloud Infrastructure Database Migration
Learn about the Oracle Cloud Infrastructure Database Migration service.
The following topics explain what Oracle Cloud Infrastructure Database Migration can do and describe the concepts you need to know about the service.
To learn more about the service, see OCI Database Migration.
About Oracle Cloud Infrastructure Database Migration
Oracle Cloud Infrastructure Database Migration is a fully-managed service that provides you a high performing, self-service experience for migrating databases to Oracle Cloud Infrastructure (OCI).
Database Migration runs as a managed cloud service separate from your tenancy and resources. The service operates as a multitenant service in a Database Migration service tenancy and communicates with your resources using Private Endpoints (PEs). PEs are managed by Database Migration.
Database Migration includes the following capabilities:
-
Migration of data from on-premises, Oracle Cloud, and Amazon RDS Oracle databases into co-managed, Autonomous Data Warehouse, or Autonomous Transaction Processing services on Oracle Cloud Infrastructure
-
Simple offline migration option or enterprise-level logical migration with minimal downtime option
-
Based on industry-leading Oracle GoldenGate replication and powered by the Zero Downtime Migration engine
-
Compliant with Oracle Maximum Availability Architecture (MAA) and supports Oracle Database 11g Release 2 (11.2.0.4) and later database releases.
-
Seamless transition from initial load to streamed replication
-
Performs change data capture on the source database and replicates these changes to the target
-
Job subsystem lets you perform and manage database migrations at a fleet scale.
-
Pause and resume functionality lets you pause and resume your migration job if needed, which is useful to conform to a maintenance window, for example
-
Job termination lets you terminate a running migration job, rather than waiting for it to complete
-
Re-run (resume) migration jobs from a point of failure
-
Job pre-checks for migration tasks to prevent errors during database migration
What's New in Database Migration
For information about new features and enhancements, check What's New for Oracle Cloud Infrastructure Database Migration Service and Database Migration Release Notes on OCI.
Database Migration Terminology
The following concepts are essential for working with Oracle Cloud Infrastructure Database Migration service.
- Migration
- Represents a single migration operation and contains the specifications by which the migration should run. Migration specifications include whether or not to perform bulk data copy, and/or capture ongoing changes, and the source and target database selections.
- Migration Job
- Represents an active or past migration execution. A migration job is created implicitly when you start a migration. A migration job is a snapshot with runtime information about the migration. You use this information to audit logs and investigate failures.
- Validation Job
- Validates the prerequisites and connectivity for source and target databases, Oracle GoldenGate instances, and Oracle Data Pump. A validation job is created when you evaluate the migration.
- Database connection
- Represents a database instance, containing the database metadata and connection details. A data asset can have one or many connections to include all schemas within a database that need to be migrated.
- Agent
- Contains the necessary details to establish a connection from Oracle Cloud Infrastructure to a source database that is not directly accessible on OCI, for example, a database in a different region or tenancy in OCI, an on-premises database, or a manually installed cloud database.
- Private Endpoint
- Gives hosts within your virtual cloud network (VCN) and your on-premises network access to a single resource within the Oracle service of interest (for example, one Autonomous Database with shared Exadata infrastructure). Connection to either a source or target database in the migration is currently supported by the service. Make sure security rules or network security groups allow traffic required for database migration jobs. Learn more at Database Migration Port Requirements.
- Schema
- Organizational concepts of databases to hold database objects such as tables, views, stored procedures, and so on.
Offline Migration
When using the offline migration method, you must stop updates to the source database before you start a migration.
Using the offline migration method, Database Migration service transports the data from the source database using the preferred transfer medium, and then imports the data from the selected transfer medium to the target database on the Cloud using Oracle Data Pump.
Online Migration
An online migration enables you to perform database migration without any downtime of your source database.
- Online migrations consist of the following steps;
- Initial load
- Real-time replication
- When using the online migration method, you do not need to stop updates to the source database before you start a migration.
- Online migrations are facilitated by Oracle GoldenGate's replication technology to allow zero downtime of your source database.
To take advantage of parallelism and achieve the best data transfer performance, Oracle recommends that you transfer data using Object Store for databases over 50GB in size. The database link transfer medium can be convenient for smaller databases, but this choice may involve uncertainty in performance because of its dependence on network bandwidth for the duration of the transfer.
As part of a migration job, Database Migration uses GoldenGate's replication technology to facilitate database replication between the source and target databases.
When the application switches over to the target database, Database Migration tears down the replication so that the target database in the Cloud can then be used as the production database. Note that bi-directional synchronization is not currently supported. Synchronization is always from the source database to the target database.
Note that Online migration using GoldenGate Marketplace instances require SQL*Net connectivity from the GoldenGate host running in the target tenancy to the source database.
What Is Migrated During Initial Load
The initial load phases of an Oracle Cloud Infrastructure Database Migration service migration job work flow moves the contents of all selected schemas from the source database to schemas of the same name in the target database.
You can elect to include or exclude specific objects, and rename objects when you create a migration.
See Selecting objects for Oracle Migration for information about how to configure object selection rules, and what objects are excluded by default.
Data Replication
During the Oracle Cloud Infrastructure Database Migration service migration job work flow replication phase, all data and metadata operations in transactions committed after the initial load are replicated until you resume the migration job after the Monitor Replication Lag phase.
During the migration job it is recommended that your database avoid Data Definition Language (DDL) operations to provide the most optimal environment for fast database replication. When DDL is replicated, Oracle GoldenGate Replicat serializes data to ensure that there are no locking issues between DML and DDL on the same objects.
By default, the Oracle Cloud Infrastructure Database Migration service configures GoldenGate to replicate all DDL operations on the source database to the target database.
The following objects are not supported:
- Changes to external tables
- Oracle GoldenGate Unsupported Types (see Understanding What’s Supported)
About Zero Downtime Migration
Oracle Cloud Infrastructure Database Migration service is internally driven by the Zero Downtime Migration Server, which is an integral part of the Oracle product, Zero Downtime Migration.
Zero Downtime Migration configuration is handled automatically by Database Migration, so you don't have to perform any Zero Downtime Migration set up.
To learn more about Zero Downtime Migration see Zero Downtime Migration on Oracle Help Center and Oracle Zero Downtime Migration on Oracle's Database Technologies web site.
Resource Identifiers
Database Migration resources have a unique, Oracle-assigned identifier called an Oracle Cloud ID (OCID).
Database Migration resources are OdmsAgent
,
OdmsConnection
, OdmsMigration
, and
OdmsJob
.
For example, the OCID format for OdmsJob
is
ocid1.odmsjob.oc1.[REGION][.FUTURE USE].<UNIQUE
ID>
.
For information about the OCID format and other ways to identify your resources, see Resource Identifiers.
Service Limits
Oracle Cloud Infrastructure Database Migration service limits you to 10 Connections, 5 migrations, and 5 agents.
Your tenancy has limits on the maximum number of resources that you are allowed to use. To view your tenancy's limits for Oracle Cloud Infrastructure Database Migration service, see Limits by Service. If you are an administrator in an eligible account, you can request to increase the service limits in the OCI Console, see Requesting a Service Limit Increase.
Compartment Quotas
In Oracle Cloud Infrastructure Database Migration service, creating a quota lets you limit the number of migration resources in a compartment.
For example:
set database-migration quota odms-migration-count to 10 in compartment compartment_name
See Overview of Compartment Quotas for information.
Metering and Billing
Metering and billing for Oracle Cloud Infrastructure Database Migration Service is based on the number of Migration Hours elapsed.
A Migration Hour is defined as the amount of time
that a Migration Job is running, where running is defined as a
Migration Job being in an IN_PROGRESS
or WAITING
state. Partial Migration Hours consumed are billed as partial hours with a one-minute
minimum.
Migration Jobs are only metered if either of the following is true:
- The Migration Job is running more than 183 days (6 months) after creation
- The Migration Job is running for more than 60 days idle (no data transferred)
Migration Hours are billed down to the Second level. Note that the minimum amount billed will be 1 minute. That is, if a resource is spun up for less than 60 seconds, the customer will still be charged for 1 minute. For any usage over 1 minute, all usage will be tracked at the Second level.
You can monitor the Migration Hours of a Migration Job in the Console under Governance & Administration, in Cost and Usage Reports. The migration billing meter should be included in the report as service name DATABASEMIGRATION.
Source Database Requirements
Your source database environment must meet these requirements to use Oracle Cloud Infrastructure Database Migration.
Supported Source Database Versions
The following Oracle Database versions can be migrated using Database Migration, and the source database can be at any configuration.
- Oracle Database 11g Release 2 (11.2.0.4)
- Oracle Database 12c Release 1 (12.1.0.2)
- Oracle Database 12c Release 2 (12.2.0.1)
- Oracle Database 19c
- Oracle Database 21c
- All subsequent Oracle Database releases
- OCI MySQL HeatWave
- MySQL Database Server
- Amazon RDS for MySQL
- Azure Database for MySQL
- Amazon Aurora MySQL
- Google Cloud SQL for MySQL
If you have a source database version below Oracle Database 19c and you want to perform an online migration to Oracle Database 23ai, then you need to perform a two-step migration:
- Migrate to perform Oracle Database 11g Release 2 (11.2.0.4) and higher version to Oracle Database 19c.
- Migrate to Oracle Database 19c and higher version to Oracle Database 23ai.
This restriction does not apply for offline migrations (Data Pump only).
Supported Source Environments
- Oracle Cloud Infrastructure co-managed databases or on-premises environments
- Amazon Web Services RDS Oracle Database (both offline and online migrations)
Note
Amazon Web Services RDS Oracle Database Multitenant architecture (CDB) is currently not supported for online migrations. - Linux-x86-64, IBM AIX, and Oracle Solaris.
Target Database Requirements
Your target database environment must meet these requirements to use Oracle Cloud Infrastructure Database Migration.
Supported Migration Targets
Database Migration supports the following Oracle Cloud Infrastructure Database Service offerings as migration targets.
-
Oracle Autonomous Database Serverless
-
Oracle Autonomous Database on Dedicated Exadata Infrastructure
-
Oracle Cloud Infrastructure co-managed Oracle Base Database service (Oracle Base Database (VM, BM) and Exadata on Oracle Public Cloud)
-
Oracle Database@AzureNote
You need a standard OCI Tenancy that is linked to your Azure account. For more details, see Oracle Database@Azure. - The OCI MySQL Heatwave is the only target database that is currently supported for MySQL migrations.
A target co-managed database can be either a pluggable database (PDB) in a multitenant container database (CDB), or a traditional non-CDB Oracle database.
For Bare Metal and Virtual Machine Database Systems, the user is responsible for securing, patching, and hardening the environment. To learn more about this, see Bare Metal and Virtual Machine DB Systems.
Oracle Database Edition Support
Oracle Cloud Infrastructure Database Migration service supports the migrations of Standard and Enterprise Edition Oracle databases for source and targets.
Integrated Services
The Database Migration service is integrated with various Oracle Cloud Infrastructure services and features.
IAM
Database Migration integrates with the Identity and Access Management (IAM) service for authentication and authorization for the Console, SDK, CLI, and REST API.
To learn more about IAM, see IAM Overview.
Monitoring
Oracle Cloud Infrastructure Monitoring lets you actively and passively monitor your Oracle Cloud Infrastructure Database Migration resources and alarms.
Database Migration Metrics capture CPU utilization, OCPU consumption, memory utilization, deployment health, and inbound and outbound lag. You can view these metrics using the Monitoring service.
See Troubleshooting Database Migration Service for topics about monitoring resource status and accessing logs.