/** * MySQL Database Service API * The API for the MySQL Database Service * OpenAPI spec version: 20190415 * Contact: mysql-cloud-dev_ww_grp@oracle.com * * NOTE: This class is auto generated by OracleSDKGenerator. * Do not edit the class manually. * * Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved. * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ import * as model from "../model"; /** * Details required to create a DB System. * */ export interface CreateDbSystemDetails { /** * The user-friendly name for the DB System. It does not have to be unique. */ "displayName"?: string; /** * User-provided data about the DB System. */ "description"?: string; /** * The OCID of the compartment. */ "compartmentId": string; "rest"?: model.CreateRestDetails; "databaseConsole"?: model.CreateDatabaseConsoleDetails; /** * Specifies if the DB System is highly available. *
When creating a DB System with High Availability, three instances * are created and placed according to your region- and * subnet-type. The secondaries are placed automatically in the other * two availability or fault domains. You can choose the preferred * location of your primary instance, only. * */ "isHighlyAvailable"?: boolean; /** * The availability domain on which to deploy the Read/Write endpoint. This defines the preferred primary instance. *
In a failover scenario, the Read/Write endpoint is redirected to one of the other availability domains * and the MySQL instance in that domain is promoted to the primary instance. * This redirection does not affect the IP address of the DB System in any way. *
For a standalone DB System, this defines the availability domain in which the DB System is placed. * */ "availabilityDomain"?: string; /** * The fault domain on which to deploy the Read/Write endpoint. This defines the preferred primary instance. *
In a failover scenario, the Read/Write endpoint is redirected to one of the other fault domains * and the MySQL instance in that domain is promoted to the primary instance. * This redirection does not affect the IP address of the DB System in any way. *
For a standalone DB System, this defines the fault domain in which the DB System is placed.
*
*/
"faultDomain"?: string;
/**
* The OCID of the Configuration to be used for this DB System.
*/
"configurationId"?: string;
/**
* The name of the shape. The shape determines the resources allocated
* - CPU cores and memory for VM shapes; CPU cores, memory and storage
* for non-VM (or bare metal) shapes. To get a list of shapes, use the
* {@link #listShapes(ListShapesRequest) listShapes} operation.
*
*/
"shapeName": string;
/**
* The specific MySQL version identifier.
*/
"mysqlVersion"?: string;
/**
* The OCID of the subnet the DB System is associated with.
*
*/
"subnetId": string;
/**
* Network Security Group OCIDs used for the VNIC attachment.
*/
"nsgIds"?: Array
The value is the hostname portion of the primary private IP's fully qualified domain name (FQDN)
* (for example, \"dbsystem-1\" in FQDN \"dbsystem-1.subnet123.vcn1.oraclevcn.com\").
*
Must be unique across all VNICs in the subnet and comply with RFC 952 and RFC 1123.
*
*/
"hostnameLabel"?: string;
/**
* The IP address the DB System is configured to listen on.
* A private IP address of your choice to assign to the primary endpoint of the DB System.
* Must be an available IP address within the subnet's CIDR. If you don't specify a value,
* Oracle automatically assigns a private IP address from the subnet. This should be a
* \"dotted-quad\" style IPv4 address.
*
*/
"ipAddress"?: string;
/**
* The port for primary endpoint of the DB System to listen on. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
*/
"port"?: number;
/**
* The TCP network port on which X Plugin listens for connections. This is the X Plugin equivalent of port.
* Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
*/
"portX"?: number;
"backupPolicy"?: model.CreateBackupPolicyDetails;
"source"?: model.CreateDbSystemSourceFromBackupDetails | model.CreateDbSystemSourceFromNoneDetails | model.CreateDbSystemSourceImportFromUrlDetails | model.CreateDbSystemSourceFromPitrDetails;
"maintenance"?: model.CreateMaintenanceDetails;
/**
* Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only.
* Example: {@code {\"bar-key\": \"value\"}}
*
*/
"freeformTags"?: {
[key: string]: string;
};
/**
* Usage of predefined tag keys. These predefined keys are scoped to namespaces.
* Example: {@code {\"foo-namespace\": {\"bar-key\": \"value\"}}}
*
*/
"definedTags"?: {
[key: string]: {
[key: string]: any;
};
};
"deletionPolicy"?: model.CreateDeletionPolicyDetails;
/**
* Whether to run the DB System with InnoDB Redo Logs and the Double Write Buffer enabled or disabled,
* and whether to enable or disable syncing of the Binary Logs.
*
*/
"crashRecovery"?: model.CrashRecoveryStatus;
/**
* Whether to enable monitoring via the Database Management service.
*
*/
"databaseManagement"?: model.DatabaseManagementStatus;
"secureConnections"?: model.SecureConnectionDetails;
"encryptData"?: model.EncryptDataDetails;
/**
* The database mode indicating the types of statements that will be allowed to run in the DB system.
* This mode will apply only to statements run by user connections. Replicated write statements will continue
* to be allowed regardless of the DatabaseMode.
* - READ_WRITE (default): allow running read and write statements on the DB system;
* - READ_ONLY: only allow running read statements on the DB system.
*
*/
"databaseMode"?: string;
/**
* The access mode indicating if the database access will be restricted only to administrators or not:
* - UNRESTRICTED (default): the access to the database is not restricted;
* - RESTRICTED: the access will be allowed only to users with specific privileges;
* RESTRICTED will correspond to setting the MySQL system variable
* [offline_mode](https://dev.mysql.com/doc/en/server-system-variables.html#sysvar_offline_mode) to ON.
*
*/
"accessMode"?: string;
/**
* The list of customer email addresses that receive information from Oracle about the specified OCI DB System resource.
* Oracle uses these email addresses to send notifications about planned and unplanned software maintenance updates, information about system hardware, and other information needed by administrators.
* Up to 10 email addresses can be added to the customer contacts for a DB System.
*
*/
"customerContacts"?: Array