# 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).

import 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.config.from_file()


# Initialize service client with default config file
distributed_database_client = oci.distributed_database.DistributedDbServiceClient(
    config)


# Send the request to service, some parameters are not required, see API
# doc for more info
create_distributed_database_response = distributed_database_client.create_distributed_database(
    create_distributed_database_details=oci.distributed_database.models.CreateDistributedDatabaseDetails(
        compartment_id="ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value",
        display_name="EXAMPLE-displayName-Value",
        database_version="EXAMPLE-databaseVersion-Value",
        prefix="Crf",
        private_endpoint_ids=["EXAMPLE--Value"],
        sharding_method="SYSTEM",
        character_set="EXAMPLE-characterSet-Value",
        ncharacter_set="EXAMPLE-ncharacterSet-Value",
        listener_port=18093,
        ons_port_local=34173,
        ons_port_remote=14459,
        db_deployment_type="EXADB_XS",
        shard_details=[
            oci.distributed_database.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails(
                source="NEW_VAULT_AND_CLUSTER",
                admin_password="EXAMPLE-adminPassword-Value",
                availability_domain="EXAMPLE-availabilityDomain-Value",
                db_storage_vault_details=oci.distributed_database.models.DbStorageVaultDetails(
                    high_capacity_database_storage=600,
                    additional_flash_cache_in_percent=29),
                vm_cluster_details=oci.distributed_database.models.VmClusterDetails(
                    subnet_id="ocid1.test.oc1..<unique_ID>EXAMPLE-subnetId-Value",
                    backup_subnet_id="ocid1.test.oc1..<unique_ID>EXAMPLE-backupSubnetId-Value",
                    enabled_e_cpu_count=186,
                    ssh_public_keys=["EXAMPLE--Value"],
                    total_e_cpu_count=906,
                    vm_file_system_storage_size=232,
                    license_model="BRING_YOUR_OWN_LICENSE",
                    domain="EXAMPLE-domain-Value",
                    private_zone_id="ocid1.test.oc1..<unique_ID>EXAMPLE-privateZoneId-Value",
                    is_diagnostics_events_enabled=False,
                    is_health_monitoring_enabled=False,
                    is_incident_logs_enabled=False,
                    nsg_ids=["EXAMPLE--Value"],
                    backup_network_nsg_ids=["EXAMPLE--Value"]),
                peer_details=[
                    oci.distributed_database.models.CreateShardPeerWithExadbXsNewVaultAndClusterDetails(
                        availability_domain="EXAMPLE-availabilityDomain-Value",
                        protection_mode="MAXIMUM_PROTECTION",
                        transport_type="ASYNC")],
                shard_space="EXAMPLE-shardSpace-Value",
                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")],
        catalog_details=[
            oci.distributed_database.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails(
                source="NEW_VAULT_AND_CLUSTER",
                admin_password="EXAMPLE-adminPassword-Value",
                availability_domain="EXAMPLE-availabilityDomain-Value",
                db_storage_vault_details=oci.distributed_database.models.DbStorageVaultDetails(
                    high_capacity_database_storage=587,
                    additional_flash_cache_in_percent=21),
                vm_cluster_details=oci.distributed_database.models.VmClusterDetails(
                    subnet_id="ocid1.test.oc1..<unique_ID>EXAMPLE-subnetId-Value",
                    backup_subnet_id="ocid1.test.oc1..<unique_ID>EXAMPLE-backupSubnetId-Value",
                    enabled_e_cpu_count=12,
                    ssh_public_keys=["EXAMPLE--Value"],
                    total_e_cpu_count=374,
                    vm_file_system_storage_size=538,
                    license_model="BRING_YOUR_OWN_LICENSE",
                    domain="EXAMPLE-domain-Value",
                    private_zone_id="ocid1.test.oc1..<unique_ID>EXAMPLE-privateZoneId-Value",
                    is_diagnostics_events_enabled=False,
                    is_health_monitoring_enabled=False,
                    is_incident_logs_enabled=True,
                    nsg_ids=["EXAMPLE--Value"],
                    backup_network_nsg_ids=["EXAMPLE--Value"]),
                peer_details=[
                    oci.distributed_database.models.CreateCatalogPeerWithExadbXsNewVaultAndClusterDetails(
                        availability_domain="EXAMPLE-availabilityDomain-Value",
                        protection_mode="MAXIMUM_PERFORMANCE",
                        transport_type="FASTSYNC")],
                shard_space="EXAMPLE-shardSpace-Value",
                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")],
        chunks=714,
        listener_port_tls=43513,
        scan_listener_port=10358,
        replication_method="DG",
        replication_factor=6,
        replication_unit=369,
        gsm_ssh_public_key="EXAMPLE-gsmSshPublicKey-Value",
        db_backup_config=oci.distributed_database.models.DistributedDbBackupConfig(
            is_auto_backup_enabled=False,
            recovery_window_in_days=27,
            auto_backup_window="SLOT_SEVEN",
            auto_full_backup_window="SLOT_TEN",
            auto_full_backup_day="THURSDAY",
            can_run_immediate_full_backup=True,
            is_remote_backup_enabled=True,
            remote_region="EXAMPLE-remoteRegion-Value",
            backup_destination_details=[
                oci.distributed_database.models.DistributedDbBackupDestination(
                    type="NFS",
                    id="ocid1.test.oc1..<unique_ID>EXAMPLE-id-Value",
                    vpc_user="EXAMPLE-vpcUser-Value",
                    vpc_password="EXAMPLE-vpcPassword-Value",
                    is_zero_data_loss_enabled=False,
                    internet_proxy="EXAMPLE-internetProxy-Value",
                    dbrs_policy_id="ocid1.test.oc1..<unique_ID>EXAMPLE-dbrsPolicyId-Value",
                    is_remote=False,
                    remote_region="EXAMPLE-remoteRegion-Value")],
            backup_deletion_policy="DELETE_IMMEDIATELY"),
        freeform_tags={
            'EXAMPLE_KEY_c6LZV': 'EXAMPLE_VALUE_uS0zsK6GpShzEWH76TOv'},
        defined_tags={
            'EXAMPLE_KEY_Xcona': {
                'EXAMPLE_KEY_DSYwv': 'EXAMPLE--Value'}}),
    opc_retry_token="EXAMPLE-opcRetryToken-Value",
    opc_request_id="GGZRCVTEM1OEZWIFHEQM<unique_ID>")

# Get the data from response
print(create_distributed_database_response.data)