import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Mysql Db System resource in Oracle Cloud Infrastructure MySQL Database service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/mysql/latest/MysqlDbSystem * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/mysql * * Creates and launches a DB System. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testMysqlDbSystem = new oci.mysql.MysqlDbSystem("test_mysql_db_system", { * availabilityDomain: mysqlDbSystemAvailabilityDomain, * compartmentId: compartmentId, * shapeName: mysqlShapeName, * subnetId: testSubnet.id, * accessMode: mysqlDbSystemAccessMode, * adminPassword: mysqlDbSystemAdminPassword, * adminUsername: mysqlDbSystemAdminUsername, * backupPolicy: { * copyPolicies: [{ * copyToRegion: mysqlDbSystemBackupPolicyCopyPoliciesCopyToRegion, * backupCopyRetentionInDays: Number(mysqlDbSystemBackupPolicyCopyPoliciesBackupCopyRetentionInDays), * }], * definedTags: { * "foo-namespace.bar-key": "value", * }, * freeformTags: { * "bar-key": "value", * }, * isEnabled: mysqlDbSystemBackupPolicyIsEnabled === "true", * pitrPolicy: { * isEnabled: mysqlDbSystemBackupPolicyPitrPolicyIsEnabled === "true", * }, * retentionInDays: Number(mysqlDbSystemBackupPolicyRetentionInDays), * softDelete: mysqlDbSystemBackupPolicySoftDelete, * windowStartTime: mysqlDbSystemBackupPolicyWindowStartTime, * }, * configurationId: testConfiguration.id, * crashRecovery: mysqlDbSystemCrashRecovery, * customerContacts: [{ * email: mysqlDbSystemCustomerContactsEmail, * }], * dataStorage: { * isAutoExpandStorageEnabled: mysqlDbSystemDataStorageIsAutoExpandStorageEnabled === "true", * maxStorageSizeInGbs: Number(mysqlDbSystemDataStorageMaxStorageSizeInGbs), * }, * dataStorageSizeInGb: Number(mysqlDbSystemDataStorageSizeInGb), * databaseConsole: { * status: mysqlDbSystemDatabaseConsoleStatus, * port: Number(mysqlDbSystemDatabaseConsolePort), * }, * databaseManagement: mysqlDbSystemDatabaseManagement, * databaseMode: mysqlDbSystemDatabaseMode, * definedTags: { * "foo-namespace.bar-key": "value", * }, * deletionPolicies: [{ * automaticBackupRetention: mysqlDbSystemDeletionPolicyAutomaticBackupRetention, * finalBackup: mysqlDbSystemDeletionPolicyFinalBackup, * isDeleteProtected: mysqlDbSystemDeletionPolicyIsDeleteProtected === "true", * }], * description: mysqlDbSystemDescription, * displayName: mysqlDbSystemDisplayName, * encryptData: { * keyGenerationType: mysqlDbSystemEncryptDataKeyGenerationType, * keyId: testKey.id, * }, * faultDomain: mysqlDbSystemFaultDomain, * freeformTags: { * "bar-key": "value", * }, * hostnameLabel: mysqlDbSystemHostnameLabel, * ipAddress: mysqlDbSystemIpAddress, * ipv6addressIpv6subnetCidrPairDetails: { * ipv6address: mysqlDbSystemIpv6addressIpv6subnetCidrPairDetailsIpv6address, * ipv6subnetCidr: mysqlDbSystemIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr, * }, * isHighlyAvailable: mysqlDbSystemIsHighlyAvailable === "true", * isIpv6enabled: mysqlDbSystemIsIpv6enabled === "true", * maintenance: { * windowStartTime: mysqlDbSystemMaintenanceWindowStartTime, * maintenanceDisabledWindows: [{ * timeEnd: mysqlDbSystemMaintenanceMaintenanceDisabledWindowsTimeEnd, * timeStart: mysqlDbSystemMaintenanceMaintenanceDisabledWindowsTimeStart, * }], * maintenanceScheduleType: mysqlDbSystemMaintenanceMaintenanceScheduleType, * versionPreference: mysqlDbSystemMaintenanceVersionPreference, * versionTrackPreference: mysqlDbSystemMaintenanceVersionTrackPreference, * }, * nsgIds: mysqlDbSystemNsgIds, * port: Number(mysqlDbSystemPort), * portX: Number(mysqlDbSystemPortX), * readEndpoint: { * excludeIps: mysqlDbSystemReadEndpointExcludeIps, * isEnabled: mysqlDbSystemReadEndpointIsEnabled === "true", * readEndpointHostnameLabel: mysqlDbSystemReadEndpointReadEndpointHostnameLabel, * readEndpointIpAddress: mysqlDbSystemReadEndpointReadEndpointIpAddress, * readEndpointIpv6addressIpv6subnetCidrPairDetails: { * ipv6address: mysqlDbSystemReadEndpointReadEndpointIpv6addressIpv6subnetCidrPairDetailsIpv6address, * ipv6subnetCidr: mysqlDbSystemReadEndpointReadEndpointIpv6addressIpv6subnetCidrPairDetailsIpv6subnetCidr, * }, * }, * rest: { * configuration: mysqlDbSystemRestConfiguration, * port: Number(mysqlDbSystemRestPort), * }, * secureConnections: { * certificateGenerationType: mysqlDbSystemSecureConnectionsCertificateGenerationType, * certificateId: testCertificate.id, * }, * securityAttributes: mysqlDbSystemSecurityAttributes, * source: { * sourceType: mysqlDbSystemSourceSourceType, * backupId: testBackup.id, * }, * telemetryConfiguration: { * logs: [{ * destination: mysqlDbSystemTelemetryConfigurationLogsDestination, * destinationConfigurations: [{ * key: mysqlDbSystemTelemetryConfigurationLogsDestinationConfigurationsKey, * value: mysqlDbSystemTelemetryConfigurationLogsDestinationConfigurationsValue, * }], * logTypes: mysqlDbSystemTelemetryConfigurationLogsLogTypes, * }], * }, * }); * ``` * * ## Import * * MysqlDbSystems can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Mysql/mysqlDbSystem:MysqlDbSystem test_mysql_db_system "id" * ``` */ export declare class MysqlDbSystem extends pulumi.CustomResource { /** * Get an existing MysqlDbSystem resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: MysqlDbSystemState, opts?: pulumi.CustomResourceOptions): MysqlDbSystem; /** * Returns true if the given object is an instance of MysqlDbSystem. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is MysqlDbSystem; /** * (Updatable) 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 [offlineMode](https://dev.mysql.com/doc/en/server-system-variables.html#sysvar_offline_mode) to ON. */ readonly accessMode: pulumi.Output; /** * The password for the administrative user. The password must be between 8 and 32 characters long, and must contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (nonalphanumeric) character. */ readonly adminPassword: pulumi.Output; /** * The username for the administrative user. */ readonly adminUsername: pulumi.Output; /** * 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. */ readonly availabilityDomain: pulumi.Output; /** * (Updatable) Backup policy as optionally used for DB System Creation. */ readonly backupPolicy: pulumi.Output; /** * A list with a summary of all the Channels attached to the DB System. */ readonly channels: pulumi.Output; /** * The OCID of the compartment. */ readonly compartmentId: pulumi.Output; /** * (Updatable) The OCID of the Configuration to be used for this DB System. */ readonly configurationId: pulumi.Output; /** * (Updatable) 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. */ readonly crashRecovery: pulumi.Output; /** * The availability domain and fault domain a DB System is placed in. */ readonly currentPlacements: pulumi.Output; /** * (Updatable) The list of customer email addresses that receive information from Oracle about the specified Oracle Cloud Infrastructure 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. */ readonly customerContacts: pulumi.Output; /** * (Updatable) Data Storage configuration properties. */ readonly dataStorage: pulumi.Output; /** * (Updatable) Initial size of the data volume in GBs that will be created and attached. Keep in mind that this only specifies the size of the database data volume, the log volume for the database will be scaled appropriately with its shape. It is required if you are creating a new database. It cannot be set if you are creating a database from a backup. */ readonly dataStorageSizeInGb: pulumi.Output; /** * (Updatable) Details required to configure the database console while creating a DB System. */ readonly databaseConsole: pulumi.Output; /** * (Updatable) Whether to enable monitoring via the Database Management service. */ readonly databaseManagement: pulumi.Output; /** * (Updatable) 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. */ readonly databaseMode: pulumi.Output; /** * (Updatable) Usage of predefined tag keys. These predefined keys are scoped to namespaces. Example: `{"foo-namespace.bar-key": "value"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) Policy for how the DB System and related resources should be handled at the time of its deletion. */ readonly deletionPolicies: pulumi.Output; /** * (Updatable) User-provided data about the DB System. */ readonly description: pulumi.Output; /** * (Updatable) The user-friendly name for the DB System. It does not have to be unique. */ readonly displayName: pulumi.Output; /** * (Updatable) Encrypt data details. */ readonly encryptData: pulumi.Output; /** * The network endpoints available for this DB System. */ readonly endpoints: pulumi.Output; /** * 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. */ readonly faultDomain: pulumi.Output; /** * (Updatable) Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * A summary of a HeatWave cluster. */ readonly heatWaveClusters: pulumi.Output; /** * (Updatable) The hostname for the primary endpoint of the DB System. Used for DNS. * * 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. */ readonly hostnameLabel: pulumi.Output; /** * 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. */ readonly ipAddress: pulumi.Output; /** * (Updatable) Details to assign an IPv6 subnet prefix or IPv6 address to a resource. */ readonly ipv6addressIpv6subnetCidrPairDetails: pulumi.Output; /** * If the DB System has a HeatWave Cluster attached. */ readonly isHeatWaveClusterAttached: pulumi.Output; /** * (Updatable) 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. */ readonly isHighlyAvailable: pulumi.Output; /** * (Updatable) Whether to allocate an IPv6 address at DB system creation from an IPv6 enabled subnet. When provided you may optionally provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your choice to assign the IPv6 address from. If ipv6AddressIpv6SubnetCidrPairDetails is not provided then an IPv6 prefix is chosen for you. */ readonly isIpv6enabled: pulumi.Output; /** * Additional information about the current lifecycleState. */ readonly lifecycleDetails: pulumi.Output; /** * (Updatable) The Maintenance Policy for the DB System or Read Replica that this model is included in. `maintenance` and `backupPolicy` cannot be updated in the same request. */ readonly maintenance: pulumi.Output; /** * The specific MySQL version identifier. */ readonly mysqlVersion: pulumi.Output; /** * (Updatable) Network Security Group OCIDs used for the VNIC attachment. */ readonly nsgIds: pulumi.Output; /** * Point-in-time Recovery details like earliest and latest recovery time point for the DB System. */ readonly pointInTimeRecoveryDetails: pulumi.Output; /** * The port for primary endpoint of the DB System to listen on. */ readonly port: pulumi.Output; /** * The TCP network port on which X Plugin listens for connections. This is the X Plugin equivalent of port. */ readonly portX: pulumi.Output; /** * (Updatable) Details required to create a Read Endpoint. */ readonly readEndpoint: pulumi.Output; /** * (Updatable) Details required to configure REST while creating a DB System. */ readonly rest: pulumi.Output; /** * (Updatable) Secure connection configuration details. */ readonly secureConnections: pulumi.Output; /** * (Updatable) Security Attributes for this resource. Each key is predefined and scoped to a namespace. For more information, see [ZPR Artifacts](https://docs.oracle.com/en-us/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm). Example: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "audit"}}}` */ readonly securityAttributes: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) 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 [ListShapes](https://docs.cloud.oracle.com/iaas/api/#/en/mysql/20190415/ShapeSummary/ListShapes) operation. */ readonly shapeName: pulumi.Output; /** * It is applicable only for stopping a DB System. Could be set to `FAST`, `SLOW` or `IMMEDIATE`. Default value is `FAST`. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly shutdownType: pulumi.Output; /** * Parameters detailing how to provision the initial data of the system. */ readonly source: pulumi.Output; /** * (Updatable) The target state for the DB System. Could be set to `ACTIVE` or `INACTIVE`. */ readonly state: pulumi.Output; /** * The OCID of the subnet the DB System is associated with. */ readonly subnetId: pulumi.Output; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) Details required to configure how MySQL telemetry should be exposed. */ readonly telemetryConfiguration: pulumi.Output; /** * The date and time the DB System was created. */ readonly timeCreated: pulumi.Output; /** * The time the DB System was last updated. */ readonly timeUpdated: pulumi.Output; /** * Create a MysqlDbSystem resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: MysqlDbSystemArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering MysqlDbSystem resources. */ export interface MysqlDbSystemState { /** * (Updatable) 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 [offlineMode](https://dev.mysql.com/doc/en/server-system-variables.html#sysvar_offline_mode) to ON. */ accessMode?: pulumi.Input; /** * The password for the administrative user. The password must be between 8 and 32 characters long, and must contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (nonalphanumeric) character. */ adminPassword?: pulumi.Input; /** * The username for the administrative user. */ adminUsername?: pulumi.Input; /** * 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?: pulumi.Input; /** * (Updatable) Backup policy as optionally used for DB System Creation. */ backupPolicy?: pulumi.Input; /** * A list with a summary of all the Channels attached to the DB System. */ channels?: pulumi.Input[] | undefined>; /** * The OCID of the compartment. */ compartmentId?: pulumi.Input; /** * (Updatable) The OCID of the Configuration to be used for this DB System. */ configurationId?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * The availability domain and fault domain a DB System is placed in. */ currentPlacements?: pulumi.Input[] | undefined>; /** * (Updatable) The list of customer email addresses that receive information from Oracle about the specified Oracle Cloud Infrastructure 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?: pulumi.Input[] | undefined>; /** * (Updatable) Data Storage configuration properties. */ dataStorage?: pulumi.Input; /** * (Updatable) Initial size of the data volume in GBs that will be created and attached. Keep in mind that this only specifies the size of the database data volume, the log volume for the database will be scaled appropriately with its shape. It is required if you are creating a new database. It cannot be set if you are creating a database from a backup. */ dataStorageSizeInGb?: pulumi.Input; /** * (Updatable) Details required to configure the database console while creating a DB System. */ databaseConsole?: pulumi.Input; /** * (Updatable) Whether to enable monitoring via the Database Management service. */ databaseManagement?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * (Updatable) Usage of predefined tag keys. These predefined keys are scoped to namespaces. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Policy for how the DB System and related resources should be handled at the time of its deletion. */ deletionPolicies?: pulumi.Input[] | undefined>; /** * (Updatable) User-provided data about the DB System. */ description?: pulumi.Input; /** * (Updatable) The user-friendly name for the DB System. It does not have to be unique. */ displayName?: pulumi.Input; /** * (Updatable) Encrypt data details. */ encryptData?: pulumi.Input; /** * The network endpoints available for this DB System. */ endpoints?: pulumi.Input[] | undefined>; /** * 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?: pulumi.Input; /** * (Updatable) Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * A summary of a HeatWave cluster. */ heatWaveClusters?: pulumi.Input[] | undefined>; /** * (Updatable) The hostname for the primary endpoint of the DB System. Used for DNS. * * 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?: pulumi.Input; /** * 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?: pulumi.Input; /** * (Updatable) Details to assign an IPv6 subnet prefix or IPv6 address to a resource. */ ipv6addressIpv6subnetCidrPairDetails?: pulumi.Input; /** * If the DB System has a HeatWave Cluster attached. */ isHeatWaveClusterAttached?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * (Updatable) Whether to allocate an IPv6 address at DB system creation from an IPv6 enabled subnet. When provided you may optionally provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your choice to assign the IPv6 address from. If ipv6AddressIpv6SubnetCidrPairDetails is not provided then an IPv6 prefix is chosen for you. */ isIpv6enabled?: pulumi.Input; /** * Additional information about the current lifecycleState. */ lifecycleDetails?: pulumi.Input; /** * (Updatable) The Maintenance Policy for the DB System or Read Replica that this model is included in. `maintenance` and `backupPolicy` cannot be updated in the same request. */ maintenance?: pulumi.Input; /** * The specific MySQL version identifier. */ mysqlVersion?: pulumi.Input; /** * (Updatable) Network Security Group OCIDs used for the VNIC attachment. */ nsgIds?: pulumi.Input[] | undefined>; /** * Point-in-time Recovery details like earliest and latest recovery time point for the DB System. */ pointInTimeRecoveryDetails?: pulumi.Input[] | undefined>; /** * The port for primary endpoint of the DB System to listen on. */ port?: pulumi.Input; /** * The TCP network port on which X Plugin listens for connections. This is the X Plugin equivalent of port. */ portX?: pulumi.Input; /** * (Updatable) Details required to create a Read Endpoint. */ readEndpoint?: pulumi.Input; /** * (Updatable) Details required to configure REST while creating a DB System. */ rest?: pulumi.Input; /** * (Updatable) Secure connection configuration details. */ secureConnections?: pulumi.Input; /** * (Updatable) Security Attributes for this resource. Each key is predefined and scoped to a namespace. For more information, see [ZPR Artifacts](https://docs.oracle.com/en-us/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm). Example: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "audit"}}}` */ securityAttributes?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) 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 [ListShapes](https://docs.cloud.oracle.com/iaas/api/#/en/mysql/20190415/ShapeSummary/ListShapes) operation. */ shapeName?: pulumi.Input; /** * It is applicable only for stopping a DB System. Could be set to `FAST`, `SLOW` or `IMMEDIATE`. Default value is `FAST`. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ shutdownType?: pulumi.Input; /** * Parameters detailing how to provision the initial data of the system. */ source?: pulumi.Input; /** * (Updatable) The target state for the DB System. Could be set to `ACTIVE` or `INACTIVE`. */ state?: pulumi.Input; /** * The OCID of the subnet the DB System is associated with. */ subnetId?: pulumi.Input; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Details required to configure how MySQL telemetry should be exposed. */ telemetryConfiguration?: pulumi.Input; /** * The date and time the DB System was created. */ timeCreated?: pulumi.Input; /** * The time the DB System was last updated. */ timeUpdated?: pulumi.Input; } /** * The set of arguments for constructing a MysqlDbSystem resource. */ export interface MysqlDbSystemArgs { /** * (Updatable) 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 [offlineMode](https://dev.mysql.com/doc/en/server-system-variables.html#sysvar_offline_mode) to ON. */ accessMode?: pulumi.Input; /** * The password for the administrative user. The password must be between 8 and 32 characters long, and must contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (nonalphanumeric) character. */ adminPassword?: pulumi.Input; /** * The username for the administrative user. */ adminUsername?: pulumi.Input; /** * 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: pulumi.Input; /** * (Updatable) Backup policy as optionally used for DB System Creation. */ backupPolicy?: pulumi.Input; /** * The OCID of the compartment. */ compartmentId: pulumi.Input; /** * (Updatable) The OCID of the Configuration to be used for this DB System. */ configurationId?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * (Updatable) The list of customer email addresses that receive information from Oracle about the specified Oracle Cloud Infrastructure 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?: pulumi.Input[] | undefined>; /** * (Updatable) Data Storage configuration properties. */ dataStorage?: pulumi.Input; /** * (Updatable) Initial size of the data volume in GBs that will be created and attached. Keep in mind that this only specifies the size of the database data volume, the log volume for the database will be scaled appropriately with its shape. It is required if you are creating a new database. It cannot be set if you are creating a database from a backup. */ dataStorageSizeInGb?: pulumi.Input; /** * (Updatable) Details required to configure the database console while creating a DB System. */ databaseConsole?: pulumi.Input; /** * (Updatable) Whether to enable monitoring via the Database Management service. */ databaseManagement?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * (Updatable) Usage of predefined tag keys. These predefined keys are scoped to namespaces. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Policy for how the DB System and related resources should be handled at the time of its deletion. */ deletionPolicies?: pulumi.Input[] | undefined>; /** * (Updatable) User-provided data about the DB System. */ description?: pulumi.Input; /** * (Updatable) The user-friendly name for the DB System. It does not have to be unique. */ displayName?: pulumi.Input; /** * (Updatable) Encrypt data details. */ encryptData?: pulumi.Input; /** * 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?: pulumi.Input; /** * (Updatable) Simple key-value pair applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The hostname for the primary endpoint of the DB System. Used for DNS. * * 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?: pulumi.Input; /** * 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?: pulumi.Input; /** * (Updatable) Details to assign an IPv6 subnet prefix or IPv6 address to a resource. */ ipv6addressIpv6subnetCidrPairDetails?: pulumi.Input; /** * (Updatable) 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?: pulumi.Input; /** * (Updatable) Whether to allocate an IPv6 address at DB system creation from an IPv6 enabled subnet. When provided you may optionally provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your choice to assign the IPv6 address from. If ipv6AddressIpv6SubnetCidrPairDetails is not provided then an IPv6 prefix is chosen for you. */ isIpv6enabled?: pulumi.Input; /** * (Updatable) The Maintenance Policy for the DB System or Read Replica that this model is included in. `maintenance` and `backupPolicy` cannot be updated in the same request. */ maintenance?: pulumi.Input; /** * The specific MySQL version identifier. */ mysqlVersion?: pulumi.Input; /** * (Updatable) Network Security Group OCIDs used for the VNIC attachment. */ nsgIds?: pulumi.Input[] | undefined>; /** * The port for primary endpoint of the DB System to listen on. */ port?: pulumi.Input; /** * The TCP network port on which X Plugin listens for connections. This is the X Plugin equivalent of port. */ portX?: pulumi.Input; /** * (Updatable) Details required to create a Read Endpoint. */ readEndpoint?: pulumi.Input; /** * (Updatable) Details required to configure REST while creating a DB System. */ rest?: pulumi.Input; /** * (Updatable) Secure connection configuration details. */ secureConnections?: pulumi.Input; /** * (Updatable) Security Attributes for this resource. Each key is predefined and scoped to a namespace. For more information, see [ZPR Artifacts](https://docs.oracle.com/en-us/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm). Example: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "audit"}}}` */ securityAttributes?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) 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 [ListShapes](https://docs.cloud.oracle.com/iaas/api/#/en/mysql/20190415/ShapeSummary/ListShapes) operation. */ shapeName: pulumi.Input; /** * It is applicable only for stopping a DB System. Could be set to `FAST`, `SLOW` or `IMMEDIATE`. Default value is `FAST`. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ shutdownType?: pulumi.Input; /** * Parameters detailing how to provision the initial data of the system. */ source?: pulumi.Input; /** * (Updatable) The target state for the DB System. Could be set to `ACTIVE` or `INACTIVE`. */ state?: pulumi.Input; /** * The OCID of the subnet the DB System is associated with. */ subnetId: pulumi.Input; /** * (Updatable) Details required to configure how MySQL telemetry should be exposed. */ telemetryConfiguration?: pulumi.Input; } //# sourceMappingURL=mysqlDbSystem.d.ts.map