# 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
globally_distributed_database_client =
  OCI::GloballyDistributedDatabase::ShardedDatabaseServiceClient.new(
    config: config
  )

# Send the request to service, some parameters are not required, see API doc for more info
create_sharded_database_response =
  globally_distributed_database_client.create_sharded_database(
    OCI::GloballyDistributedDatabase::Models::CreateDedicatedShardedDatabase
      .new(
      db_deployment_type: 'DEDICATED',
      compartment_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value',
      display_name: 'EXAMPLE-displayName-Value',
      db_workload: 'OLTP',
      sharding_method: 'USER',
      db_version: 'EXAMPLE-dbVersion-Value',
      character_set: 'EXAMPLE-characterSet-Value',
      ncharacter_set: 'EXAMPLE-ncharacterSet-Value',
      listener_port: 62_108,
      listener_port_tls: 18_646,
      ons_port_local: 51_880,
      ons_port_remote: 62_334,
      prefix: 'Xcg',
      shard_details: [
        OCI::GloballyDistributedDatabase::Models::CreateDedicatedShardDetail
          .new(
          admin_password: 'EXAMPLE-adminPassword-Value',
          compute_count: 8518.397,
          data_storage_size_in_gbs: 2460.2217,
          is_auto_scaling_enabled: false,
          cloud_autonomous_vm_cluster_id:
            'ocid1.test.oc1..<unique_ID>EXAMPLE-cloudAutonomousVmClusterId-Value',
          encryption_key_details:
            OCI::GloballyDistributedDatabase::Models::DedicatedShardOrCatalogEncryptionKeyDetails
              .new(
              vault_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-vaultId-Value',
              kms_key_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-kmsKeyId-Value',
              kms_key_version_id:
                'ocid1.test.oc1..<unique_ID>EXAMPLE-kmsKeyVersionId-Value'
            ),
          shard_space: 'EXAMPLE-shardSpace-Value',
          peer_cloud_autonomous_vm_cluster_id:
            'ocid1.test.oc1..<unique_ID>EXAMPLE-peerCloudAutonomousVmClusterId-Value'
        )
      ],
      catalog_details: [
        OCI::GloballyDistributedDatabase::Models::CreateDedicatedCatalogDetail
          .new(
          admin_password: 'EXAMPLE-adminPassword-Value',
          compute_count: 4387.8813,
          data_storage_size_in_gbs: 3617.9263,
          is_auto_scaling_enabled: true,
          cloud_autonomous_vm_cluster_id:
            'ocid1.test.oc1..<unique_ID>EXAMPLE-cloudAutonomousVmClusterId-Value',
          encryption_key_details:
            OCI::GloballyDistributedDatabase::Models::DedicatedShardOrCatalogEncryptionKeyDetails
              .new(
              vault_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-vaultId-Value',
              kms_key_id: 'ocid1.test.oc1..<unique_ID>EXAMPLE-kmsKeyId-Value',
              kms_key_version_id:
                'ocid1.test.oc1..<unique_ID>EXAMPLE-kmsKeyVersionId-Value'
            ),
          peer_cloud_autonomous_vm_cluster_id:
            'ocid1.test.oc1..<unique_ID>EXAMPLE-peerCloudAutonomousVmClusterId-Value'
        )
      ],
      freeform_tags: {
        'EXAMPLE_KEY_zSVSd' => 'EXAMPLE_VALUE_XwYRxeQdJRb16O7I9ho2'
      },
      defined_tags: {
        'EXAMPLE_KEY_qTUUE' => { 'EXAMPLE_KEY_qHAl2' => 'EXAMPLE--Value' }
      },
      cluster_certificate_common_name:
        'EXAMPLE-clusterCertificateCommonName-Value',
      chunks: 542
    )
  )

# Get the data from response
puts "#{create_sharded_database_response.data}"

Was this article helpful?