Google Cloud (GCP) Classic

v6.44.0 published on Tuesday, Nov 29, 2022 by Pulumi

DatabaseInstance

Creates a new Google SQL Database Instance. For more information, see the official documentation, or the JSON API.

NOTE on gcp.sql.DatabaseInstance: - Second-generation instances include a default ‘root’@’%’ user with no password. This user will be deleted by the provider on instance creation. You should use gcp.sql.User to define a custom user with a restricted host and strong password.

Note: On newer versions of the provider, you must explicitly set deletion_protection=false (and run pulumi update to write the field to state) in order to destroy an instance. It is recommended to not set this field (or set it to true) until you’re ready to destroy the instance and its databases.

Example Usage

SQL Second Generation Instance

using System.Collections.Generic;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() => 
{
    var main = new Gcp.Sql.DatabaseInstance("main", new()
    {
        DatabaseVersion = "POSTGRES_14",
        Region = "us-central1",
        Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
        {
            Tier = "db-f1-micro",
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/sql"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sql.NewDatabaseInstance(ctx, "main", &sql.DatabaseInstanceArgs{
			DatabaseVersion: pulumi.String("POSTGRES_14"),
			Region:          pulumi.String("us-central1"),
			Settings: &sql.DatabaseInstanceSettingsArgs{
				Tier: pulumi.String("db-f1-micro"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.sql.DatabaseInstance;
import com.pulumi.gcp.sql.DatabaseInstanceArgs;
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var main = new DatabaseInstance("main", DatabaseInstanceArgs.builder()        
            .databaseVersion("POSTGRES_14")
            .region("us-central1")
            .settings(DatabaseInstanceSettingsArgs.builder()
                .tier("db-f1-micro")
                .build())
            .build());

    }
}
import pulumi
import pulumi_gcp as gcp

main = gcp.sql.DatabaseInstance("main",
    database_version="POSTGRES_14",
    region="us-central1",
    settings=gcp.sql.DatabaseInstanceSettingsArgs(
        tier="db-f1-micro",
    ))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const main = new gcp.sql.DatabaseInstance("main", {
    databaseVersion: "POSTGRES_14",
    region: "us-central1",
    settings: {
        // Second-generation instance tiers are based on the machine
        // type. See argument reference below.
        tier: "db-f1-micro",
    },
});
resources:
  main:
    type: gcp:sql:DatabaseInstance
    properties:
      databaseVersion: POSTGRES_14
      region: us-central1
      settings:
        tier: db-f1-micro

Private IP Instance

using System.Collections.Generic;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Random = Pulumi.Random;

return await Deployment.RunAsync(() => 
{
    var privateNetwork = new Gcp.Compute.Network("privateNetwork", new()
    {
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var privateIpAddress = new Gcp.Compute.GlobalAddress("privateIpAddress", new()
    {
        Purpose = "VPC_PEERING",
        AddressType = "INTERNAL",
        PrefixLength = 16,
        Network = privateNetwork.Id,
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var privateVpcConnection = new Gcp.ServiceNetworking.Connection("privateVpcConnection", new()
    {
        Network = privateNetwork.Id,
        Service = "servicenetworking.googleapis.com",
        ReservedPeeringRanges = new[]
        {
            privateIpAddress.Name,
        },
    }, new CustomResourceOptions
    {
        Provider = google_beta,
    });

    var dbNameSuffix = new Random.RandomId("dbNameSuffix", new()
    {
        ByteLength = 4,
    });

    var instance = new Gcp.Sql.DatabaseInstance("instance", new()
    {
        Region = "us-central1",
        DatabaseVersion = "MYSQL_5_7",
        Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
        {
            Tier = "db-f1-micro",
            IpConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationArgs
            {
                Ipv4Enabled = false,
                PrivateNetwork = privateNetwork.Id,
            },
        },
    }, new CustomResourceOptions
    {
        Provider = google_beta,
        DependsOn = new[]
        {
            privateVpcConnection,
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/servicenetworking"
	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/sql"
	"github.com/pulumi/pulumi-random/sdk/v4/go/random"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		privateNetwork, err := compute.NewNetwork(ctx, "privateNetwork", nil, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		privateIpAddress, err := compute.NewGlobalAddress(ctx, "privateIpAddress", &compute.GlobalAddressArgs{
			Purpose:      pulumi.String("VPC_PEERING"),
			AddressType:  pulumi.String("INTERNAL"),
			PrefixLength: pulumi.Int(16),
			Network:      privateNetwork.ID(),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		privateVpcConnection, err := servicenetworking.NewConnection(ctx, "privateVpcConnection", &servicenetworking.ConnectionArgs{
			Network: privateNetwork.ID(),
			Service: pulumi.String("servicenetworking.googleapis.com"),
			ReservedPeeringRanges: pulumi.StringArray{
				privateIpAddress.Name,
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = random.NewRandomId(ctx, "dbNameSuffix", &random.RandomIdArgs{
			ByteLength: pulumi.Int(4),
		})
		if err != nil {
			return err
		}
		_, err = sql.NewDatabaseInstance(ctx, "instance", &sql.DatabaseInstanceArgs{
			Region:          pulumi.String("us-central1"),
			DatabaseVersion: pulumi.String("MYSQL_5_7"),
			Settings: &sql.DatabaseInstanceSettingsArgs{
				Tier: pulumi.String("db-f1-micro"),
				IpConfiguration: &sql.DatabaseInstanceSettingsIpConfigurationArgs{
					Ipv4Enabled:    pulumi.Bool(false),
					PrivateNetwork: privateNetwork.ID(),
				},
			},
		}, pulumi.Provider(google_beta), pulumi.DependsOn([]pulumi.Resource{
			privateVpcConnection,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.GlobalAddress;
import com.pulumi.gcp.compute.GlobalAddressArgs;
import com.pulumi.gcp.servicenetworking.Connection;
import com.pulumi.gcp.servicenetworking.ConnectionArgs;
import com.pulumi.random.RandomId;
import com.pulumi.random.RandomIdArgs;
import com.pulumi.gcp.sql.DatabaseInstance;
import com.pulumi.gcp.sql.DatabaseInstanceArgs;
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var privateNetwork = new Network("privateNetwork", NetworkArgs.Empty, CustomResourceOptions.builder()
            .provider(google_beta)
            .build());

        var privateIpAddress = new GlobalAddress("privateIpAddress", GlobalAddressArgs.builder()        
            .purpose("VPC_PEERING")
            .addressType("INTERNAL")
            .prefixLength(16)
            .network(privateNetwork.id())
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

        var privateVpcConnection = new Connection("privateVpcConnection", ConnectionArgs.builder()        
            .network(privateNetwork.id())
            .service("servicenetworking.googleapis.com")
            .reservedPeeringRanges(privateIpAddress.name())
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .build());

        var dbNameSuffix = new RandomId("dbNameSuffix", RandomIdArgs.builder()        
            .byteLength(4)
            .build());

        var instance = new DatabaseInstance("instance", DatabaseInstanceArgs.builder()        
            .region("us-central1")
            .databaseVersion("MYSQL_5_7")
            .settings(DatabaseInstanceSettingsArgs.builder()
                .tier("db-f1-micro")
                .ipConfiguration(DatabaseInstanceSettingsIpConfigurationArgs.builder()
                    .ipv4Enabled(false)
                    .privateNetwork(privateNetwork.id())
                    .build())
                .build())
            .build(), CustomResourceOptions.builder()
                .provider(google_beta)
                .dependsOn(privateVpcConnection)
                .build());

    }
}
import pulumi
import pulumi_gcp as gcp
import pulumi_random as random

private_network = gcp.compute.Network("privateNetwork", opts=pulumi.ResourceOptions(provider=google_beta))
private_ip_address = gcp.compute.GlobalAddress("privateIpAddress",
    purpose="VPC_PEERING",
    address_type="INTERNAL",
    prefix_length=16,
    network=private_network.id,
    opts=pulumi.ResourceOptions(provider=google_beta))
private_vpc_connection = gcp.servicenetworking.Connection("privateVpcConnection",
    network=private_network.id,
    service="servicenetworking.googleapis.com",
    reserved_peering_ranges=[private_ip_address.name],
    opts=pulumi.ResourceOptions(provider=google_beta))
db_name_suffix = random.RandomId("dbNameSuffix", byte_length=4)
instance = gcp.sql.DatabaseInstance("instance",
    region="us-central1",
    database_version="MYSQL_5_7",
    settings=gcp.sql.DatabaseInstanceSettingsArgs(
        tier="db-f1-micro",
        ip_configuration=gcp.sql.DatabaseInstanceSettingsIpConfigurationArgs(
            ipv4_enabled=False,
            private_network=private_network.id,
        ),
    ),
    opts=pulumi.ResourceOptions(provider=google_beta,
        depends_on=[private_vpc_connection]))
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as random from "@pulumi/random";

const privateNetwork = new gcp.compute.Network("privateNetwork", {}, {
    provider: google_beta,
});
const privateIpAddress = new gcp.compute.GlobalAddress("privateIpAddress", {
    purpose: "VPC_PEERING",
    addressType: "INTERNAL",
    prefixLength: 16,
    network: privateNetwork.id,
}, {
    provider: google_beta,
});
const privateVpcConnection = new gcp.servicenetworking.Connection("privateVpcConnection", {
    network: privateNetwork.id,
    service: "servicenetworking.googleapis.com",
    reservedPeeringRanges: [privateIpAddress.name],
}, {
    provider: google_beta,
});
const dbNameSuffix = new random.RandomId("dbNameSuffix", {byteLength: 4});
const instance = new gcp.sql.DatabaseInstance("instance", {
    region: "us-central1",
    databaseVersion: "MYSQL_5_7",
    settings: {
        tier: "db-f1-micro",
        ipConfiguration: {
            ipv4Enabled: false,
            privateNetwork: privateNetwork.id,
        },
    },
}, {
    provider: google_beta,
    dependsOn: [privateVpcConnection],
});
resources:
  privateNetwork:
    type: gcp:compute:Network
    options:
      provider: ${["google-beta"]}
  privateIpAddress:
    type: gcp:compute:GlobalAddress
    properties:
      purpose: VPC_PEERING
      addressType: INTERNAL
      prefixLength: 16
      network: ${privateNetwork.id}
    options:
      provider: ${["google-beta"]}
  privateVpcConnection:
    type: gcp:servicenetworking:Connection
    properties:
      network: ${privateNetwork.id}
      service: servicenetworking.googleapis.com
      reservedPeeringRanges:
        - ${privateIpAddress.name}
    options:
      provider: ${["google-beta"]}
  dbNameSuffix:
    type: random:RandomId
    properties:
      byteLength: 4
  instance:
    type: gcp:sql:DatabaseInstance
    properties:
      region: us-central1
      databaseVersion: MYSQL_5_7
      settings:
        tier: db-f1-micro
        ipConfiguration:
          ipv4Enabled: false
          privateNetwork: ${privateNetwork.id}
    options:
      provider: ${["google-beta"]}
      dependson:
        - ${privateVpcConnection}

Create DatabaseInstance Resource

new DatabaseInstance(name: string, args: DatabaseInstanceArgs, opts?: CustomResourceOptions);
@overload
def DatabaseInstance(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     clone: Optional[DatabaseInstanceCloneArgs] = None,
                     database_version: Optional[str] = None,
                     deletion_protection: Optional[bool] = None,
                     encryption_key_name: Optional[str] = None,
                     maintenance_version: Optional[str] = None,
                     master_instance_name: Optional[str] = None,
                     name: Optional[str] = None,
                     project: Optional[str] = None,
                     region: Optional[str] = None,
                     replica_configuration: Optional[DatabaseInstanceReplicaConfigurationArgs] = None,
                     restore_backup_context: Optional[DatabaseInstanceRestoreBackupContextArgs] = None,
                     root_password: Optional[str] = None,
                     settings: Optional[DatabaseInstanceSettingsArgs] = None)
@overload
def DatabaseInstance(resource_name: str,
                     args: DatabaseInstanceArgs,
                     opts: Optional[ResourceOptions] = None)
func NewDatabaseInstance(ctx *Context, name string, args DatabaseInstanceArgs, opts ...ResourceOption) (*DatabaseInstance, error)
public DatabaseInstance(string name, DatabaseInstanceArgs args, CustomResourceOptions? opts = null)
public DatabaseInstance(String name, DatabaseInstanceArgs args)
public DatabaseInstance(String name, DatabaseInstanceArgs args, CustomResourceOptions options)
type: gcp:sql:DatabaseInstance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args DatabaseInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args DatabaseInstanceArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args DatabaseInstanceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DatabaseInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args DatabaseInstanceArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

DatabaseInstance Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The DatabaseInstance resource accepts the following input properties:

DatabaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

Clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

DeletionProtection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

EncryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

MaintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

MasterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

Name string

A name for this whitelist entry.

Project string

The full project ID of the source instance.`

Region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

ReplicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

RestoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

RootPassword string

Initial root password. Required for MS SQL Server.

Settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

DatabaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

Clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

DeletionProtection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

EncryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

MaintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

MasterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

Name string

A name for this whitelist entry.

Project string

The full project ID of the source instance.`

Region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

ReplicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

RestoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

RootPassword string

Initial root password. Required for MS SQL Server.

Settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

databaseVersion String

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

clone_ DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

deletionProtection Boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName String

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

maintenanceVersion String

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName String

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name String

A name for this whitelist entry.

project String

The full project ID of the source instance.`

region String

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword String

Initial root password. Required for MS SQL Server.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

databaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

deletionProtection boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

maintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name string

A name for this whitelist entry.

project string

The full project ID of the source instance.`

region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword string

Initial root password. Required for MS SQL Server.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

database_version str

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

deletion_protection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryption_key_name str

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

maintenance_version str

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

master_instance_name str

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name str

A name for this whitelist entry.

project str

The full project ID of the source instance.`

region str

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replica_configuration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restore_backup_context DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

root_password str

Initial root password. Required for MS SQL Server.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

databaseVersion String

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

clone Property Map

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

deletionProtection Boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName String

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

maintenanceVersion String

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName String

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name String

A name for this whitelist entry.

project String

The full project ID of the source instance.`

region String

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration Property Map

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext Property Map

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword String

Initial root password. Required for MS SQL Server.

settings Property Map

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

Outputs

All input properties are implicitly available as output properties. Additionally, the DatabaseInstance resource produces the following output properties:

AvailableMaintenanceVersions List<string>

The list of all maintenance versions applicable on the instance.

ConnectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

FirstIpAddress string

The first IPv4 address of any type assigned.

Id string

The provider-assigned unique ID for this managed resource.

IpAddresses List<DatabaseInstanceIpAddress>
PrivateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

PublicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

SelfLink string

The URI of the created resource.

ServerCaCerts List<DatabaseInstanceServerCaCert>
ServiceAccountEmailAddress string

The service account email address assigned to the instance.

AvailableMaintenanceVersions []string

The list of all maintenance versions applicable on the instance.

ConnectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

FirstIpAddress string

The first IPv4 address of any type assigned.

Id string

The provider-assigned unique ID for this managed resource.

IpAddresses []DatabaseInstanceIpAddress
PrivateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

PublicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

SelfLink string

The URI of the created resource.

ServerCaCerts []DatabaseInstanceServerCaCert
ServiceAccountEmailAddress string

The service account email address assigned to the instance.

availableMaintenanceVersions List<String>

The list of all maintenance versions applicable on the instance.

connectionName String

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

firstIpAddress String

The first IPv4 address of any type assigned.

id String

The provider-assigned unique ID for this managed resource.

ipAddresses List<DatabaseInstanceIpAddress>
privateIpAddress String

The first private (PRIVATE) IPv4 address assigned.

publicIpAddress String

The first public (PRIMARY) IPv4 address assigned.

selfLink String

The URI of the created resource.

serverCaCerts List<DatabaseInstanceServerCaCert>
serviceAccountEmailAddress String

The service account email address assigned to the instance.

availableMaintenanceVersions string[]

The list of all maintenance versions applicable on the instance.

connectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

firstIpAddress string

The first IPv4 address of any type assigned.

id string

The provider-assigned unique ID for this managed resource.

ipAddresses DatabaseInstanceIpAddress[]
privateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

publicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

selfLink string

The URI of the created resource.

serverCaCerts DatabaseInstanceServerCaCert[]
serviceAccountEmailAddress string

The service account email address assigned to the instance.

available_maintenance_versions Sequence[str]

The list of all maintenance versions applicable on the instance.

connection_name str

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

first_ip_address str

The first IPv4 address of any type assigned.

id str

The provider-assigned unique ID for this managed resource.

ip_addresses Sequence[DatabaseInstanceIpAddress]
private_ip_address str

The first private (PRIVATE) IPv4 address assigned.

public_ip_address str

The first public (PRIMARY) IPv4 address assigned.

self_link str

The URI of the created resource.

server_ca_certs Sequence[DatabaseInstanceServerCaCert]
service_account_email_address str

The service account email address assigned to the instance.

availableMaintenanceVersions List<String>

The list of all maintenance versions applicable on the instance.

connectionName String

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

firstIpAddress String

The first IPv4 address of any type assigned.

id String

The provider-assigned unique ID for this managed resource.

ipAddresses List<Property Map>
privateIpAddress String

The first private (PRIVATE) IPv4 address assigned.

publicIpAddress String

The first public (PRIMARY) IPv4 address assigned.

selfLink String

The URI of the created resource.

serverCaCerts List<Property Map>
serviceAccountEmailAddress String

The service account email address assigned to the instance.

Look up Existing DatabaseInstance Resource

Get an existing DatabaseInstance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: DatabaseInstanceState, opts?: CustomResourceOptions): DatabaseInstance
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        available_maintenance_versions: Optional[Sequence[str]] = None,
        clone: Optional[DatabaseInstanceCloneArgs] = None,
        connection_name: Optional[str] = None,
        database_version: Optional[str] = None,
        deletion_protection: Optional[bool] = None,
        encryption_key_name: Optional[str] = None,
        first_ip_address: Optional[str] = None,
        ip_addresses: Optional[Sequence[DatabaseInstanceIpAddressArgs]] = None,
        maintenance_version: Optional[str] = None,
        master_instance_name: Optional[str] = None,
        name: Optional[str] = None,
        private_ip_address: Optional[str] = None,
        project: Optional[str] = None,
        public_ip_address: Optional[str] = None,
        region: Optional[str] = None,
        replica_configuration: Optional[DatabaseInstanceReplicaConfigurationArgs] = None,
        restore_backup_context: Optional[DatabaseInstanceRestoreBackupContextArgs] = None,
        root_password: Optional[str] = None,
        self_link: Optional[str] = None,
        server_ca_certs: Optional[Sequence[DatabaseInstanceServerCaCertArgs]] = None,
        service_account_email_address: Optional[str] = None,
        settings: Optional[DatabaseInstanceSettingsArgs] = None) -> DatabaseInstance
func GetDatabaseInstance(ctx *Context, name string, id IDInput, state *DatabaseInstanceState, opts ...ResourceOption) (*DatabaseInstance, error)
public static DatabaseInstance Get(string name, Input<string> id, DatabaseInstanceState? state, CustomResourceOptions? opts = null)
public static DatabaseInstance get(String name, Output<String> id, DatabaseInstanceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AvailableMaintenanceVersions List<string>

The list of all maintenance versions applicable on the instance.

Clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

ConnectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

DatabaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

DeletionProtection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

EncryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

FirstIpAddress string

The first IPv4 address of any type assigned.

IpAddresses List<DatabaseInstanceIpAddressArgs>
MaintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

MasterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

Name string

A name for this whitelist entry.

PrivateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

Project string

The full project ID of the source instance.`

PublicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

Region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

ReplicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

RestoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

RootPassword string

Initial root password. Required for MS SQL Server.

SelfLink string

The URI of the created resource.

ServerCaCerts List<DatabaseInstanceServerCaCertArgs>
ServiceAccountEmailAddress string

The service account email address assigned to the instance.

Settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

AvailableMaintenanceVersions []string

The list of all maintenance versions applicable on the instance.

Clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

ConnectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

DatabaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

DeletionProtection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

EncryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

FirstIpAddress string

The first IPv4 address of any type assigned.

IpAddresses []DatabaseInstanceIpAddressArgs
MaintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

MasterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

Name string

A name for this whitelist entry.

PrivateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

Project string

The full project ID of the source instance.`

PublicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

Region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

ReplicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

RestoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

RootPassword string

Initial root password. Required for MS SQL Server.

SelfLink string

The URI of the created resource.

ServerCaCerts []DatabaseInstanceServerCaCertArgs
ServiceAccountEmailAddress string

The service account email address assigned to the instance.

Settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

availableMaintenanceVersions List<String>

The list of all maintenance versions applicable on the instance.

clone_ DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

connectionName String

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

databaseVersion String

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

deletionProtection Boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName String

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

firstIpAddress String

The first IPv4 address of any type assigned.

ipAddresses List<DatabaseInstanceIpAddressArgs>
maintenanceVersion String

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName String

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name String

A name for this whitelist entry.

privateIpAddress String

The first private (PRIVATE) IPv4 address assigned.

project String

The full project ID of the source instance.`

publicIpAddress String

The first public (PRIMARY) IPv4 address assigned.

region String

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword String

Initial root password. Required for MS SQL Server.

selfLink String

The URI of the created resource.

serverCaCerts List<DatabaseInstanceServerCaCertArgs>
serviceAccountEmailAddress String

The service account email address assigned to the instance.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

availableMaintenanceVersions string[]

The list of all maintenance versions applicable on the instance.

clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

connectionName string

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

databaseVersion string

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

deletionProtection boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName string

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

firstIpAddress string

The first IPv4 address of any type assigned.

ipAddresses DatabaseInstanceIpAddressArgs[]
maintenanceVersion string

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName string

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name string

A name for this whitelist entry.

privateIpAddress string

The first private (PRIVATE) IPv4 address assigned.

project string

The full project ID of the source instance.`

publicIpAddress string

The first public (PRIMARY) IPv4 address assigned.

region string

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword string

Initial root password. Required for MS SQL Server.

selfLink string

The URI of the created resource.

serverCaCerts DatabaseInstanceServerCaCertArgs[]
serviceAccountEmailAddress string

The service account email address assigned to the instance.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

available_maintenance_versions Sequence[str]

The list of all maintenance versions applicable on the instance.

clone DatabaseInstanceCloneArgs

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

connection_name str

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

database_version str

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

deletion_protection bool

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryption_key_name str

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

first_ip_address str

The first IPv4 address of any type assigned.

ip_addresses Sequence[DatabaseInstanceIpAddressArgs]
maintenance_version str

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

master_instance_name str

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name str

A name for this whitelist entry.

private_ip_address str

The first private (PRIVATE) IPv4 address assigned.

project str

The full project ID of the source instance.`

public_ip_address str

The first public (PRIMARY) IPv4 address assigned.

region str

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replica_configuration DatabaseInstanceReplicaConfigurationArgs

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restore_backup_context DatabaseInstanceRestoreBackupContextArgs

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

root_password str

Initial root password. Required for MS SQL Server.

self_link str

The URI of the created resource.

server_ca_certs Sequence[DatabaseInstanceServerCaCertArgs]
service_account_email_address str

The service account email address assigned to the instance.

settings DatabaseInstanceSettingsArgs

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

availableMaintenanceVersions List<String>

The list of all maintenance versions applicable on the instance.

clone Property Map

The context needed to create this instance as a clone of another instance. When this field is set during resource creation, this provider will attempt to clone another instance as indicated in the context. The configuration is detailed below.

connectionName String

The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.

databaseVersion String

The MySQL, PostgreSQL or SQL Server version to use. Supported values include MYSQL_5_6, MYSQL_5_7, MYSQL_8_0, POSTGRES_9_6,POSTGRES_10, POSTGRES_11, POSTGRES_12, POSTGRES_13, POSTGRES_14, SQLSERVER_2017_STANDARD, SQLSERVER_2017_ENTERPRISE, SQLSERVER_2017_EXPRESS, SQLSERVER_2017_WEB. SQLSERVER_2019_STANDARD, SQLSERVER_2019_ENTERPRISE, SQLSERVER_2019_EXPRESS, SQLSERVER_2019_WEB. Database Version Policies includes an up-to-date reference of supported versions.

deletionProtection Boolean

Whether or not to allow the provider to destroy the instance. Unless this field is set to false in state, a destroy or update command that deletes the instance will fail. Defaults to true.

encryptionKeyName String

The full path to the encryption key used for the CMEK disk encryption. Setting up disk encryption currently requires manual steps outside of this provider. The provided key must be in the same region as the SQL instance. In order to use this feature, a special kind of service account must be created and granted permission on this key. This step can currently only be done manually, please see this step. That service account needs the Cloud KMS > Cloud KMS CryptoKey Encrypter/Decrypter role on your key - please see this step.

firstIpAddress String

The first IPv4 address of any type assigned.

ipAddresses List<Property Map>
maintenanceVersion String

The current software version on the instance. This attribute can not be set during creation. Refer to available_maintenance_versions attribute to see what maintenance_version are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting a maintenance_version value that is older than the current one on the instance will be ignored.

masterInstanceName String

The name of the existing instance that will act as the master in the replication setup. Note, this requires the master to have binary_log_enabled set, as well as existing backups.

name String

A name for this whitelist entry.

privateIpAddress String

The first private (PRIVATE) IPv4 address assigned.

project String

The full project ID of the source instance.`

publicIpAddress String

The first public (PRIMARY) IPv4 address assigned.

region String

The region the instance will sit in. If a region is not provided in the resource definition, the provider region will be used instead.

replicaConfiguration Property Map

The configuration for replication. The configuration is detailed below. Valid only for MySQL instances.

restoreBackupContext Property Map

The context needed to restore the database to a backup run. This field will cause the provider to trigger the database to restore from the backup run indicated. The configuration is detailed below. NOTE: Restoring from a backup is an imperative action and not recommended via this provider. Adding or modifying this block during resource creation/update will trigger the restore action after the resource is created/updated.

rootPassword String

Initial root password. Required for MS SQL Server.

selfLink String

The URI of the created resource.

serverCaCerts List<Property Map>
serviceAccountEmailAddress String

The service account email address assigned to the instance.

settings Property Map

The settings to use for the database. The configuration is detailed below. Required if clone is not set.

Supporting Types

DatabaseInstanceClone

SourceInstanceName string

Name of the source instance which will be cloned.

AllocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

PointInTime string

The timestamp of the point in time that should be restored.

SourceInstanceName string

Name of the source instance which will be cloned.

AllocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

PointInTime string

The timestamp of the point in time that should be restored.

sourceInstanceName String

Name of the source instance which will be cloned.

allocatedIpRange String

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

pointInTime String

The timestamp of the point in time that should be restored.

sourceInstanceName string

Name of the source instance which will be cloned.

allocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

pointInTime string

The timestamp of the point in time that should be restored.

source_instance_name str

Name of the source instance which will be cloned.

allocated_ip_range str

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

point_in_time str

The timestamp of the point in time that should be restored.

sourceInstanceName String

Name of the source instance which will be cloned.

allocatedIpRange String

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

pointInTime String

The timestamp of the point in time that should be restored.

DatabaseInstanceIpAddress

IpAddress string
TimeToRetire string
Type string
IpAddress string
TimeToRetire string
Type string
ipAddress String
timeToRetire String
type String
ipAddress string
timeToRetire string
type string
ipAddress String
timeToRetire String
type String

DatabaseInstanceReplicaConfiguration

CaCertificate string

PEM representation of the trusted CA's x509 certificate.

ClientCertificate string

PEM representation of the replica's x509 certificate.

ClientKey string

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

ConnectRetryInterval int

The number of seconds between connect retries. MySQL's default is 60 seconds.

DumpFilePath string

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

FailoverTarget bool

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

MasterHeartbeatPeriod int

Time in ms between replication heartbeats.

Password string

Password for the replication connection.

SslCipher string
Username string

Username for replication connection.

VerifyServerCertificate bool

True if the master's common name value is checked during the SSL handshake.

CaCertificate string

PEM representation of the trusted CA's x509 certificate.

ClientCertificate string

PEM representation of the replica's x509 certificate.

ClientKey string

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

ConnectRetryInterval int

The number of seconds between connect retries. MySQL's default is 60 seconds.

DumpFilePath string

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

FailoverTarget bool

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

MasterHeartbeatPeriod int

Time in ms between replication heartbeats.

Password string

Password for the replication connection.

SslCipher string
Username string

Username for replication connection.

VerifyServerCertificate bool

True if the master's common name value is checked during the SSL handshake.

caCertificate String

PEM representation of the trusted CA's x509 certificate.

clientCertificate String

PEM representation of the replica's x509 certificate.

clientKey String

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

connectRetryInterval Integer

The number of seconds between connect retries. MySQL's default is 60 seconds.

dumpFilePath String

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

failoverTarget Boolean

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

masterHeartbeatPeriod Integer

Time in ms between replication heartbeats.

password String

Password for the replication connection.

sslCipher String
username String

Username for replication connection.

verifyServerCertificate Boolean

True if the master's common name value is checked during the SSL handshake.

caCertificate string

PEM representation of the trusted CA's x509 certificate.

clientCertificate string

PEM representation of the replica's x509 certificate.

clientKey string

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

connectRetryInterval number

The number of seconds between connect retries. MySQL's default is 60 seconds.

dumpFilePath string

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

failoverTarget boolean

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

masterHeartbeatPeriod number

Time in ms between replication heartbeats.

password string

Password for the replication connection.

sslCipher string
username string

Username for replication connection.

verifyServerCertificate boolean

True if the master's common name value is checked during the SSL handshake.

ca_certificate str

PEM representation of the trusted CA's x509 certificate.

client_certificate str

PEM representation of the replica's x509 certificate.

client_key str

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

connect_retry_interval int

The number of seconds between connect retries. MySQL's default is 60 seconds.

dump_file_path str

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

failover_target bool

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

master_heartbeat_period int

Time in ms between replication heartbeats.

password str

Password for the replication connection.

ssl_cipher str
username str

Username for replication connection.

verify_server_certificate bool

True if the master's common name value is checked during the SSL handshake.

caCertificate String

PEM representation of the trusted CA's x509 certificate.

clientCertificate String

PEM representation of the replica's x509 certificate.

clientKey String

PEM representation of the replica's private key. The corresponding public key in encoded in the client_certificate.

connectRetryInterval Number

The number of seconds between connect retries. MySQL's default is 60 seconds.

dumpFilePath String

Path to a SQL file in GCS from which replica instances are created. Format is gs://bucket/filename.

failoverTarget Boolean

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

masterHeartbeatPeriod Number

Time in ms between replication heartbeats.

password String

Password for the replication connection.

sslCipher String
username String

Username for replication connection.

verifyServerCertificate Boolean

True if the master's common name value is checked during the SSL handshake.

DatabaseInstanceRestoreBackupContext

BackupRunId int

The ID of the backup run to restore from.

InstanceId string

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

Project string

The full project ID of the source instance.`

BackupRunId int

The ID of the backup run to restore from.

InstanceId string

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

Project string

The full project ID of the source instance.`

backupRunId Integer

The ID of the backup run to restore from.

instanceId String

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

project String

The full project ID of the source instance.`

backupRunId number

The ID of the backup run to restore from.

instanceId string

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

project string

The full project ID of the source instance.`

backup_run_id int

The ID of the backup run to restore from.

instance_id str

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

project str

The full project ID of the source instance.`

backupRunId Number

The ID of the backup run to restore from.

instanceId String

The ID of the instance that the backup was taken from. If left empty, this instance's ID will be used.

project String

The full project ID of the source instance.`

DatabaseInstanceServerCaCert

Cert string
CommonName string
CreateTime string
ExpirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

Sha1Fingerprint string
Cert string
CommonName string
CreateTime string
ExpirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

Sha1Fingerprint string
cert String
commonName String
createTime String
expirationTime String

The RFC 3339 formatted date time string indicating when this whitelist expires.

sha1Fingerprint String
cert string
commonName string
createTime string
expirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

sha1Fingerprint string
cert str
common_name str
create_time str
expiration_time str

The RFC 3339 formatted date time string indicating when this whitelist expires.

sha1_fingerprint str
cert String
commonName String
createTime String
expirationTime String

The RFC 3339 formatted date time string indicating when this whitelist expires.

sha1Fingerprint String

DatabaseInstanceSettings

Tier string

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

ActivationPolicy string

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

ActiveDirectoryConfig DatabaseInstanceSettingsActiveDirectoryConfig
AvailabilityType string

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

BackupConfiguration DatabaseInstanceSettingsBackupConfiguration
Collation string

The name of server instance collation.

ConnectorEnforcement string

Specifies if connections must use Cloud SQL connectors.

DatabaseFlags List<DatabaseInstanceSettingsDatabaseFlag>
DiskAutoresize bool

Enables auto-resizing of the storage size. Defaults to true.

DiskAutoresizeLimit int

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

DiskSize int

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

DiskType string

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

InsightsConfig DatabaseInstanceSettingsInsightsConfig
IpConfiguration DatabaseInstanceSettingsIpConfiguration
LocationPreference DatabaseInstanceSettingsLocationPreference
MaintenanceWindow DatabaseInstanceSettingsMaintenanceWindow
PasswordValidationPolicy DatabaseInstanceSettingsPasswordValidationPolicy
PricingPlan string

Pricing plan for this instance, can only be PER_USE.

SqlServerAuditConfig DatabaseInstanceSettingsSqlServerAuditConfig
TimeZone string

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

UserLabels Dictionary<string, string>

A set of key/value user label pairs to assign to the instance.

Version int
Tier string

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

ActivationPolicy string

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

ActiveDirectoryConfig DatabaseInstanceSettingsActiveDirectoryConfig
AvailabilityType string

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

BackupConfiguration DatabaseInstanceSettingsBackupConfiguration
Collation string

The name of server instance collation.

ConnectorEnforcement string

Specifies if connections must use Cloud SQL connectors.

DatabaseFlags []DatabaseInstanceSettingsDatabaseFlag
DiskAutoresize bool

Enables auto-resizing of the storage size. Defaults to true.

DiskAutoresizeLimit int

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

DiskSize int

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

DiskType string

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

InsightsConfig DatabaseInstanceSettingsInsightsConfig
IpConfiguration DatabaseInstanceSettingsIpConfiguration
LocationPreference DatabaseInstanceSettingsLocationPreference
MaintenanceWindow DatabaseInstanceSettingsMaintenanceWindow
PasswordValidationPolicy DatabaseInstanceSettingsPasswordValidationPolicy
PricingPlan string

Pricing plan for this instance, can only be PER_USE.

SqlServerAuditConfig DatabaseInstanceSettingsSqlServerAuditConfig
TimeZone string

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

UserLabels map[string]string

A set of key/value user label pairs to assign to the instance.

Version int
tier String

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

activationPolicy String

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

activeDirectoryConfig DatabaseInstanceSettingsActiveDirectoryConfig
availabilityType String

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

backupConfiguration DatabaseInstanceSettingsBackupConfiguration
collation String

The name of server instance collation.

connectorEnforcement String

Specifies if connections must use Cloud SQL connectors.

databaseFlags List<DatabaseInstanceSettingsDatabaseFlag>
diskAutoresize Boolean

Enables auto-resizing of the storage size. Defaults to true.

diskAutoresizeLimit Integer

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

diskSize Integer

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

diskType String

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

insightsConfig DatabaseInstanceSettingsInsightsConfig
ipConfiguration DatabaseInstanceSettingsIpConfiguration
locationPreference DatabaseInstanceSettingsLocationPreference
maintenanceWindow DatabaseInstanceSettingsMaintenanceWindow
passwordValidationPolicy DatabaseInstanceSettingsPasswordValidationPolicy
pricingPlan String

Pricing plan for this instance, can only be PER_USE.

sqlServerAuditConfig DatabaseInstanceSettingsSqlServerAuditConfig
timeZone String

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

userLabels Map<String,String>

A set of key/value user label pairs to assign to the instance.

version Integer
tier string

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

activationPolicy string

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

activeDirectoryConfig DatabaseInstanceSettingsActiveDirectoryConfig
availabilityType string

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

backupConfiguration DatabaseInstanceSettingsBackupConfiguration
collation string

The name of server instance collation.

connectorEnforcement string

Specifies if connections must use Cloud SQL connectors.

databaseFlags DatabaseInstanceSettingsDatabaseFlag[]
diskAutoresize boolean

Enables auto-resizing of the storage size. Defaults to true.

diskAutoresizeLimit number

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

diskSize number

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

diskType string

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

insightsConfig DatabaseInstanceSettingsInsightsConfig
ipConfiguration DatabaseInstanceSettingsIpConfiguration
locationPreference DatabaseInstanceSettingsLocationPreference
maintenanceWindow DatabaseInstanceSettingsMaintenanceWindow
passwordValidationPolicy DatabaseInstanceSettingsPasswordValidationPolicy
pricingPlan string

Pricing plan for this instance, can only be PER_USE.

sqlServerAuditConfig DatabaseInstanceSettingsSqlServerAuditConfig
timeZone string

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

userLabels {[key: string]: string}

A set of key/value user label pairs to assign to the instance.

version number
tier str

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

activation_policy str

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

active_directory_config DatabaseInstanceSettingsActiveDirectoryConfig
availability_type str

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

backup_configuration DatabaseInstanceSettingsBackupConfiguration
collation str

The name of server instance collation.

connector_enforcement str

Specifies if connections must use Cloud SQL connectors.

database_flags Sequence[DatabaseInstanceSettingsDatabaseFlag]
disk_autoresize bool

Enables auto-resizing of the storage size. Defaults to true.

disk_autoresize_limit int

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

disk_size int

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

disk_type str

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

insights_config DatabaseInstanceSettingsInsightsConfig
ip_configuration DatabaseInstanceSettingsIpConfiguration
location_preference DatabaseInstanceSettingsLocationPreference
maintenance_window DatabaseInstanceSettingsMaintenanceWindow
password_validation_policy DatabaseInstanceSettingsPasswordValidationPolicy
pricing_plan str

Pricing plan for this instance, can only be PER_USE.

sql_server_audit_config DatabaseInstanceSettingsSqlServerAuditConfig
time_zone str

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

user_labels Mapping[str, str]

A set of key/value user label pairs to assign to the instance.

version int
tier String

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

activationPolicy String

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

activeDirectoryConfig Property Map
availabilityType String

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).' For all instances, ensure that settings.backup_configuration.enabled is set to true. For MySQL instances, ensure that settings.backup_configuration.binary_log_enabled is set to true. For Postgres instances, ensure that settings.backup_configuration.point_in_time_recovery_enabled is set to true. Defaults to ZONAL.

backupConfiguration Property Map
collation String

The name of server instance collation.

connectorEnforcement String

Specifies if connections must use Cloud SQL connectors.

databaseFlags List<Property Map>
diskAutoresize Boolean

Enables auto-resizing of the storage size. Defaults to true.

diskAutoresizeLimit Number

The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.

diskSize Number

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased. The minimum value is 10GB.

diskType String

The type of data disk: PD_SSD or PD_HDD. Defaults to PD_SSD.

insightsConfig Property Map
ipConfiguration Property Map
locationPreference Property Map
maintenanceWindow Property Map
passwordValidationPolicy Property Map
pricingPlan String

Pricing plan for this instance, can only be PER_USE.

sqlServerAuditConfig Property Map
timeZone String

The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.

userLabels Map<String>

A set of key/value user label pairs to assign to the instance.

version Number

DatabaseInstanceSettingsActiveDirectoryConfig

Domain string

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

Domain string

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

domain String

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

domain string

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

domain str

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

domain String

The domain name for the active directory (e.g., mydomain.com). Can only be used with SQL Server.

DatabaseInstanceSettingsBackupConfiguration

BackupRetentionSettings DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

Backup retention settings. The configuration is detailed below.

BinaryLogEnabled bool

True if binary logging is enabled. Can only be used with MySQL.

Enabled bool

True if backup configuration is enabled.

Location string

The region where the backup will be stored

PointInTimeRecoveryEnabled bool

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

StartTime string

HH:MM format time indicating when backup configuration starts.

TransactionLogRetentionDays int

The number of days of transaction logs we retain for point in time restore, from 1-7.

BackupRetentionSettings DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

Backup retention settings. The configuration is detailed below.

BinaryLogEnabled bool

True if binary logging is enabled. Can only be used with MySQL.

Enabled bool

True if backup configuration is enabled.

Location string

The region where the backup will be stored

PointInTimeRecoveryEnabled bool

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

StartTime string

HH:MM format time indicating when backup configuration starts.

TransactionLogRetentionDays int

The number of days of transaction logs we retain for point in time restore, from 1-7.

backupRetentionSettings DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

Backup retention settings. The configuration is detailed below.

binaryLogEnabled Boolean

True if binary logging is enabled. Can only be used with MySQL.

enabled Boolean

True if backup configuration is enabled.

location String

The region where the backup will be stored

pointInTimeRecoveryEnabled Boolean

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

startTime String

HH:MM format time indicating when backup configuration starts.

transactionLogRetentionDays Integer

The number of days of transaction logs we retain for point in time restore, from 1-7.

backupRetentionSettings DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

Backup retention settings. The configuration is detailed below.

binaryLogEnabled boolean

True if binary logging is enabled. Can only be used with MySQL.

enabled boolean

True if backup configuration is enabled.

location string

The region where the backup will be stored

pointInTimeRecoveryEnabled boolean

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

startTime string

HH:MM format time indicating when backup configuration starts.

transactionLogRetentionDays number

The number of days of transaction logs we retain for point in time restore, from 1-7.

backup_retention_settings DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

Backup retention settings. The configuration is detailed below.

binary_log_enabled bool

True if binary logging is enabled. Can only be used with MySQL.

enabled bool

True if backup configuration is enabled.

location str

The region where the backup will be stored

point_in_time_recovery_enabled bool

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

start_time str

HH:MM format time indicating when backup configuration starts.

transaction_log_retention_days int

The number of days of transaction logs we retain for point in time restore, from 1-7.

backupRetentionSettings Property Map

Backup retention settings. The configuration is detailed below.

binaryLogEnabled Boolean

True if binary logging is enabled. Can only be used with MySQL.

enabled Boolean

True if backup configuration is enabled.

location String

The region where the backup will be stored

pointInTimeRecoveryEnabled Boolean

True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL instances.

startTime String

HH:MM format time indicating when backup configuration starts.

transactionLogRetentionDays Number

The number of days of transaction logs we retain for point in time restore, from 1-7.

DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings

RetainedBackups int

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

RetentionUnit string

The unit that 'retained_backups' represents. Defaults to COUNT.

RetainedBackups int

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

RetentionUnit string

The unit that 'retained_backups' represents. Defaults to COUNT.

retainedBackups Integer

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

retentionUnit String

The unit that 'retained_backups' represents. Defaults to COUNT.

retainedBackups number

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

retentionUnit string

The unit that 'retained_backups' represents. Defaults to COUNT.

retained_backups int

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

retention_unit str

The unit that 'retained_backups' represents. Defaults to COUNT.

retainedBackups Number

Depending on the value of retention_unit, this is used to determine if a backup needs to be deleted. If retention_unit is 'COUNT', we will retain this many backups.

retentionUnit String

The unit that 'retained_backups' represents. Defaults to COUNT.

DatabaseInstanceSettingsDatabaseFlag

Name string

A name for this whitelist entry.

Value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

Name string

A name for this whitelist entry.

Value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

name String

A name for this whitelist entry.

value String

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

name string

A name for this whitelist entry.

value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

name str

A name for this whitelist entry.

value str

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

name String

A name for this whitelist entry.

value String

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

DatabaseInstanceSettingsInsightsConfig

QueryInsightsEnabled bool

True if Query Insights feature is enabled.

QueryPlansPerMinute int

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

QueryStringLength int

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

RecordApplicationTags bool

True if Query Insights will record application tags from query when enabled.

RecordClientAddress bool

True if Query Insights will record client address when enabled.

QueryInsightsEnabled bool

True if Query Insights feature is enabled.

QueryPlansPerMinute int

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

QueryStringLength int

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

RecordApplicationTags bool

True if Query Insights will record application tags from query when enabled.

RecordClientAddress bool

True if Query Insights will record client address when enabled.

queryInsightsEnabled Boolean

True if Query Insights feature is enabled.

queryPlansPerMinute Integer

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

queryStringLength Integer

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

recordApplicationTags Boolean

True if Query Insights will record application tags from query when enabled.

recordClientAddress Boolean

True if Query Insights will record client address when enabled.

queryInsightsEnabled boolean

True if Query Insights feature is enabled.

queryPlansPerMinute number

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

queryStringLength number

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

recordApplicationTags boolean

True if Query Insights will record application tags from query when enabled.

recordClientAddress boolean

True if Query Insights will record client address when enabled.

query_insights_enabled bool

True if Query Insights feature is enabled.

query_plans_per_minute int

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

query_string_length int

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

record_application_tags bool

True if Query Insights will record application tags from query when enabled.

record_client_address bool

True if Query Insights will record client address when enabled.

queryInsightsEnabled Boolean

True if Query Insights feature is enabled.

queryPlansPerMinute Number

Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.

queryStringLength Number

Maximum query length stored in bytes. Between 256 and 4500. Default to 1024.

recordApplicationTags Boolean

True if Query Insights will record application tags from query when enabled.

recordClientAddress Boolean

True if Query Insights will record client address when enabled.

DatabaseInstanceSettingsIpConfiguration

AllocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

AuthorizedNetworks List<DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork>
Ipv4Enabled bool

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

PrivateNetwork string

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

RequireSsl bool

Whether SSL connections over IP are enforced or not.

AllocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

AuthorizedNetworks []DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork
Ipv4Enabled bool

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

PrivateNetwork string

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

RequireSsl bool

Whether SSL connections over IP are enforced or not.

allocatedIpRange String

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

authorizedNetworks List<DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork>
ipv4Enabled Boolean

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

privateNetwork String

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

requireSsl Boolean

Whether SSL connections over IP are enforced or not.

allocatedIpRange string

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

authorizedNetworks DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork[]
ipv4Enabled boolean

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

privateNetwork string

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

requireSsl boolean

Whether SSL connections over IP are enforced or not.

allocated_ip_range str

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

authorized_networks Sequence[DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork]
ipv4_enabled bool

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

private_network str

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

require_ssl bool

Whether SSL connections over IP are enforced or not.

allocatedIpRange String

The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the cloned instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z?.

authorizedNetworks List<Property Map>
ipv4Enabled Boolean

Whether this Cloud SQL instance should be assigned a public IPV4 address. At least ipv4_enabled must be enabled or a private_network must be configured.

privateNetwork String

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. At least ipv4_enabled must be enabled or a private_network must be configured. This setting can be updated, but it cannot be removed after it is set.

requireSsl Boolean

Whether SSL connections over IP are enforced or not.

DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork

Value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

ExpirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

Name string

A name for this whitelist entry.

Value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

ExpirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

Name string

A name for this whitelist entry.

value String

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

expirationTime String

The RFC 3339 formatted date time string indicating when this whitelist expires.

name String

A name for this whitelist entry.

value string

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

expirationTime string

The RFC 3339 formatted date time string indicating when this whitelist expires.

name string

A name for this whitelist entry.

value str

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

expiration_time str

The RFC 3339 formatted date time string indicating when this whitelist expires.

name str

A name for this whitelist entry.

value String

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

expirationTime String

The RFC 3339 formatted date time string indicating when this whitelist expires.

name String

A name for this whitelist entry.

DatabaseInstanceSettingsLocationPreference

FollowGaeApplication string

A GAE application whose zone to remain in. Must be in the same region as this instance.

SecondaryZone string

The preferred Compute Engine zone for the secondary/failover.

Zone string

The preferred compute engine zone.

FollowGaeApplication string

A GAE application whose zone to remain in. Must be in the same region as this instance.

SecondaryZone string

The preferred Compute Engine zone for the secondary/failover.

Zone string

The preferred compute engine zone.

followGaeApplication String

A GAE application whose zone to remain in. Must be in the same region as this instance.

secondaryZone String

The preferred Compute Engine zone for the secondary/failover.

zone String

The preferred compute engine zone.

followGaeApplication string

A GAE application whose zone to remain in. Must be in the same region as this instance.

secondaryZone string

The preferred Compute Engine zone for the secondary/failover.

zone string

The preferred compute engine zone.

follow_gae_application str

A GAE application whose zone to remain in. Must be in the same region as this instance.

secondary_zone str

The preferred Compute Engine zone for the secondary/failover.

zone str

The preferred compute engine zone.

followGaeApplication String

A GAE application whose zone to remain in. Must be in the same region as this instance.

secondaryZone String

The preferred Compute Engine zone for the secondary/failover.

zone String

The preferred compute engine zone.

DatabaseInstanceSettingsMaintenanceWindow

Day int

Day of week (1-7), starting on Monday

Hour int

Hour of day (0-23), ignored if day not set

UpdateTrack string

Receive updates earlier (canary) or later (stable)

Day int

Day of week (1-7), starting on Monday

Hour int

Hour of day (0-23), ignored if day not set

UpdateTrack string

Receive updates earlier (canary) or later (stable)

day Integer

Day of week (1-7), starting on Monday

hour Integer

Hour of day (0-23), ignored if day not set

updateTrack String

Receive updates earlier (canary) or later (stable)

day number

Day of week (1-7), starting on Monday

hour number

Hour of day (0-23), ignored if day not set

updateTrack string

Receive updates earlier (canary) or later (stable)

day int

Day of week (1-7), starting on Monday

hour int

Hour of day (0-23), ignored if day not set

update_track str

Receive updates earlier (canary) or later (stable)

day Number

Day of week (1-7), starting on Monday

hour Number

Hour of day (0-23), ignored if day not set

updateTrack String

Receive updates earlier (canary) or later (stable)

DatabaseInstanceSettingsPasswordValidationPolicy

EnablePasswordPolicy bool

Enables or disable the password validation policy.

Complexity string

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

DisallowUsernameSubstring bool

Prevents the use of the username in the password.

MinLength int

Specifies the minimum number of characters that the password must have.

PasswordChangeInterval string

Specifies the minimum duration after which you can change the password.

ReuseInterval int

Specifies the number of previous passwords that you can't reuse.

EnablePasswordPolicy bool

Enables or disable the password validation policy.

Complexity string

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

DisallowUsernameSubstring bool

Prevents the use of the username in the password.

MinLength int

Specifies the minimum number of characters that the password must have.

PasswordChangeInterval string

Specifies the minimum duration after which you can change the password.

ReuseInterval int

Specifies the number of previous passwords that you can't reuse.

enablePasswordPolicy Boolean

Enables or disable the password validation policy.

complexity String

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

disallowUsernameSubstring Boolean

Prevents the use of the username in the password.

minLength Integer

Specifies the minimum number of characters that the password must have.

passwordChangeInterval String

Specifies the minimum duration after which you can change the password.

reuseInterval Integer

Specifies the number of previous passwords that you can't reuse.

enablePasswordPolicy boolean

Enables or disable the password validation policy.

complexity string

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

disallowUsernameSubstring boolean

Prevents the use of the username in the password.

minLength number

Specifies the minimum number of characters that the password must have.

passwordChangeInterval string

Specifies the minimum duration after which you can change the password.

reuseInterval number

Specifies the number of previous passwords that you can't reuse.

enable_password_policy bool

Enables or disable the password validation policy.

complexity str

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

disallow_username_substring bool

Prevents the use of the username in the password.

min_length int

Specifies the minimum number of characters that the password must have.

password_change_interval str

Specifies the minimum duration after which you can change the password.

reuse_interval int

Specifies the number of previous passwords that you can't reuse.

enablePasswordPolicy Boolean

Enables or disable the password validation policy.

complexity String

Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.

disallowUsernameSubstring Boolean

Prevents the use of the username in the password.

minLength Number

Specifies the minimum number of characters that the password must have.

passwordChangeInterval String

Specifies the minimum duration after which you can change the password.

reuseInterval Number

Specifies the number of previous passwords that you can't reuse.

DatabaseInstanceSettingsSqlServerAuditConfig

Bucket string

The name of the destination bucket (e.g., gs://mybucket).

RetentionInterval string

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

UploadInterval string

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

Bucket string

The name of the destination bucket (e.g., gs://mybucket).

RetentionInterval string

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

UploadInterval string

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

bucket String

The name of the destination bucket (e.g., gs://mybucket).

retentionInterval String

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

uploadInterval String

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

bucket string

The name of the destination bucket (e.g., gs://mybucket).

retentionInterval string

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

uploadInterval string

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

bucket str

The name of the destination bucket (e.g., gs://mybucket).

retention_interval str

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

upload_interval str

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

bucket String

The name of the destination bucket (e.g., gs://mybucket).

retentionInterval String

How long to keep generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

uploadInterval String

How often to upload generated audit files. A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".

Import

Database instances can be imported using one of any of these accepted formats

 $ pulumi import gcp:sql/databaseInstance:DatabaseInstance main projects/{{project}}/instances/{{name}}
 $ pulumi import gcp:sql/databaseInstance:DatabaseInstance main {{project}}/{{name}}
 $ pulumi import gcp:sql/databaseInstance:DatabaseInstance main {{name}}

config and set on the server. When importing, double-check that your config has all the fields set that you expect- just seeing no diff isn’t sufficient to know that your config could reproduce the imported resource.

Package Details

Repository
https://github.com/pulumi/pulumi-gcp
License
Apache-2.0
Notes

This Pulumi package is based on the google-beta Terraform Provider.