# This is an automatically generated code sample.
# To make this code sample work in your Oracle Cloud tenancy,
# please replace the values for any parameters whose current values do not fit
# your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
# boolean, number, and enum parameters with values not fitting your use case).
require 'oci'
# Create a default config using DEFAULT profile in default location
# Refer to https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File for more info
config = OCI::ConfigFileLoader.load_config
# Initialize service client with default config file
database_migration_client =
OCI::DatabaseMigration::DatabaseMigrationClient.new(config: config)
# Send the request to service, some parameters are not required, see API doc for more info
create_migration_response =
database_migration_client.create_migration(
OCI::DatabaseMigration::Models::CreateMigrationDetails.new(
type: 'ONLINE',
compartment_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value',
source_database_connection_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-sourceDatabaseConnectionId-Value',
target_database_connection_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-targetDatabaseConnectionId-Value',
display_name: 'EXAMPLE-displayName-Value',
agent_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-agentId-Value',
source_container_database_connection_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-sourceContainerDatabaseConnectionId-Value',
data_transfer_medium_details_v2:
OCI::DatabaseMigration::Models::AwsS3DataTransferMediumDetails.new(
type: 'AWS_S3',
name: 'EXAMPLE-name-Value',
region: 'EXAMPLE-region-Value',
access_key_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-accessKeyId-Value',
secret_access_key: 'EXAMPLE-secretAccessKey-Value',
object_storage_bucket:
OCI::DatabaseMigration::Models::ObjectStoreBucket.new(
namespace_name: 'EXAMPLE-namespaceName-Value',
bucket_name: 'EXAMPLE-bucketName-Value'
)
),
data_transfer_medium_details:
OCI::DatabaseMigration::Models::CreateDataTransferMediumDetails.new(
database_link_details:
OCI::DatabaseMigration::Models::CreateDatabaseLinkDetails.new(
name: 'EXAMPLE-name-Value',
wallet_bucket:
OCI::DatabaseMigration::Models::CreateObjectStoreBucket.new(
namespace_name: 'EXAMPLE-namespaceName-Value',
bucket_name: 'EXAMPLE-bucketName-Value'
)
),
object_storage_details:
OCI::DatabaseMigration::Models::CreateObjectStoreBucket.new(
namespace_name: 'EXAMPLE-namespaceName-Value',
bucket_name: 'EXAMPLE-bucketName-Value'
),
aws_s3_details:
OCI::DatabaseMigration::Models::CreateAwsS3Details.new(
name: 'EXAMPLE-name-Value',
region: 'EXAMPLE-region-Value',
access_key_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-accessKeyId-Value',
secret_access_key: 'EXAMPLE-secretAccessKey-Value'
)
),
dump_transfer_details:
OCI::DatabaseMigration::Models::CreateDumpTransferDetails.new(
source:
OCI::DatabaseMigration::Models::CreateCurlTransferDetails.new(
kind: 'CURL', wallet_location: 'EXAMPLE-walletLocation-Value'
),
target:
OCI::DatabaseMigration::Models::CreateOciCliDumpTransferDetails.new(
kind: 'OCI_CLI',
oci_home: 'EXAMPLE-ociHome-Value',
wallet_location: 'EXAMPLE-walletLocation-Value'
),
shared_storage_mount_target_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-sharedStorageMountTargetId-Value'
),
datapump_settings:
OCI::DatabaseMigration::Models::CreateDataPumpSettings.new(
job_mode: 'SCHEMA',
data_pump_parameters:
OCI::DatabaseMigration::Models::CreateDataPumpParameters.new(
is_cluster: false,
estimate: 'STATISTICS',
table_exists_action: 'TRUNCATE',
exclude_parameters: %w[
INDEX
MATERIALIZED_VIEW
MATERIALIZED_VIEW_LOG
],
import_parallelism_degree: 151,
export_parallelism_degree: 6
),
metadata_remaps: [
OCI::DatabaseMigration::Models::MetadataRemap.new(
type: 'TABLESPACE',
old_value: 'EXAMPLE-oldValue-Value',
new_value: 'EXAMPLE-newValue-Value'
)
],
tablespace_details:
OCI::DatabaseMigration::Models::CreateNonADBRemapTablespaceDetails
.new(
target_type: 'NON_ADB_REMAP',
remap_target: 'EXAMPLE-remapTarget-Value'
),
export_directory_object:
OCI::DatabaseMigration::Models::CreateDirectoryObject.new(
name: 'EXAMPLE-name-Value', path: 'EXAMPLE-path-Value'
),
import_directory_object:
OCI::DatabaseMigration::Models::CreateDirectoryObject.new(
name: 'EXAMPLE-name-Value', path: 'EXAMPLE-path-Value'
)
),
advisor_settings:
OCI::DatabaseMigration::Models::CreateAdvisorSettings.new(
is_skip_advisor: false, is_ignore_errors: false
),
exclude_objects: [
OCI::DatabaseMigration::Models::DatabaseObject.new(
owner: 'EXAMPLE-owner-Value',
object_name: 'EXAMPLE-objectName-Value',
type: 'EXAMPLE-type-Value',
is_omit_excluded_table_from_replication: true
)
],
include_objects: [
OCI::DatabaseMigration::Models::DatabaseObject.new(
owner: 'EXAMPLE-owner-Value',
object_name: 'EXAMPLE-objectName-Value',
type: 'EXAMPLE-type-Value',
is_omit_excluded_table_from_replication: true
)
],
csv_text: 'EXAMPLE-csvText-Value',
golden_gate_details:
OCI::DatabaseMigration::Models::CreateGoldenGateDetails.new(
hub:
OCI::DatabaseMigration::Models::CreateGoldenGateHub.new(
rest_admin_credentials:
OCI::DatabaseMigration::Models::CreateAdminCredentials.new(
username: 'EXAMPLE-username-Value',
password: 'EXAMPLE-password-Value'
),
url: 'EXAMPLE-url-Value',
source_microservices_deployment_name:
'EXAMPLE-sourceMicroservicesDeploymentName-Value',
target_microservices_deployment_name:
'EXAMPLE-targetMicroservicesDeploymentName-Value',
compute_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-computeId-Value'
),
settings:
OCI::DatabaseMigration::Models::CreateGoldenGateSettings.new(
extract:
OCI::DatabaseMigration::Models::CreateExtract.new(
performance_profile: 'HIGH', long_trans_duration: 539
),
replicat:
OCI::DatabaseMigration::Models::CreateReplicat.new(
performance_profile: 'LOW',
map_parallelism: 94,
min_apply_parallelism: 598,
max_apply_parallelism: 918
),
acceptable_lag: 10
)
),
golden_gate_service_details:
OCI::DatabaseMigration::Models::CreateGoldenGateServiceDetails.new(
source_db_credentials:
OCI::DatabaseMigration::Models::DatabaseCredentials.new(
username: 'EXAMPLE-username-Value',
password: 'EXAMPLE-password-Value'
),
source_container_db_credentials:
OCI::DatabaseMigration::Models::DatabaseCredentials.new(
username: 'EXAMPLE-username-Value',
password: 'EXAMPLE-password-Value'
),
target_db_credentials:
OCI::DatabaseMigration::Models::DatabaseCredentials.new(
username: 'EXAMPLE-username-Value',
password: 'EXAMPLE-password-Value'
),
settings:
OCI::DatabaseMigration::Models::CreateGoldenGateSettings.new(
extract:
OCI::DatabaseMigration::Models::CreateExtract.new(
performance_profile: 'LOW', long_trans_duration: 543
),
replicat:
OCI::DatabaseMigration::Models::CreateReplicat.new(
performance_profile: 'HIGH',
map_parallelism: 38,
min_apply_parallelism: 2,
max_apply_parallelism: 776
),
acceptable_lag: 25
)
),
vault_details:
OCI::DatabaseMigration::Models::CreateVaultDetails.new(
compartment_id:
'ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value',
vault_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-vaultId-Value',
key_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-keyId-Value'
),
freeform_tags: {
'EXAMPLE_KEY_O0E77' => 'EXAMPLE_VALUE_Tdr6TsFqVL4dVEW5CDhr'
},
defined_tags: {
'EXAMPLE_KEY_UDtDy' => { 'EXAMPLE_KEY_I70UG' => 'EXAMPLE--Value' }
}
)
)
# Get the data from response
puts "#{create_migration_response.data}"