gcp.sql.DatabaseInstance
Explore with Pulumi AI
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 usegcp.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 runpulumi 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
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const main = new gcp.sql.DatabaseInstance("main", {
name: "main-instance",
databaseVersion: "POSTGRES_15",
region: "us-central1",
settings: {
tier: "db-f1-micro",
},
});
import pulumi
import pulumi_gcp as gcp
main = gcp.sql.DatabaseInstance("main",
name="main-instance",
database_version="POSTGRES_15",
region="us-central1",
settings={
"tier": "db-f1-micro",
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/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{
Name: pulumi.String("main-instance"),
DatabaseVersion: pulumi.String("POSTGRES_15"),
Region: pulumi.String("us-central1"),
Settings: &sql.DatabaseInstanceSettingsArgs{
Tier: pulumi.String("db-f1-micro"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var main = new Gcp.Sql.DatabaseInstance("main", new()
{
Name = "main-instance",
DatabaseVersion = "POSTGRES_15",
Region = "us-central1",
Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
{
Tier = "db-f1-micro",
},
});
});
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()
.name("main-instance")
.databaseVersion("POSTGRES_15")
.region("us-central1")
.settings(DatabaseInstanceSettingsArgs.builder()
.tier("db-f1-micro")
.build())
.build());
}
}
resources:
main:
type: gcp:sql:DatabaseInstance
properties:
name: main-instance
databaseVersion: POSTGRES_15
region: us-central1
settings:
tier: db-f1-micro
Private IP Instance
NOTE: For private IP instance setup, note that the
gcp.sql.DatabaseInstance
does not actually interpolate values fromgcp.servicenetworking.Connection
. You must explicitly add adepends_on
reference as shown below.
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as random from "@pulumi/random";
const privateNetwork = new gcp.compute.Network("private_network", {name: "private-network"});
const privateIpAddress = new gcp.compute.GlobalAddress("private_ip_address", {
name: "private-ip-address",
purpose: "VPC_PEERING",
addressType: "INTERNAL",
prefixLength: 16,
network: privateNetwork.id,
});
const privateVpcConnection = new gcp.servicenetworking.Connection("private_vpc_connection", {
network: privateNetwork.id,
service: "servicenetworking.googleapis.com",
reservedPeeringRanges: [privateIpAddress.name],
});
const dbNameSuffix = new random.RandomId("db_name_suffix", {byteLength: 4});
const instance = new gcp.sql.DatabaseInstance("instance", {
name: pulumi.interpolate`private-instance-${dbNameSuffix.hex}`,
region: "us-central1",
databaseVersion: "MYSQL_5_7",
settings: {
tier: "db-f1-micro",
ipConfiguration: {
ipv4Enabled: false,
privateNetwork: privateNetwork.selfLink,
enablePrivatePathForGoogleCloudServices: true,
},
},
}, {
dependsOn: [privateVpcConnection],
});
import pulumi
import pulumi_gcp as gcp
import pulumi_random as random
private_network = gcp.compute.Network("private_network", name="private-network")
private_ip_address = gcp.compute.GlobalAddress("private_ip_address",
name="private-ip-address",
purpose="VPC_PEERING",
address_type="INTERNAL",
prefix_length=16,
network=private_network.id)
private_vpc_connection = gcp.servicenetworking.Connection("private_vpc_connection",
network=private_network.id,
service="servicenetworking.googleapis.com",
reserved_peering_ranges=[private_ip_address.name])
db_name_suffix = random.RandomId("db_name_suffix", byte_length=4)
instance = gcp.sql.DatabaseInstance("instance",
name=db_name_suffix.hex.apply(lambda hex: f"private-instance-{hex}"),
region="us-central1",
database_version="MYSQL_5_7",
settings={
"tier": "db-f1-micro",
"ip_configuration": {
"ipv4_enabled": False,
"private_network": private_network.self_link,
"enable_private_path_for_google_cloud_services": True,
},
},
opts = pulumi.ResourceOptions(depends_on=[private_vpc_connection]))
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicenetworking"
"github.com/pulumi/pulumi-gcp/sdk/v8/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, "private_network", &compute.NetworkArgs{
Name: pulumi.String("private-network"),
})
if err != nil {
return err
}
privateIpAddress, err := compute.NewGlobalAddress(ctx, "private_ip_address", &compute.GlobalAddressArgs{
Name: pulumi.String("private-ip-address"),
Purpose: pulumi.String("VPC_PEERING"),
AddressType: pulumi.String("INTERNAL"),
PrefixLength: pulumi.Int(16),
Network: privateNetwork.ID(),
})
if err != nil {
return err
}
privateVpcConnection, err := servicenetworking.NewConnection(ctx, "private_vpc_connection", &servicenetworking.ConnectionArgs{
Network: privateNetwork.ID(),
Service: pulumi.String("servicenetworking.googleapis.com"),
ReservedPeeringRanges: pulumi.StringArray{
privateIpAddress.Name,
},
})
if err != nil {
return err
}
dbNameSuffix, err := random.NewRandomId(ctx, "db_name_suffix", &random.RandomIdArgs{
ByteLength: pulumi.Int(4),
})
if err != nil {
return err
}
_, err = sql.NewDatabaseInstance(ctx, "instance", &sql.DatabaseInstanceArgs{
Name: dbNameSuffix.Hex.ApplyT(func(hex string) (string, error) {
return fmt.Sprintf("private-instance-%v", hex), nil
}).(pulumi.StringOutput),
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.SelfLink,
EnablePrivatePathForGoogleCloudServices: pulumi.Bool(true),
},
},
}, pulumi.DependsOn([]pulumi.Resource{
privateVpcConnection,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() =>
{
var privateNetwork = new Gcp.Compute.Network("private_network", new()
{
Name = "private-network",
});
var privateIpAddress = new Gcp.Compute.GlobalAddress("private_ip_address", new()
{
Name = "private-ip-address",
Purpose = "VPC_PEERING",
AddressType = "INTERNAL",
PrefixLength = 16,
Network = privateNetwork.Id,
});
var privateVpcConnection = new Gcp.ServiceNetworking.Connection("private_vpc_connection", new()
{
Network = privateNetwork.Id,
Service = "servicenetworking.googleapis.com",
ReservedPeeringRanges = new[]
{
privateIpAddress.Name,
},
});
var dbNameSuffix = new Random.RandomId("db_name_suffix", new()
{
ByteLength = 4,
});
var instance = new Gcp.Sql.DatabaseInstance("instance", new()
{
Name = dbNameSuffix.Hex.Apply(hex => $"private-instance-{hex}"),
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.SelfLink,
EnablePrivatePathForGoogleCloudServices = true,
},
},
}, new CustomResourceOptions
{
DependsOn =
{
privateVpcConnection,
},
});
});
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.builder()
.name("private-network")
.build());
var privateIpAddress = new GlobalAddress("privateIpAddress", GlobalAddressArgs.builder()
.name("private-ip-address")
.purpose("VPC_PEERING")
.addressType("INTERNAL")
.prefixLength(16)
.network(privateNetwork.id())
.build());
var privateVpcConnection = new Connection("privateVpcConnection", ConnectionArgs.builder()
.network(privateNetwork.id())
.service("servicenetworking.googleapis.com")
.reservedPeeringRanges(privateIpAddress.name())
.build());
var dbNameSuffix = new RandomId("dbNameSuffix", RandomIdArgs.builder()
.byteLength(4)
.build());
var instance = new DatabaseInstance("instance", DatabaseInstanceArgs.builder()
.name(dbNameSuffix.hex().applyValue(hex -> String.format("private-instance-%s", hex)))
.region("us-central1")
.databaseVersion("MYSQL_5_7")
.settings(DatabaseInstanceSettingsArgs.builder()
.tier("db-f1-micro")
.ipConfiguration(DatabaseInstanceSettingsIpConfigurationArgs.builder()
.ipv4Enabled(false)
.privateNetwork(privateNetwork.selfLink())
.enablePrivatePathForGoogleCloudServices(true)
.build())
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(privateVpcConnection)
.build());
}
}
resources:
privateNetwork:
type: gcp:compute:Network
name: private_network
properties:
name: private-network
privateIpAddress:
type: gcp:compute:GlobalAddress
name: private_ip_address
properties:
name: private-ip-address
purpose: VPC_PEERING
addressType: INTERNAL
prefixLength: 16
network: ${privateNetwork.id}
privateVpcConnection:
type: gcp:servicenetworking:Connection
name: private_vpc_connection
properties:
network: ${privateNetwork.id}
service: servicenetworking.googleapis.com
reservedPeeringRanges:
- ${privateIpAddress.name}
dbNameSuffix:
type: random:RandomId
name: db_name_suffix
properties:
byteLength: 4
instance:
type: gcp:sql:DatabaseInstance
properties:
name: private-instance-${dbNameSuffix.hex}
region: us-central1
databaseVersion: MYSQL_5_7
settings:
tier: db-f1-micro
ipConfiguration:
ipv4Enabled: false
privateNetwork: ${privateNetwork.selfLink}
enablePrivatePathForGoogleCloudServices: true
options:
dependson:
- ${privateVpcConnection}
ENTERPRISE_PLUS Instance with data_cache_config
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const main = new gcp.sql.DatabaseInstance("main", {
name: "enterprise-plus-main-instance",
databaseVersion: "MYSQL_8_0_31",
settings: {
tier: "db-perf-optimized-N-2",
edition: "ENTERPRISE_PLUS",
dataCacheConfig: {
dataCacheEnabled: true,
},
},
});
import pulumi
import pulumi_gcp as gcp
main = gcp.sql.DatabaseInstance("main",
name="enterprise-plus-main-instance",
database_version="MYSQL_8_0_31",
settings={
"tier": "db-perf-optimized-N-2",
"edition": "ENTERPRISE_PLUS",
"data_cache_config": {
"data_cache_enabled": True,
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/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{
Name: pulumi.String("enterprise-plus-main-instance"),
DatabaseVersion: pulumi.String("MYSQL_8_0_31"),
Settings: &sql.DatabaseInstanceSettingsArgs{
Tier: pulumi.String("db-perf-optimized-N-2"),
Edition: pulumi.String("ENTERPRISE_PLUS"),
DataCacheConfig: &sql.DatabaseInstanceSettingsDataCacheConfigArgs{
DataCacheEnabled: pulumi.Bool(true),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var main = new Gcp.Sql.DatabaseInstance("main", new()
{
Name = "enterprise-plus-main-instance",
DatabaseVersion = "MYSQL_8_0_31",
Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
{
Tier = "db-perf-optimized-N-2",
Edition = "ENTERPRISE_PLUS",
DataCacheConfig = new Gcp.Sql.Inputs.DatabaseInstanceSettingsDataCacheConfigArgs
{
DataCacheEnabled = true,
},
},
});
});
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 com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsDataCacheConfigArgs;
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()
.name("enterprise-plus-main-instance")
.databaseVersion("MYSQL_8_0_31")
.settings(DatabaseInstanceSettingsArgs.builder()
.tier("db-perf-optimized-N-2")
.edition("ENTERPRISE_PLUS")
.dataCacheConfig(DatabaseInstanceSettingsDataCacheConfigArgs.builder()
.dataCacheEnabled(true)
.build())
.build())
.build());
}
}
resources:
main:
type: gcp:sql:DatabaseInstance
properties:
name: enterprise-plus-main-instance
databaseVersion: MYSQL_8_0_31
settings:
tier: db-perf-optimized-N-2
edition: ENTERPRISE_PLUS
dataCacheConfig:
dataCacheEnabled: true
Cloud SQL Instance with PSC connectivity
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const main = new gcp.sql.DatabaseInstance("main", {
name: "psc-enabled-main-instance",
databaseVersion: "MYSQL_8_0",
settings: {
tier: "db-f1-micro",
ipConfiguration: {
pscConfigs: [{
pscEnabled: true,
allowedConsumerProjects: ["allowed-consumer-project-name"],
}],
ipv4Enabled: false,
},
backupConfiguration: {
enabled: true,
binaryLogEnabled: true,
},
availabilityType: "REGIONAL",
},
});
import pulumi
import pulumi_gcp as gcp
main = gcp.sql.DatabaseInstance("main",
name="psc-enabled-main-instance",
database_version="MYSQL_8_0",
settings={
"tier": "db-f1-micro",
"ip_configuration": {
"psc_configs": [{
"psc_enabled": True,
"allowed_consumer_projects": ["allowed-consumer-project-name"],
}],
"ipv4_enabled": False,
},
"backup_configuration": {
"enabled": True,
"binary_log_enabled": True,
},
"availability_type": "REGIONAL",
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/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{
Name: pulumi.String("psc-enabled-main-instance"),
DatabaseVersion: pulumi.String("MYSQL_8_0"),
Settings: &sql.DatabaseInstanceSettingsArgs{
Tier: pulumi.String("db-f1-micro"),
IpConfiguration: &sql.DatabaseInstanceSettingsIpConfigurationArgs{
PscConfigs: sql.DatabaseInstanceSettingsIpConfigurationPscConfigArray{
&sql.DatabaseInstanceSettingsIpConfigurationPscConfigArgs{
PscEnabled: pulumi.Bool(true),
AllowedConsumerProjects: pulumi.StringArray{
pulumi.String("allowed-consumer-project-name"),
},
},
},
Ipv4Enabled: pulumi.Bool(false),
},
BackupConfiguration: &sql.DatabaseInstanceSettingsBackupConfigurationArgs{
Enabled: pulumi.Bool(true),
BinaryLogEnabled: pulumi.Bool(true),
},
AvailabilityType: pulumi.String("REGIONAL"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var main = new Gcp.Sql.DatabaseInstance("main", new()
{
Name = "psc-enabled-main-instance",
DatabaseVersion = "MYSQL_8_0",
Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
{
Tier = "db-f1-micro",
IpConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationArgs
{
PscConfigs = new[]
{
new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs
{
PscEnabled = true,
AllowedConsumerProjects = new[]
{
"allowed-consumer-project-name",
},
},
},
Ipv4Enabled = false,
},
BackupConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceSettingsBackupConfigurationArgs
{
Enabled = true,
BinaryLogEnabled = true,
},
AvailabilityType = "REGIONAL",
},
});
});
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 com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsIpConfigurationArgs;
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsBackupConfigurationArgs;
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()
.name("psc-enabled-main-instance")
.databaseVersion("MYSQL_8_0")
.settings(DatabaseInstanceSettingsArgs.builder()
.tier("db-f1-micro")
.ipConfiguration(DatabaseInstanceSettingsIpConfigurationArgs.builder()
.pscConfigs(DatabaseInstanceSettingsIpConfigurationPscConfigArgs.builder()
.pscEnabled(true)
.allowedConsumerProjects("allowed-consumer-project-name")
.build())
.ipv4Enabled(false)
.build())
.backupConfiguration(DatabaseInstanceSettingsBackupConfigurationArgs.builder()
.enabled(true)
.binaryLogEnabled(true)
.build())
.availabilityType("REGIONAL")
.build())
.build());
}
}
resources:
main:
type: gcp:sql:DatabaseInstance
properties:
name: psc-enabled-main-instance
databaseVersion: MYSQL_8_0
settings:
tier: db-f1-micro
ipConfiguration:
pscConfigs:
- pscEnabled: true
allowedConsumerProjects:
- allowed-consumer-project-name
ipv4Enabled: false
backupConfiguration:
enabled: true
binaryLogEnabled: true
availabilityType: REGIONAL
Switchover (SQL Server Only)
Users can perform a switchover on any direct cascadable
replica by following the steps below.
~>WARNING: Failure to follow these steps can lead to data loss (You will be warned during plan stage). To prevent data loss during a switchover, please verify your plan with the checklist below.
For a more in-depth walkthrough with example code, see the Switchover Guide
Steps to Invoke Switchover
Create a cascadable
replica in a different region from the primary (cascadable_replica
is set to true in replica_configuration
)
Invoking switchover in the replica resource:
- Change instance_type from
READ_REPLICA_INSTANCE
toCLOUD_SQL_INSTANCE
- Remove
master_instance_name
- Remove
replica_configuration
- Add current primary’s name to the replica’s
replica_names
list
Updating the primary resource:
Change
instance_type
fromCLOUD_SQL_INSTANCE
toREAD_REPLICA_INSTANCE
Set
master_instance_name
to the original replica (which will be primary after switchover)Set
replica_configuration
and setcascadable_replica
totrue
Remove original replica from
replica_names
NOTE: Do not delete the replica_names field, even if it has no replicas remaining. Set replica_names = [ ] to indicate it having no replicas.
Plan and verify that:
pulumi preview
outputs “0 to add, 0 to destroy”pulumi preview
does not say “must be replaced” for any resource- Every resource “will be updated in-place”
- Only the 2 instances involved in switchover have planned changes
- (Recommended) Use
deletion_protection
on instances as a safety measure
Create DatabaseInstance Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new DatabaseInstance(name: string, args: DatabaseInstanceArgs, opts?: CustomResourceOptions);
@overload
def DatabaseInstance(resource_name: str,
args: DatabaseInstanceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def DatabaseInstance(resource_name: str,
opts: Optional[ResourceOptions] = None,
database_version: Optional[str] = None,
master_instance_name: Optional[str] = None,
deletion_protection: Optional[bool] = None,
encryption_key_name: Optional[str] = None,
instance_type: Optional[str] = None,
maintenance_version: Optional[str] = None,
clone: Optional[DatabaseInstanceCloneArgs] = None,
name: Optional[str] = None,
project: Optional[str] = None,
region: Optional[str] = None,
replica_configuration: Optional[DatabaseInstanceReplicaConfigurationArgs] = None,
replica_names: Optional[Sequence[str]] = None,
restore_backup_context: Optional[DatabaseInstanceRestoreBackupContextArgs] = None,
root_password: Optional[str] = None,
settings: Optional[DatabaseInstanceSettingsArgs] = 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.
Parameters
- 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.
Constructor example
The following reference example uses placeholder values for all input properties.
var gcpDatabaseInstanceResource = new Gcp.Sql.DatabaseInstance("gcpDatabaseInstanceResource", new()
{
DatabaseVersion = "string",
MasterInstanceName = "string",
DeletionProtection = false,
EncryptionKeyName = "string",
InstanceType = "string",
MaintenanceVersion = "string",
Clone = new Gcp.Sql.Inputs.DatabaseInstanceCloneArgs
{
SourceInstanceName = "string",
AllocatedIpRange = "string",
DatabaseNames = new[]
{
"string",
},
PointInTime = "string",
PreferredZone = "string",
},
Name = "string",
Project = "string",
Region = "string",
ReplicaConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceReplicaConfigurationArgs
{
CaCertificate = "string",
CascadableReplica = false,
ClientCertificate = "string",
ClientKey = "string",
ConnectRetryInterval = 0,
DumpFilePath = "string",
FailoverTarget = false,
MasterHeartbeatPeriod = 0,
Password = "string",
SslCipher = "string",
Username = "string",
VerifyServerCertificate = false,
},
ReplicaNames = new[]
{
"string",
},
RestoreBackupContext = new Gcp.Sql.Inputs.DatabaseInstanceRestoreBackupContextArgs
{
BackupRunId = 0,
InstanceId = "string",
Project = "string",
},
RootPassword = "string",
Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
{
Tier = "string",
DiskType = "string",
TimeZone = "string",
AvailabilityType = "string",
BackupConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceSettingsBackupConfigurationArgs
{
BackupRetentionSettings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsArgs
{
RetainedBackups = 0,
RetentionUnit = "string",
},
BinaryLogEnabled = false,
Enabled = false,
Location = "string",
PointInTimeRecoveryEnabled = false,
StartTime = "string",
TransactionLogRetentionDays = 0,
},
Collation = "string",
ConnectorEnforcement = "string",
DataCacheConfig = new Gcp.Sql.Inputs.DatabaseInstanceSettingsDataCacheConfigArgs
{
DataCacheEnabled = false,
},
DatabaseFlags = new[]
{
new Gcp.Sql.Inputs.DatabaseInstanceSettingsDatabaseFlagArgs
{
Name = "string",
Value = "string",
},
},
DeletionProtectionEnabled = false,
DenyMaintenancePeriod = new Gcp.Sql.Inputs.DatabaseInstanceSettingsDenyMaintenancePeriodArgs
{
EndDate = "string",
StartDate = "string",
Time = "string",
},
DiskAutoresize = false,
DiskAutoresizeLimit = 0,
Version = 0,
AdvancedMachineFeatures = new Gcp.Sql.Inputs.DatabaseInstanceSettingsAdvancedMachineFeaturesArgs
{
ThreadsPerCore = 0,
},
IpConfiguration = new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationArgs
{
AllocatedIpRange = "string",
AuthorizedNetworks = new[]
{
new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs
{
Value = "string",
ExpirationTime = "string",
Name = "string",
},
},
EnablePrivatePathForGoogleCloudServices = false,
Ipv4Enabled = false,
PrivateNetwork = "string",
PscConfigs = new[]
{
new Gcp.Sql.Inputs.DatabaseInstanceSettingsIpConfigurationPscConfigArgs
{
AllowedConsumerProjects = new[]
{
"string",
},
PscEnabled = false,
},
},
ServerCaMode = "string",
SslMode = "string",
},
EnableDataplexIntegration = false,
EnableGoogleMlIntegration = false,
InsightsConfig = new Gcp.Sql.Inputs.DatabaseInstanceSettingsInsightsConfigArgs
{
QueryInsightsEnabled = false,
QueryPlansPerMinute = 0,
QueryStringLength = 0,
RecordApplicationTags = false,
RecordClientAddress = false,
},
Edition = "string",
LocationPreference = new Gcp.Sql.Inputs.DatabaseInstanceSettingsLocationPreferenceArgs
{
FollowGaeApplication = "string",
SecondaryZone = "string",
Zone = "string",
},
MaintenanceWindow = new Gcp.Sql.Inputs.DatabaseInstanceSettingsMaintenanceWindowArgs
{
Day = 0,
Hour = 0,
UpdateTrack = "string",
},
PasswordValidationPolicy = new Gcp.Sql.Inputs.DatabaseInstanceSettingsPasswordValidationPolicyArgs
{
EnablePasswordPolicy = false,
Complexity = "string",
DisallowUsernameSubstring = false,
MinLength = 0,
PasswordChangeInterval = "string",
ReuseInterval = 0,
},
PricingPlan = "string",
SqlServerAuditConfig = new Gcp.Sql.Inputs.DatabaseInstanceSettingsSqlServerAuditConfigArgs
{
Bucket = "string",
RetentionInterval = "string",
UploadInterval = "string",
},
ActiveDirectoryConfig = new Gcp.Sql.Inputs.DatabaseInstanceSettingsActiveDirectoryConfigArgs
{
Domain = "string",
},
ActivationPolicy = "string",
UserLabels =
{
{ "string", "string" },
},
DiskSize = 0,
},
});
example, err := sql.NewDatabaseInstance(ctx, "gcpDatabaseInstanceResource", &sql.DatabaseInstanceArgs{
DatabaseVersion: pulumi.String("string"),
MasterInstanceName: pulumi.String("string"),
DeletionProtection: pulumi.Bool(false),
EncryptionKeyName: pulumi.String("string"),
InstanceType: pulumi.String("string"),
MaintenanceVersion: pulumi.String("string"),
Clone: &sql.DatabaseInstanceCloneArgs{
SourceInstanceName: pulumi.String("string"),
AllocatedIpRange: pulumi.String("string"),
DatabaseNames: pulumi.StringArray{
pulumi.String("string"),
},
PointInTime: pulumi.String("string"),
PreferredZone: pulumi.String("string"),
},
Name: pulumi.String("string"),
Project: pulumi.String("string"),
Region: pulumi.String("string"),
ReplicaConfiguration: &sql.DatabaseInstanceReplicaConfigurationArgs{
CaCertificate: pulumi.String("string"),
CascadableReplica: pulumi.Bool(false),
ClientCertificate: pulumi.String("string"),
ClientKey: pulumi.String("string"),
ConnectRetryInterval: pulumi.Int(0),
DumpFilePath: pulumi.String("string"),
FailoverTarget: pulumi.Bool(false),
MasterHeartbeatPeriod: pulumi.Int(0),
Password: pulumi.String("string"),
SslCipher: pulumi.String("string"),
Username: pulumi.String("string"),
VerifyServerCertificate: pulumi.Bool(false),
},
ReplicaNames: pulumi.StringArray{
pulumi.String("string"),
},
RestoreBackupContext: &sql.DatabaseInstanceRestoreBackupContextArgs{
BackupRunId: pulumi.Int(0),
InstanceId: pulumi.String("string"),
Project: pulumi.String("string"),
},
RootPassword: pulumi.String("string"),
Settings: &sql.DatabaseInstanceSettingsArgs{
Tier: pulumi.String("string"),
DiskType: pulumi.String("string"),
TimeZone: pulumi.String("string"),
AvailabilityType: pulumi.String("string"),
BackupConfiguration: &sql.DatabaseInstanceSettingsBackupConfigurationArgs{
BackupRetentionSettings: &sql.DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsArgs{
RetainedBackups: pulumi.Int(0),
RetentionUnit: pulumi.String("string"),
},
BinaryLogEnabled: pulumi.Bool(false),
Enabled: pulumi.Bool(false),
Location: pulumi.String("string"),
PointInTimeRecoveryEnabled: pulumi.Bool(false),
StartTime: pulumi.String("string"),
TransactionLogRetentionDays: pulumi.Int(0),
},
Collation: pulumi.String("string"),
ConnectorEnforcement: pulumi.String("string"),
DataCacheConfig: &sql.DatabaseInstanceSettingsDataCacheConfigArgs{
DataCacheEnabled: pulumi.Bool(false),
},
DatabaseFlags: sql.DatabaseInstanceSettingsDatabaseFlagArray{
&sql.DatabaseInstanceSettingsDatabaseFlagArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
DeletionProtectionEnabled: pulumi.Bool(false),
DenyMaintenancePeriod: &sql.DatabaseInstanceSettingsDenyMaintenancePeriodArgs{
EndDate: pulumi.String("string"),
StartDate: pulumi.String("string"),
Time: pulumi.String("string"),
},
DiskAutoresize: pulumi.Bool(false),
DiskAutoresizeLimit: pulumi.Int(0),
Version: pulumi.Int(0),
AdvancedMachineFeatures: &sql.DatabaseInstanceSettingsAdvancedMachineFeaturesArgs{
ThreadsPerCore: pulumi.Int(0),
},
IpConfiguration: &sql.DatabaseInstanceSettingsIpConfigurationArgs{
AllocatedIpRange: pulumi.String("string"),
AuthorizedNetworks: sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArray{
&sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs{
Value: pulumi.String("string"),
ExpirationTime: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
EnablePrivatePathForGoogleCloudServices: pulumi.Bool(false),
Ipv4Enabled: pulumi.Bool(false),
PrivateNetwork: pulumi.String("string"),
PscConfigs: sql.DatabaseInstanceSettingsIpConfigurationPscConfigArray{
&sql.DatabaseInstanceSettingsIpConfigurationPscConfigArgs{
AllowedConsumerProjects: pulumi.StringArray{
pulumi.String("string"),
},
PscEnabled: pulumi.Bool(false),
},
},
ServerCaMode: pulumi.String("string"),
SslMode: pulumi.String("string"),
},
EnableDataplexIntegration: pulumi.Bool(false),
EnableGoogleMlIntegration: pulumi.Bool(false),
InsightsConfig: &sql.DatabaseInstanceSettingsInsightsConfigArgs{
QueryInsightsEnabled: pulumi.Bool(false),
QueryPlansPerMinute: pulumi.Int(0),
QueryStringLength: pulumi.Int(0),
RecordApplicationTags: pulumi.Bool(false),
RecordClientAddress: pulumi.Bool(false),
},
Edition: pulumi.String("string"),
LocationPreference: &sql.DatabaseInstanceSettingsLocationPreferenceArgs{
FollowGaeApplication: pulumi.String("string"),
SecondaryZone: pulumi.String("string"),
Zone: pulumi.String("string"),
},
MaintenanceWindow: &sql.DatabaseInstanceSettingsMaintenanceWindowArgs{
Day: pulumi.Int(0),
Hour: pulumi.Int(0),
UpdateTrack: pulumi.String("string"),
},
PasswordValidationPolicy: &sql.DatabaseInstanceSettingsPasswordValidationPolicyArgs{
EnablePasswordPolicy: pulumi.Bool(false),
Complexity: pulumi.String("string"),
DisallowUsernameSubstring: pulumi.Bool(false),
MinLength: pulumi.Int(0),
PasswordChangeInterval: pulumi.String("string"),
ReuseInterval: pulumi.Int(0),
},
PricingPlan: pulumi.String("string"),
SqlServerAuditConfig: &sql.DatabaseInstanceSettingsSqlServerAuditConfigArgs{
Bucket: pulumi.String("string"),
RetentionInterval: pulumi.String("string"),
UploadInterval: pulumi.String("string"),
},
ActiveDirectoryConfig: &sql.DatabaseInstanceSettingsActiveDirectoryConfigArgs{
Domain: pulumi.String("string"),
},
ActivationPolicy: pulumi.String("string"),
UserLabels: pulumi.StringMap{
"string": pulumi.String("string"),
},
DiskSize: pulumi.Int(0),
},
})
var gcpDatabaseInstanceResource = new DatabaseInstance("gcpDatabaseInstanceResource", DatabaseInstanceArgs.builder()
.databaseVersion("string")
.masterInstanceName("string")
.deletionProtection(false)
.encryptionKeyName("string")
.instanceType("string")
.maintenanceVersion("string")
.clone(DatabaseInstanceCloneArgs.builder()
.sourceInstanceName("string")
.allocatedIpRange("string")
.databaseNames("string")
.pointInTime("string")
.preferredZone("string")
.build())
.name("string")
.project("string")
.region("string")
.replicaConfiguration(DatabaseInstanceReplicaConfigurationArgs.builder()
.caCertificate("string")
.cascadableReplica(false)
.clientCertificate("string")
.clientKey("string")
.connectRetryInterval(0)
.dumpFilePath("string")
.failoverTarget(false)
.masterHeartbeatPeriod(0)
.password("string")
.sslCipher("string")
.username("string")
.verifyServerCertificate(false)
.build())
.replicaNames("string")
.restoreBackupContext(DatabaseInstanceRestoreBackupContextArgs.builder()
.backupRunId(0)
.instanceId("string")
.project("string")
.build())
.rootPassword("string")
.settings(DatabaseInstanceSettingsArgs.builder()
.tier("string")
.diskType("string")
.timeZone("string")
.availabilityType("string")
.backupConfiguration(DatabaseInstanceSettingsBackupConfigurationArgs.builder()
.backupRetentionSettings(DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsArgs.builder()
.retainedBackups(0)
.retentionUnit("string")
.build())
.binaryLogEnabled(false)
.enabled(false)
.location("string")
.pointInTimeRecoveryEnabled(false)
.startTime("string")
.transactionLogRetentionDays(0)
.build())
.collation("string")
.connectorEnforcement("string")
.dataCacheConfig(DatabaseInstanceSettingsDataCacheConfigArgs.builder()
.dataCacheEnabled(false)
.build())
.databaseFlags(DatabaseInstanceSettingsDatabaseFlagArgs.builder()
.name("string")
.value("string")
.build())
.deletionProtectionEnabled(false)
.denyMaintenancePeriod(DatabaseInstanceSettingsDenyMaintenancePeriodArgs.builder()
.endDate("string")
.startDate("string")
.time("string")
.build())
.diskAutoresize(false)
.diskAutoresizeLimit(0)
.version(0)
.advancedMachineFeatures(DatabaseInstanceSettingsAdvancedMachineFeaturesArgs.builder()
.threadsPerCore(0)
.build())
.ipConfiguration(DatabaseInstanceSettingsIpConfigurationArgs.builder()
.allocatedIpRange("string")
.authorizedNetworks(DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs.builder()
.value("string")
.expirationTime("string")
.name("string")
.build())
.enablePrivatePathForGoogleCloudServices(false)
.ipv4Enabled(false)
.privateNetwork("string")
.pscConfigs(DatabaseInstanceSettingsIpConfigurationPscConfigArgs.builder()
.allowedConsumerProjects("string")
.pscEnabled(false)
.build())
.serverCaMode("string")
.sslMode("string")
.build())
.enableDataplexIntegration(false)
.enableGoogleMlIntegration(false)
.insightsConfig(DatabaseInstanceSettingsInsightsConfigArgs.builder()
.queryInsightsEnabled(false)
.queryPlansPerMinute(0)
.queryStringLength(0)
.recordApplicationTags(false)
.recordClientAddress(false)
.build())
.edition("string")
.locationPreference(DatabaseInstanceSettingsLocationPreferenceArgs.builder()
.followGaeApplication("string")
.secondaryZone("string")
.zone("string")
.build())
.maintenanceWindow(DatabaseInstanceSettingsMaintenanceWindowArgs.builder()
.day(0)
.hour(0)
.updateTrack("string")
.build())
.passwordValidationPolicy(DatabaseInstanceSettingsPasswordValidationPolicyArgs.builder()
.enablePasswordPolicy(false)
.complexity("string")
.disallowUsernameSubstring(false)
.minLength(0)
.passwordChangeInterval("string")
.reuseInterval(0)
.build())
.pricingPlan("string")
.sqlServerAuditConfig(DatabaseInstanceSettingsSqlServerAuditConfigArgs.builder()
.bucket("string")
.retentionInterval("string")
.uploadInterval("string")
.build())
.activeDirectoryConfig(DatabaseInstanceSettingsActiveDirectoryConfigArgs.builder()
.domain("string")
.build())
.activationPolicy("string")
.userLabels(Map.of("string", "string"))
.diskSize(0)
.build())
.build());
gcp_database_instance_resource = gcp.sql.DatabaseInstance("gcpDatabaseInstanceResource",
database_version="string",
master_instance_name="string",
deletion_protection=False,
encryption_key_name="string",
instance_type="string",
maintenance_version="string",
clone={
"source_instance_name": "string",
"allocated_ip_range": "string",
"database_names": ["string"],
"point_in_time": "string",
"preferred_zone": "string",
},
name="string",
project="string",
region="string",
replica_configuration={
"ca_certificate": "string",
"cascadable_replica": False,
"client_certificate": "string",
"client_key": "string",
"connect_retry_interval": 0,
"dump_file_path": "string",
"failover_target": False,
"master_heartbeat_period": 0,
"password": "string",
"ssl_cipher": "string",
"username": "string",
"verify_server_certificate": False,
},
replica_names=["string"],
restore_backup_context={
"backup_run_id": 0,
"instance_id": "string",
"project": "string",
},
root_password="string",
settings={
"tier": "string",
"disk_type": "string",
"time_zone": "string",
"availability_type": "string",
"backup_configuration": {
"backup_retention_settings": {
"retained_backups": 0,
"retention_unit": "string",
},
"binary_log_enabled": False,
"enabled": False,
"location": "string",
"point_in_time_recovery_enabled": False,
"start_time": "string",
"transaction_log_retention_days": 0,
},
"collation": "string",
"connector_enforcement": "string",
"data_cache_config": {
"data_cache_enabled": False,
},
"database_flags": [{
"name": "string",
"value": "string",
}],
"deletion_protection_enabled": False,
"deny_maintenance_period": {
"end_date": "string",
"start_date": "string",
"time": "string",
},
"disk_autoresize": False,
"disk_autoresize_limit": 0,
"version": 0,
"advanced_machine_features": {
"threads_per_core": 0,
},
"ip_configuration": {
"allocated_ip_range": "string",
"authorized_networks": [{
"value": "string",
"expiration_time": "string",
"name": "string",
}],
"enable_private_path_for_google_cloud_services": False,
"ipv4_enabled": False,
"private_network": "string",
"psc_configs": [{
"allowed_consumer_projects": ["string"],
"psc_enabled": False,
}],
"server_ca_mode": "string",
"ssl_mode": "string",
},
"enable_dataplex_integration": False,
"enable_google_ml_integration": False,
"insights_config": {
"query_insights_enabled": False,
"query_plans_per_minute": 0,
"query_string_length": 0,
"record_application_tags": False,
"record_client_address": False,
},
"edition": "string",
"location_preference": {
"follow_gae_application": "string",
"secondary_zone": "string",
"zone": "string",
},
"maintenance_window": {
"day": 0,
"hour": 0,
"update_track": "string",
},
"password_validation_policy": {
"enable_password_policy": False,
"complexity": "string",
"disallow_username_substring": False,
"min_length": 0,
"password_change_interval": "string",
"reuse_interval": 0,
},
"pricing_plan": "string",
"sql_server_audit_config": {
"bucket": "string",
"retention_interval": "string",
"upload_interval": "string",
},
"active_directory_config": {
"domain": "string",
},
"activation_policy": "string",
"user_labels": {
"string": "string",
},
"disk_size": 0,
})
const gcpDatabaseInstanceResource = new gcp.sql.DatabaseInstance("gcpDatabaseInstanceResource", {
databaseVersion: "string",
masterInstanceName: "string",
deletionProtection: false,
encryptionKeyName: "string",
instanceType: "string",
maintenanceVersion: "string",
clone: {
sourceInstanceName: "string",
allocatedIpRange: "string",
databaseNames: ["string"],
pointInTime: "string",
preferredZone: "string",
},
name: "string",
project: "string",
region: "string",
replicaConfiguration: {
caCertificate: "string",
cascadableReplica: false,
clientCertificate: "string",
clientKey: "string",
connectRetryInterval: 0,
dumpFilePath: "string",
failoverTarget: false,
masterHeartbeatPeriod: 0,
password: "string",
sslCipher: "string",
username: "string",
verifyServerCertificate: false,
},
replicaNames: ["string"],
restoreBackupContext: {
backupRunId: 0,
instanceId: "string",
project: "string",
},
rootPassword: "string",
settings: {
tier: "string",
diskType: "string",
timeZone: "string",
availabilityType: "string",
backupConfiguration: {
backupRetentionSettings: {
retainedBackups: 0,
retentionUnit: "string",
},
binaryLogEnabled: false,
enabled: false,
location: "string",
pointInTimeRecoveryEnabled: false,
startTime: "string",
transactionLogRetentionDays: 0,
},
collation: "string",
connectorEnforcement: "string",
dataCacheConfig: {
dataCacheEnabled: false,
},
databaseFlags: [{
name: "string",
value: "string",
}],
deletionProtectionEnabled: false,
denyMaintenancePeriod: {
endDate: "string",
startDate: "string",
time: "string",
},
diskAutoresize: false,
diskAutoresizeLimit: 0,
version: 0,
advancedMachineFeatures: {
threadsPerCore: 0,
},
ipConfiguration: {
allocatedIpRange: "string",
authorizedNetworks: [{
value: "string",
expirationTime: "string",
name: "string",
}],
enablePrivatePathForGoogleCloudServices: false,
ipv4Enabled: false,
privateNetwork: "string",
pscConfigs: [{
allowedConsumerProjects: ["string"],
pscEnabled: false,
}],
serverCaMode: "string",
sslMode: "string",
},
enableDataplexIntegration: false,
enableGoogleMlIntegration: false,
insightsConfig: {
queryInsightsEnabled: false,
queryPlansPerMinute: 0,
queryStringLength: 0,
recordApplicationTags: false,
recordClientAddress: false,
},
edition: "string",
locationPreference: {
followGaeApplication: "string",
secondaryZone: "string",
zone: "string",
},
maintenanceWindow: {
day: 0,
hour: 0,
updateTrack: "string",
},
passwordValidationPolicy: {
enablePasswordPolicy: false,
complexity: "string",
disallowUsernameSubstring: false,
minLength: 0,
passwordChangeInterval: "string",
reuseInterval: 0,
},
pricingPlan: "string",
sqlServerAuditConfig: {
bucket: "string",
retentionInterval: "string",
uploadInterval: "string",
},
activeDirectoryConfig: {
domain: "string",
},
activationPolicy: "string",
userLabels: {
string: "string",
},
diskSize: 0,
},
});
type: gcp:sql:DatabaseInstance
properties:
clone:
allocatedIpRange: string
databaseNames:
- string
pointInTime: string
preferredZone: string
sourceInstanceName: string
databaseVersion: string
deletionProtection: false
encryptionKeyName: string
instanceType: string
maintenanceVersion: string
masterInstanceName: string
name: string
project: string
region: string
replicaConfiguration:
caCertificate: string
cascadableReplica: false
clientCertificate: string
clientKey: string
connectRetryInterval: 0
dumpFilePath: string
failoverTarget: false
masterHeartbeatPeriod: 0
password: string
sslCipher: string
username: string
verifyServerCertificate: false
replicaNames:
- string
restoreBackupContext:
backupRunId: 0
instanceId: string
project: string
rootPassword: string
settings:
activationPolicy: string
activeDirectoryConfig:
domain: string
advancedMachineFeatures:
threadsPerCore: 0
availabilityType: string
backupConfiguration:
backupRetentionSettings:
retainedBackups: 0
retentionUnit: string
binaryLogEnabled: false
enabled: false
location: string
pointInTimeRecoveryEnabled: false
startTime: string
transactionLogRetentionDays: 0
collation: string
connectorEnforcement: string
dataCacheConfig:
dataCacheEnabled: false
databaseFlags:
- name: string
value: string
deletionProtectionEnabled: false
denyMaintenancePeriod:
endDate: string
startDate: string
time: string
diskAutoresize: false
diskAutoresizeLimit: 0
diskSize: 0
diskType: string
edition: string
enableDataplexIntegration: false
enableGoogleMlIntegration: false
insightsConfig:
queryInsightsEnabled: false
queryPlansPerMinute: 0
queryStringLength: 0
recordApplicationTags: false
recordClientAddress: false
ipConfiguration:
allocatedIpRange: string
authorizedNetworks:
- expirationTime: string
name: string
value: string
enablePrivatePathForGoogleCloudServices: false
ipv4Enabled: false
privateNetwork: string
pscConfigs:
- allowedConsumerProjects:
- string
pscEnabled: false
serverCaMode: string
sslMode: string
locationPreference:
followGaeApplication: string
secondaryZone: string
zone: string
maintenanceWindow:
day: 0
hour: 0
updateTrack: string
passwordValidationPolicy:
complexity: string
disallowUsernameSubstring: false
enablePasswordPolicy: false
minLength: 0
passwordChangeInterval: string
reuseInterval: 0
pricingPlan: string
sqlServerAuditConfig:
bucket: string
retentionInterval: string
uploadInterval: string
tier: string
timeZone: string
userLabels:
string: string
version: 0
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
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The DatabaseInstance resource accepts the following input properties:
- Database
Version 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
,POSTGRES_15
,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
Database
Instance Clone - 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
orupdate
command that deletes the instance will fail. Defaults totrue
. - Encryption
Key stringName - 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. - Instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - Maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - Master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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.
- Replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- Replica
Names List<string> - List of replica names. Can be updated.
- Restore
Backup DatabaseContext Instance Restore Backup Context - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- Settings
Database
Instance Settings - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- Database
Version 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
,POSTGRES_15
,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
Database
Instance Clone Args - 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
orupdate
command that deletes the instance will fail. Defaults totrue
. - Encryption
Key stringName - 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. - Instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - Maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - Master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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.
- Replica
Configuration DatabaseInstance Replica Configuration Args - The configuration for replication. The configuration is detailed below.
- Replica
Names []string - List of replica names. Can be updated.
- Restore
Backup DatabaseContext Instance Restore Backup Context Args - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- Settings
Database
Instance Settings Args - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- database
Version 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
,POSTGRES_15
,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_
Database
Instance Clone - 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 Boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - encryption
Key StringName - 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. - instance
Type String - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - maintenance
Version String - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance StringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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.
- replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- replica
Names List<String> - List of replica names. Can be updated.
- restore
Backup DatabaseContext Instance Restore Backup Context - 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 String - Initial root password. Can be updated. Required for MS SQL Server.
- settings
Database
Instance Settings - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- database
Version 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
,POSTGRES_15
,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
Database
Instance Clone - 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 boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - encryption
Key stringName - 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. - instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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.
- replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- replica
Names string[] - List of replica names. Can be updated.
- restore
Backup DatabaseContext Instance Restore Backup Context - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- settings
Database
Instance Settings - 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
,POSTGRES_15
,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
Database
Instance Clone Args - 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
orupdate
command that deletes the instance will fail. Defaults totrue
. - encryption_
key_ strname - 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. - instance_
type str - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - 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 whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master_
instance_ strname - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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 DatabaseInstance Replica Configuration Args - The configuration for replication. The configuration is detailed below.
- replica_
names Sequence[str] - List of replica names. Can be updated.
- restore_
backup_ Databasecontext Instance Restore Backup Context Args - 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. Can be updated. Required for MS SQL Server.
- settings
Database
Instance Settings Args - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- database
Version 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
,POSTGRES_15
,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.
- deletion
Protection Boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - encryption
Key StringName - 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. - instance
Type String - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - maintenance
Version String - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance StringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- 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.
- replica
Configuration Property Map - The configuration for replication. The configuration is detailed below.
- replica
Names List<String> - List of replica names. Can be updated.
- restore
Backup Property MapContext - 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 String - Initial root password. Can be updated. 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:
- Available
Maintenance List<string>Versions - The list of all maintenance versions applicable on the instance.
- Connection
Name string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- Dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- First
Ip stringAddress - The first IPv4 address of any type assigned.
- Id string
- The provider-assigned unique ID for this managed resource.
- Ip
Addresses List<DatabaseInstance Ip Address> - Private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - Psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- Public
Ip stringAddress - The first public (
PRIMARY
) IPv4 address assigned. - Self
Link string - The URI of the created resource.
- Server
Ca List<DatabaseCerts Instance Server Ca Cert> - Service
Account stringEmail Address - The service account email address assigned to the instance.
- Available
Maintenance []stringVersions - The list of all maintenance versions applicable on the instance.
- Connection
Name string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- Dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- First
Ip stringAddress - The first IPv4 address of any type assigned.
- Id string
- The provider-assigned unique ID for this managed resource.
- Ip
Addresses []DatabaseInstance Ip Address - Private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - Psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- Public
Ip stringAddress - The first public (
PRIMARY
) IPv4 address assigned. - Self
Link string - The URI of the created resource.
- Server
Ca []DatabaseCerts Instance Server Ca Cert - Service
Account stringEmail Address - The service account email address assigned to the instance.
- available
Maintenance List<String>Versions - The list of all maintenance versions applicable on the instance.
- connection
Name String - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- dns
Name String - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- first
Ip StringAddress - The first IPv4 address of any type assigned.
- id String
- The provider-assigned unique ID for this managed resource.
- ip
Addresses List<DatabaseInstance Ip Address> - private
Ip StringAddress - The first private (
PRIVATE
) IPv4 address assigned. - psc
Service StringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip StringAddress - The first public (
PRIMARY
) IPv4 address assigned. - self
Link String - The URI of the created resource.
- server
Ca List<DatabaseCerts Instance Server Ca Cert> - service
Account StringEmail Address - The service account email address assigned to the instance.
- available
Maintenance string[]Versions - The list of all maintenance versions applicable on the instance.
- connection
Name string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- first
Ip stringAddress - The first IPv4 address of any type assigned.
- id string
- The provider-assigned unique ID for this managed resource.
- ip
Addresses DatabaseInstance Ip Address[] - private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip stringAddress - The first public (
PRIMARY
) IPv4 address assigned. - self
Link string - The URI of the created resource.
- server
Ca DatabaseCerts Instance Server Ca Cert[] - service
Account stringEmail Address - The service account email address assigned to the instance.
- available_
maintenance_ Sequence[str]versions - 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.
- dns_
name str - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- first_
ip_ straddress - The first IPv4 address of any type assigned.
- id str
- The provider-assigned unique ID for this managed resource.
- ip_
addresses Sequence[DatabaseInstance Ip Address] - private_
ip_ straddress - The first private (
PRIVATE
) IPv4 address assigned. - psc_
service_ strattachment_ link - the URI that points to the service attachment of the instance.
- public_
ip_ straddress - The first public (
PRIMARY
) IPv4 address assigned. - self_
link str - The URI of the created resource.
- server_
ca_ Sequence[Databasecerts Instance Server Ca Cert] - service_
account_ stremail_ address - The service account email address assigned to the instance.
- available
Maintenance List<String>Versions - The list of all maintenance versions applicable on the instance.
- connection
Name String - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- dns
Name String - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- first
Ip StringAddress - The first IPv4 address of any type assigned.
- id String
- The provider-assigned unique ID for this managed resource.
- ip
Addresses List<Property Map> - private
Ip StringAddress - The first private (
PRIVATE
) IPv4 address assigned. - psc
Service StringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip StringAddress - The first public (
PRIMARY
) IPv4 address assigned. - self
Link String - The URI of the created resource.
- server
Ca List<Property Map>Certs - service
Account StringEmail Address - 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,
dns_name: Optional[str] = None,
encryption_key_name: Optional[str] = None,
first_ip_address: Optional[str] = None,
instance_type: 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,
psc_service_attachment_link: Optional[str] = None,
public_ip_address: Optional[str] = None,
region: Optional[str] = None,
replica_configuration: Optional[DatabaseInstanceReplicaConfigurationArgs] = None,
replica_names: Optional[Sequence[str]] = 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.
- Available
Maintenance List<string>Versions - The list of all maintenance versions applicable on the instance.
- Clone
Database
Instance Clone - 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 string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- Database
Version 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
,POSTGRES_15
,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
orupdate
command that deletes the instance will fail. Defaults totrue
. - Dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- Encryption
Key stringName - 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 stringAddress - The first IPv4 address of any type assigned.
- Instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - Ip
Addresses List<DatabaseInstance Ip Address> - Maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - Master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- Private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- Public
Ip stringAddress - 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.
- Replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- Replica
Names List<string> - List of replica names. Can be updated.
- Restore
Backup DatabaseContext Instance Restore Backup Context - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- Self
Link string - The URI of the created resource.
- Server
Ca List<DatabaseCerts Instance Server Ca Cert> - Service
Account stringEmail Address - The service account email address assigned to the instance.
- Settings
Database
Instance Settings - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- Available
Maintenance []stringVersions - The list of all maintenance versions applicable on the instance.
- Clone
Database
Instance Clone Args - 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 string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- Database
Version 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
,POSTGRES_15
,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
orupdate
command that deletes the instance will fail. Defaults totrue
. - Dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- Encryption
Key stringName - 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 stringAddress - The first IPv4 address of any type assigned.
- Instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - Ip
Addresses []DatabaseInstance Ip Address Args - Maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - Master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- Private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- Public
Ip stringAddress - 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.
- Replica
Configuration DatabaseInstance Replica Configuration Args - The configuration for replication. The configuration is detailed below.
- Replica
Names []string - List of replica names. Can be updated.
- Restore
Backup DatabaseContext Instance Restore Backup Context Args - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- Self
Link string - The URI of the created resource.
- Server
Ca []DatabaseCerts Instance Server Ca Cert Args - Service
Account stringEmail Address - The service account email address assigned to the instance.
- Settings
Database
Instance Settings Args - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- available
Maintenance List<String>Versions - The list of all maintenance versions applicable on the instance.
- clone_
Database
Instance Clone - 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 String - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- database
Version 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
,POSTGRES_15
,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 Boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - dns
Name String - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- encryption
Key StringName - 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 StringAddress - The first IPv4 address of any type assigned.
- instance
Type String - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - ip
Addresses List<DatabaseInstance Ip Address> - maintenance
Version String - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance StringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- private
Ip StringAddress - The first private (
PRIVATE
) IPv4 address assigned. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- psc
Service StringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip StringAddress - 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.
- replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- replica
Names List<String> - List of replica names. Can be updated.
- restore
Backup DatabaseContext Instance Restore Backup Context - 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 String - Initial root password. Can be updated. Required for MS SQL Server.
- self
Link String - The URI of the created resource.
- server
Ca List<DatabaseCerts Instance Server Ca Cert> - service
Account StringEmail Address - The service account email address assigned to the instance.
- settings
Database
Instance Settings - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- available
Maintenance string[]Versions - The list of all maintenance versions applicable on the instance.
- clone
Database
Instance Clone - 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 string - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- database
Version 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
,POSTGRES_15
,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 boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - dns
Name string - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- encryption
Key stringName - 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 stringAddress - The first IPv4 address of any type assigned.
- instance
Type string - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - ip
Addresses DatabaseInstance Ip Address[] - maintenance
Version string - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance stringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- private
Ip stringAddress - The first private (
PRIVATE
) IPv4 address assigned. - project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- psc
Service stringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip stringAddress - 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.
- replica
Configuration DatabaseInstance Replica Configuration - The configuration for replication. The configuration is detailed below.
- replica
Names string[] - List of replica names. Can be updated.
- restore
Backup DatabaseContext Instance Restore Backup Context - 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 string - Initial root password. Can be updated. Required for MS SQL Server.
- self
Link string - The URI of the created resource.
- server
Ca DatabaseCerts Instance Server Ca Cert[] - service
Account stringEmail Address - The service account email address assigned to the instance.
- settings
Database
Instance Settings - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- available_
maintenance_ Sequence[str]versions - The list of all maintenance versions applicable on the instance.
- clone
Database
Instance Clone Args - 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
,POSTGRES_15
,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
orupdate
command that deletes the instance will fail. Defaults totrue
. - dns_
name str - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- encryption_
key_ strname - 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_ straddress - The first IPv4 address of any type assigned.
- instance_
type str - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - ip_
addresses Sequence[DatabaseInstance Ip Address Args] - 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 whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master_
instance_ strname - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- private_
ip_ straddress - The first private (
PRIVATE
) IPv4 address assigned. - project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- psc_
service_ strattachment_ link - the URI that points to the service attachment of the instance.
- public_
ip_ straddress - 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 DatabaseInstance Replica Configuration Args - The configuration for replication. The configuration is detailed below.
- replica_
names Sequence[str] - List of replica names. Can be updated.
- restore_
backup_ Databasecontext Instance Restore Backup Context Args - 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. Can be updated. Required for MS SQL Server.
- self_
link str - The URI of the created resource.
- server_
ca_ Sequence[Databasecerts Instance Server Ca Cert Args] - service_
account_ stremail_ address - The service account email address assigned to the instance.
- settings
Database
Instance Settings Args - The settings to use for the database. The
configuration is detailed below. Required if
clone
is not set.
- available
Maintenance List<String>Versions - 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.
- connection
Name String - The connection name of the instance to be used in connection strings. For example, when connecting with Cloud SQL Proxy.
- database
Version 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
,POSTGRES_15
,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 Boolean - Whether or not to allow the provider to destroy the instance. Unless this field is set to false
in state, a
destroy
orupdate
command that deletes the instance will fail. Defaults totrue
. - dns
Name String - The DNS name of the instance. See Connect to an instance using Private Service Connect for more details.
- encryption
Key StringName - 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 StringAddress - The first IPv4 address of any type assigned.
- instance
Type String - The type of the instance. The supported values are
SQL_INSTANCE_TYPE_UNSPECIFIED
,CLOUD_SQL_INSTANCE
,ON_PREMISES_INSTANCE
andREAD_REPLICA_INSTANCE
. - ip
Addresses List<Property Map> - maintenance
Version String - The current software version on the instance. This attribute can not be set during creation. Refer to
available_maintenance_versions
attribute to see whatmaintenance_version
are available for upgrade. When this attribute gets updated, it will cause an instance restart. Setting amaintenance_version
value that is older than the current one on the instance will be ignored. - master
Instance StringName - 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
- The name of the instance. If the name is left blank, the provider will randomly generate one when the instance is first created. This is done because after a name is used, it cannot be reused for up to one week.
- private
Ip StringAddress - The first private (
PRIVATE
) IPv4 address assigned. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- psc
Service StringAttachment Link - the URI that points to the service attachment of the instance.
- public
Ip StringAddress - 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.
- replica
Configuration Property Map - The configuration for replication. The configuration is detailed below.
- replica
Names List<String> - List of replica names. Can be updated.
- restore
Backup Property MapContext - 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 String - Initial root password. Can be updated. Required for MS SQL Server.
- self
Link String - The URI of the created resource.
- server
Ca List<Property Map>Certs - service
Account StringEmail Address - 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, DatabaseInstanceCloneArgs
- Source
Instance stringName - Name of the source instance which will be cloned.
- Allocated
Ip stringRange - 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?.
- Database
Names List<string> - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - Point
In stringTime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- Preferred
Zone string - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
- Source
Instance stringName - Name of the source instance which will be cloned.
- Allocated
Ip stringRange - 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?.
- Database
Names []string - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - Point
In stringTime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- Preferred
Zone string - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
- source
Instance StringName - Name of the source instance which will be cloned.
- allocated
Ip StringRange - 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?.
- database
Names List<String> - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - point
In StringTime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- preferred
Zone String - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
- source
Instance stringName - Name of the source instance which will be cloned.
- allocated
Ip stringRange - 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?.
- database
Names string[] - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - point
In stringTime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- preferred
Zone string - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
- source_
instance_ strname - Name of the source instance which will be cloned.
- allocated_
ip_ strrange - 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?.
- database_
names Sequence[str] - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - point_
in_ strtime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- preferred_
zone str - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
- source
Instance StringName - Name of the source instance which will be cloned.
- allocated
Ip StringRange - 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?.
- database
Names List<String> - (SQL Server only, use with
point_in_time
) Clone only the specified databases from the source instance. Clone all databases if empty. - point
In StringTime The timestamp of the point in time that should be restored.
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".
- preferred
Zone String - (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance. clone-unavailable-instance
DatabaseInstanceIpAddress, DatabaseInstanceIpAddressArgs
- Ip
Address string - The IPv4 address assigned.
- Time
To stringRetire - The time this IP address will be retired, in RFC 3339 format.
- Type string
- The type of this IP address.
- Ip
Address string - The IPv4 address assigned.
- Time
To stringRetire - The time this IP address will be retired, in RFC 3339 format.
- Type string
- The type of this IP address.
- ip
Address String - The IPv4 address assigned.
- time
To StringRetire - The time this IP address will be retired, in RFC 3339 format.
- type String
- The type of this IP address.
- ip
Address string - The IPv4 address assigned.
- time
To stringRetire - The time this IP address will be retired, in RFC 3339 format.
- type string
- The type of this IP address.
- ip_
address str - The IPv4 address assigned.
- time_
to_ strretire - The time this IP address will be retired, in RFC 3339 format.
- type str
- The type of this IP address.
- ip
Address String - The IPv4 address assigned.
- time
To StringRetire - The time this IP address will be retired, in RFC 3339 format.
- type String
- The type of this IP address.
DatabaseInstanceReplicaConfiguration, DatabaseInstanceReplicaConfigurationArgs
- Ca
Certificate string - PEM representation of the trusted CA's x509 certificate.
- Cascadable
Replica bool Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- Client
Certificate string - PEM representation of the replica's x509 certificate.
- Client
Key string - PEM representation of the replica's private key. The
corresponding public key in encoded in the
client_certificate
. - Connect
Retry intInterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- Dump
File stringPath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - 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.
NOTE: Not supported for Postgres database.
- Master
Heartbeat intPeriod - Time in ms between replication heartbeats.
- Password string
- Password for the replication connection.
- Ssl
Cipher string - Permissible ciphers for use in SSL encryption.
- Username string
- Username for replication connection.
- Verify
Server boolCertificate - True if the master's common name value is checked during the SSL handshake.
- Ca
Certificate string - PEM representation of the trusted CA's x509 certificate.
- Cascadable
Replica bool Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- Client
Certificate string - PEM representation of the replica's x509 certificate.
- Client
Key string - PEM representation of the replica's private key. The
corresponding public key in encoded in the
client_certificate
. - Connect
Retry intInterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- Dump
File stringPath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - 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.
NOTE: Not supported for Postgres database.
- Master
Heartbeat intPeriod - Time in ms between replication heartbeats.
- Password string
- Password for the replication connection.
- Ssl
Cipher string - Permissible ciphers for use in SSL encryption.
- Username string
- Username for replication connection.
- Verify
Server boolCertificate - True if the master's common name value is checked during the SSL handshake.
- ca
Certificate String - PEM representation of the trusted CA's x509 certificate.
- cascadable
Replica Boolean Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- client
Certificate String - PEM representation of the replica's x509 certificate.
- client
Key String - PEM representation of the replica's private key. The
corresponding public key in encoded in the
client_certificate
. - connect
Retry IntegerInterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- dump
File StringPath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - failover
Target 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.
NOTE: Not supported for Postgres database.
- master
Heartbeat IntegerPeriod - Time in ms between replication heartbeats.
- password String
- Password for the replication connection.
- ssl
Cipher String - Permissible ciphers for use in SSL encryption.
- username String
- Username for replication connection.
- verify
Server BooleanCertificate - True if the master's common name value is checked during the SSL handshake.
- ca
Certificate string - PEM representation of the trusted CA's x509 certificate.
- cascadable
Replica boolean Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- client
Certificate string - PEM representation of the replica's x509 certificate.
- client
Key string - PEM representation of the replica's private key. The
corresponding public key in encoded in the
client_certificate
. - connect
Retry numberInterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- dump
File stringPath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - failover
Target 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.
NOTE: Not supported for Postgres database.
- master
Heartbeat numberPeriod - Time in ms between replication heartbeats.
- password string
- Password for the replication connection.
- ssl
Cipher string - Permissible ciphers for use in SSL encryption.
- username string
- Username for replication connection.
- verify
Server booleanCertificate - 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.
- cascadable_
replica bool Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- 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_ intinterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- dump_
file_ strpath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - 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.
NOTE: Not supported for Postgres database.
- master_
heartbeat_ intperiod - Time in ms between replication heartbeats.
- password str
- Password for the replication connection.
- ssl_
cipher str - Permissible ciphers for use in SSL encryption.
- username str
- Username for replication connection.
- verify_
server_ boolcertificate - True if the master's common name value is checked during the SSL handshake.
- ca
Certificate String - PEM representation of the trusted CA's x509 certificate.
- cascadable
Replica Boolean Specifies if the replica is a cascadable replica. If true, instance must be in different region from primary.
NOTE: Only supported for SQL Server database.
- client
Certificate String - PEM representation of the replica's x509 certificate.
- client
Key String - PEM representation of the replica's private key. The
corresponding public key in encoded in the
client_certificate
. - connect
Retry NumberInterval - The number of seconds between connect retries. MySQL's default is 60 seconds.
- dump
File StringPath - Path to a SQL file in GCS from which replica
instances are created. Format is
gs://bucket/filename
. Note, if the master instance is a source representation instance this field must be present. - failover
Target 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.
NOTE: Not supported for Postgres database.
- master
Heartbeat NumberPeriod - Time in ms between replication heartbeats.
- password String
- Password for the replication connection.
- ssl
Cipher String - Permissible ciphers for use in SSL encryption.
- username String
- Username for replication connection.
- verify
Server BooleanCertificate - True if the master's common name value is checked during the SSL handshake.
DatabaseInstanceRestoreBackupContext, DatabaseInstanceRestoreBackupContextArgs
- Backup
Run intId - The ID of the backup run to restore from.
- Instance
Id 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 intId - The ID of the backup run to restore from.
- Instance
Id 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 IntegerId - The ID of the backup run to restore from.
- instance
Id 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 numberId - The ID of the backup run to restore from.
- instance
Id 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_ intid - 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.`
- backup
Run NumberId - The ID of the backup run to restore from.
- instance
Id 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, DatabaseInstanceServerCaCertArgs
- Cert string
- The CA Certificate used to connect to the SQL Instance via SSL.
- Common
Name string - The CN valid for the CA Cert.
- Create
Time string - Creation time of the CA Cert.
- Expiration
Time string - Expiration time of the CA Cert.
- Sha1Fingerprint string
- SHA Fingerprint of the CA Cert.
- Cert string
- The CA Certificate used to connect to the SQL Instance via SSL.
- Common
Name string - The CN valid for the CA Cert.
- Create
Time string - Creation time of the CA Cert.
- Expiration
Time string - Expiration time of the CA Cert.
- Sha1Fingerprint string
- SHA Fingerprint of the CA Cert.
- cert String
- The CA Certificate used to connect to the SQL Instance via SSL.
- common
Name String - The CN valid for the CA Cert.
- create
Time String - Creation time of the CA Cert.
- expiration
Time String - Expiration time of the CA Cert.
- sha1Fingerprint String
- SHA Fingerprint of the CA Cert.
- cert string
- The CA Certificate used to connect to the SQL Instance via SSL.
- common
Name string - The CN valid for the CA Cert.
- create
Time string - Creation time of the CA Cert.
- expiration
Time string - Expiration time of the CA Cert.
- sha1Fingerprint string
- SHA Fingerprint of the CA Cert.
- cert str
- The CA Certificate used to connect to the SQL Instance via SSL.
- common_
name str - The CN valid for the CA Cert.
- create_
time str - Creation time of the CA Cert.
- expiration_
time str - Expiration time of the CA Cert.
- sha1_
fingerprint str - SHA Fingerprint of the CA Cert.
- cert String
- The CA Certificate used to connect to the SQL Instance via SSL.
- common
Name String - The CN valid for the CA Cert.
- create
Time String - Creation time of the CA Cert.
- expiration
Time String - Expiration time of the CA Cert.
- sha1Fingerprint String
- SHA Fingerprint of the CA Cert.
DatabaseInstanceSettings, DatabaseInstanceSettingsArgs
- 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. - Activation
Policy string - This specifies when the instance should be
active. Can be either
ALWAYS
,NEVER
orON_DEMAND
. - Active
Directory DatabaseConfig Instance Settings Active Directory Config - Advanced
Machine DatabaseFeatures Instance Settings Advanced Machine Features - Availability
Type string - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - Backup
Configuration DatabaseInstance Settings Backup Configuration - Collation string
- The name of server instance collation.
- Connector
Enforcement string - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- Data
Cache DatabaseConfig Instance Settings Data Cache Config - Data cache configurations.
- Database
Flags List<DatabaseInstance Settings Database Flag> - Deletion
Protection boolEnabled - Configuration to protect against accidental instance deletion.
- Deny
Maintenance DatabasePeriod Instance Settings Deny Maintenance Period - Disk
Autoresize bool - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - Disk
Autoresize intLimit - 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - Disk
Type string - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - Edition string
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - Enable
Dataplex boolIntegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - Enable
Google boolMl Integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - Insights
Config DatabaseInstance Settings Insights Config - Configuration of Query Insights.
- Ip
Configuration DatabaseInstance Settings Ip Configuration - Location
Preference DatabaseInstance Settings Location Preference - Maintenance
Window DatabaseInstance Settings Maintenance Window - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- Password
Validation DatabasePolicy Instance Settings Password Validation Policy - Pricing
Plan string - Pricing plan for this instance, can only be
PER_USE
. - Sql
Server DatabaseAudit Config Instance Settings Sql Server Audit Config - Time
Zone string - The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.
- User
Labels Dictionary<string, string> - A set of key/value user label pairs to assign to the instance.
- Version int
- Used to make sure changes to the
settings
block are atomic.
- 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. - Activation
Policy string - This specifies when the instance should be
active. Can be either
ALWAYS
,NEVER
orON_DEMAND
. - Active
Directory DatabaseConfig Instance Settings Active Directory Config - Advanced
Machine DatabaseFeatures Instance Settings Advanced Machine Features - Availability
Type string - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - Backup
Configuration DatabaseInstance Settings Backup Configuration - Collation string
- The name of server instance collation.
- Connector
Enforcement string - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- Data
Cache DatabaseConfig Instance Settings Data Cache Config - Data cache configurations.
- Database
Flags []DatabaseInstance Settings Database Flag - Deletion
Protection boolEnabled - Configuration to protect against accidental instance deletion.
- Deny
Maintenance DatabasePeriod Instance Settings Deny Maintenance Period - Disk
Autoresize bool - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - Disk
Autoresize intLimit - 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - Disk
Type string - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - Edition string
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - Enable
Dataplex boolIntegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - Enable
Google boolMl Integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - Insights
Config DatabaseInstance Settings Insights Config - Configuration of Query Insights.
- Ip
Configuration DatabaseInstance Settings Ip Configuration - Location
Preference DatabaseInstance Settings Location Preference - Maintenance
Window DatabaseInstance Settings Maintenance Window - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- Password
Validation DatabasePolicy Instance Settings Password Validation Policy - Pricing
Plan string - Pricing plan for this instance, can only be
PER_USE
. - Sql
Server DatabaseAudit Config Instance Settings Sql Server Audit Config - Time
Zone string - The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.
- User
Labels map[string]string - A set of key/value user label pairs to assign to the instance.
- Version int
- Used to make sure changes to the
settings
block are atomic.
- 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. - activation
Policy String - This specifies when the instance should be
active. Can be either
ALWAYS
,NEVER
orON_DEMAND
. - active
Directory DatabaseConfig Instance Settings Active Directory Config - advanced
Machine DatabaseFeatures Instance Settings Advanced Machine Features - availability
Type String - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - backup
Configuration DatabaseInstance Settings Backup Configuration - collation String
- The name of server instance collation.
- connector
Enforcement String - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- data
Cache DatabaseConfig Instance Settings Data Cache Config - Data cache configurations.
- database
Flags List<DatabaseInstance Settings Database Flag> - deletion
Protection BooleanEnabled - Configuration to protect against accidental instance deletion.
- deny
Maintenance DatabasePeriod Instance Settings Deny Maintenance Period - disk
Autoresize Boolean - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - disk
Autoresize IntegerLimit - 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 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - disk
Type String - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - edition String
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - enable
Dataplex BooleanIntegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - enable
Google BooleanMl Integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - insights
Config DatabaseInstance Settings Insights Config - Configuration of Query Insights.
- ip
Configuration DatabaseInstance Settings Ip Configuration - location
Preference DatabaseInstance Settings Location Preference - maintenance
Window DatabaseInstance Settings Maintenance Window - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- password
Validation DatabasePolicy Instance Settings Password Validation Policy - pricing
Plan String - Pricing plan for this instance, can only be
PER_USE
. - sql
Server DatabaseAudit Config Instance Settings Sql Server Audit Config - time
Zone String - The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.
- user
Labels Map<String,String> - A set of key/value user label pairs to assign to the instance.
- version Integer
- Used to make sure changes to the
settings
block are atomic.
- 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. - activation
Policy string - This specifies when the instance should be
active. Can be either
ALWAYS
,NEVER
orON_DEMAND
. - active
Directory DatabaseConfig Instance Settings Active Directory Config - advanced
Machine DatabaseFeatures Instance Settings Advanced Machine Features - availability
Type string - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - backup
Configuration DatabaseInstance Settings Backup Configuration - collation string
- The name of server instance collation.
- connector
Enforcement string - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- data
Cache DatabaseConfig Instance Settings Data Cache Config - Data cache configurations.
- database
Flags DatabaseInstance Settings Database Flag[] - deletion
Protection booleanEnabled - Configuration to protect against accidental instance deletion.
- deny
Maintenance DatabasePeriod Instance Settings Deny Maintenance Period - disk
Autoresize boolean - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - disk
Autoresize numberLimit - 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 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - disk
Type string - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - edition string
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - enable
Dataplex booleanIntegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - enable
Google booleanMl Integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - insights
Config DatabaseInstance Settings Insights Config - Configuration of Query Insights.
- ip
Configuration DatabaseInstance Settings Ip Configuration - location
Preference DatabaseInstance Settings Location Preference - maintenance
Window DatabaseInstance Settings Maintenance Window - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- password
Validation DatabasePolicy Instance Settings Password Validation Policy - pricing
Plan string - Pricing plan for this instance, can only be
PER_USE
. - sql
Server DatabaseAudit Config Instance Settings Sql Server Audit Config - time
Zone string - The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.
- user
Labels {[key: string]: string} - A set of key/value user label pairs to assign to the instance.
- version number
- Used to make sure changes to the
settings
block are atomic.
- 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
orON_DEMAND
. - active_
directory_ Databaseconfig Instance Settings Active Directory Config - advanced_
machine_ Databasefeatures Instance Settings Advanced Machine Features - availability_
type str - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - backup_
configuration DatabaseInstance Settings Backup Configuration - collation str
- The name of server instance collation.
- connector_
enforcement str - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- data_
cache_ Databaseconfig Instance Settings Data Cache Config - Data cache configurations.
- database_
flags Sequence[DatabaseInstance Settings Database Flag] - deletion_
protection_ boolenabled - Configuration to protect against accidental instance deletion.
- deny_
maintenance_ Databaseperiod Instance Settings Deny Maintenance Period - disk_
autoresize bool - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - disk_
autoresize_ intlimit - 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - disk_
type str - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - edition str
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - enable_
dataplex_ boolintegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - enable_
google_ boolml_ integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - insights_
config DatabaseInstance Settings Insights Config - Configuration of Query Insights.
- ip_
configuration DatabaseInstance Settings Ip Configuration - location_
preference DatabaseInstance Settings Location Preference - maintenance_
window DatabaseInstance Settings Maintenance Window - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- password_
validation_ Databasepolicy Instance Settings Password Validation Policy - pricing_
plan str - Pricing plan for this instance, can only be
PER_USE
. - sql_
server_ Databaseaudit_ config Instance Settings Sql Server Audit Config - 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
- Used to make sure changes to the
settings
block are atomic.
- 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. - activation
Policy String - This specifies when the instance should be
active. Can be either
ALWAYS
,NEVER
orON_DEMAND
. - active
Directory Property MapConfig - advanced
Machine Property MapFeatures - availability
Type String - The availability type of the Cloud SQL
instance, high availability (
REGIONAL
) or single zone (ZONAL
).' For all instances, ensure thatsettings.backup_configuration.enabled
is set totrue
. For MySQL instances, ensure thatsettings.backup_configuration.binary_log_enabled
is set totrue
. For Postgres and SQL Server instances, ensure thatsettings.backup_configuration.point_in_time_recovery_enabled
is set totrue
. Defaults toZONAL
. - backup
Configuration Property Map - collation String
- The name of server instance collation.
- connector
Enforcement String - Enables the enforcement of Cloud SQL Auth Proxy or Cloud SQL connectors for all the connections. If enabled, all the direct connections are rejected.
- data
Cache Property MapConfig - Data cache configurations.
- database
Flags List<Property Map> - deletion
Protection BooleanEnabled - Configuration to protect against accidental instance deletion.
- deny
Maintenance Property MapPeriod - disk
Autoresize Boolean - Enables auto-resizing of the storage size. Defaults to
true
. Note that ifdisk_size
is set, futurepulumi up
calls will attempt to delete the instance in order to resize the disk to the value specified in disk_size if it has been resized. To avoid this, ensure thatlifecycle.ignore_changes
is applied todisk_size
. - disk
Autoresize NumberLimit - 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 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. Note that this value will override the resizing from
disk_autoresize
if that feature is enabled. To avoid this, setlifecycle.ignore_changes
on this field. - disk
Type String - The type of data disk: PD_SSD or PD_HDD. Defaults to
PD_SSD
. - edition String
- The edition of the instance, can be
ENTERPRISE
orENTERPRISE_PLUS
. - enable
Dataplex BooleanIntegration - Enables Cloud SQL instance integration with Dataplex. MySQL, Postgres and SQL Server instances are supported for this feature. Defaults to
false
. - enable
Google BooleanMl Integration - Enables Cloud SQL instances to connect to Vertex AI and pass requests for real-time predictions and insights. Defaults to
false
. - insights
Config Property Map - Configuration of Query Insights.
- ip
Configuration Property Map - location
Preference Property Map - maintenance
Window Property Map - Declares a one-hour maintenance window when an Instance can automatically restart to apply updates. The maintenance window is specified in UTC time.
- password
Validation Property MapPolicy - pricing
Plan String - Pricing plan for this instance, can only be
PER_USE
. - sql
Server Property MapAudit Config - time
Zone String - The time_zone to be used by the database engine (supported only for SQL Server), in SQL Server timezone format.
- user
Labels Map<String> - A set of key/value user label pairs to assign to the instance.
- version Number
- Used to make sure changes to the
settings
block are atomic.
DatabaseInstanceSettingsActiveDirectoryConfig, DatabaseInstanceSettingsActiveDirectoryConfigArgs
- 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.
DatabaseInstanceSettingsAdvancedMachineFeatures, DatabaseInstanceSettingsAdvancedMachineFeaturesArgs
- Threads
Per intCore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
- Threads
Per intCore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
- threads
Per IntegerCore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
- threads
Per numberCore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
- threads_
per_ intcore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
- threads
Per NumberCore - The number of threads per core. The value of this flag can be 1 or 2. To disable SMT, set this flag to 1. Only available in Cloud SQL for SQL Server instances. See smt for more details.
DatabaseInstanceSettingsBackupConfiguration, DatabaseInstanceSettingsBackupConfigurationArgs
- Backup
Retention DatabaseSettings Instance Settings Backup Configuration Backup Retention Settings - Backup retention settings. The configuration is detailed below.
- Binary
Log boolEnabled - 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
- Point
In boolTime Recovery Enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- Start
Time string HH:MM
format time indicating when backup configuration starts.- Transaction
Log intRetention Days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
- Backup
Retention DatabaseSettings Instance Settings Backup Configuration Backup Retention Settings - Backup retention settings. The configuration is detailed below.
- Binary
Log boolEnabled - 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
- Point
In boolTime Recovery Enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- Start
Time string HH:MM
format time indicating when backup configuration starts.- Transaction
Log intRetention Days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
- backup
Retention DatabaseSettings Instance Settings Backup Configuration Backup Retention Settings - Backup retention settings. The configuration is detailed below.
- binary
Log BooleanEnabled - 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
- point
In BooleanTime Recovery Enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- start
Time String HH:MM
format time indicating when backup configuration starts.- transaction
Log IntegerRetention Days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
- backup
Retention DatabaseSettings Instance Settings Backup Configuration Backup Retention Settings - Backup retention settings. The configuration is detailed below.
- binary
Log booleanEnabled - 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
- point
In booleanTime Recovery Enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- start
Time string HH:MM
format time indicating when backup configuration starts.- transaction
Log numberRetention Days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
- backup_
retention_ Databasesettings Instance Settings Backup Configuration Backup Retention Settings - Backup retention settings. The configuration is detailed below.
- binary_
log_ boolenabled - 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_ booltime_ recovery_ enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- start_
time str HH:MM
format time indicating when backup configuration starts.- transaction_
log_ intretention_ days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
- backup
Retention Property MapSettings - Backup retention settings. The configuration is detailed below.
- binary
Log BooleanEnabled - 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
- point
In BooleanTime Recovery Enabled - True if Point-in-time recovery is enabled. Will restart database if enabled after instance creation. Valid only for PostgreSQL and SQL Server instances.
- start
Time String HH:MM
format time indicating when backup configuration starts.- transaction
Log NumberRetention Days - The number of days of transaction logs we retain for point in time restore, from 1-7. For PostgreSQL Enterprise Plus instances, the number of days of retained transaction logs can be set from 1 to 35.
DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettings, DatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsArgs
- 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 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 string - The unit that 'retained_backups' represents. Defaults to
COUNT
.
- retained
Backups 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.
- retention
Unit String - The unit that 'retained_backups' represents. Defaults to
COUNT
.
- retained
Backups 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.
- retention
Unit 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
.
- retained
Backups 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.
- retention
Unit String - The unit that 'retained_backups' represents. Defaults to
COUNT
.
DatabaseInstanceSettingsDataCacheConfig, DatabaseInstanceSettingsDataCacheConfigArgs
- Data
Cache boolEnabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
- Data
Cache boolEnabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
- data
Cache BooleanEnabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
- data
Cache booleanEnabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
- data_
cache_ boolenabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
- data
Cache BooleanEnabled - Whether data cache is enabled for the instance. Defaults to
false
. Can be used with MYSQL and PostgreSQL only.
DatabaseInstanceSettingsDatabaseFlag, DatabaseInstanceSettingsDatabaseFlagArgs
DatabaseInstanceSettingsDenyMaintenancePeriod, DatabaseInstanceSettingsDenyMaintenancePeriodArgs
- End
Date string - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- Start
Date string - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- Time string
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
- End
Date string - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- Start
Date string - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- Time string
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
- end
Date String - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- start
Date String - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- time String
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
- end
Date string - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- start
Date string - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- time string
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
- end_
date str - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- start_
date str - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- time str
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
- end
Date String - "deny maintenance period" end date. If the year of the end date is empty, the year of the start date also must be empty. In this case, it means the no maintenance interval recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- start
Date String - "deny maintenance period" start date. If the year of the start date is empty, the year of the end date also must be empty. In this case, it means the deny maintenance period recurs every year. The date is in format yyyy-m-dd (the month is without leading zeros)i.e., 2020-1-01, or 2020-11-01, or mm-dd, i.e., 11-01
- time String
- Time in UTC when the "deny maintenance period" starts on startDate and ends on endDate. The time is in format: HH:mm:SS, i.e., 00:00:00
DatabaseInstanceSettingsInsightsConfig, DatabaseInstanceSettingsInsightsConfigArgs
- Query
Insights boolEnabled - True if Query Insights feature is enabled.
- Query
Plans intPer Minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- Query
String intLength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- bool
- True if Query Insights will record application tags from query when enabled.
- Record
Client boolAddress - True if Query Insights will record client address when enabled.
- Query
Insights boolEnabled - True if Query Insights feature is enabled.
- Query
Plans intPer Minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- Query
String intLength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- bool
- True if Query Insights will record application tags from query when enabled.
- Record
Client boolAddress - True if Query Insights will record client address when enabled.
- query
Insights BooleanEnabled - True if Query Insights feature is enabled.
- query
Plans IntegerPer Minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- query
String IntegerLength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- Boolean
- True if Query Insights will record application tags from query when enabled.
- record
Client BooleanAddress - True if Query Insights will record client address when enabled.
- query
Insights booleanEnabled - True if Query Insights feature is enabled.
- query
Plans numberPer Minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- query
String numberLength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- boolean
- True if Query Insights will record application tags from query when enabled.
- record
Client booleanAddress - True if Query Insights will record client address when enabled.
- query_
insights_ boolenabled - True if Query Insights feature is enabled.
- query_
plans_ intper_ minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- query_
string_ intlength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- bool
- True if Query Insights will record application tags from query when enabled.
- record_
client_ booladdress - True if Query Insights will record client address when enabled.
- query
Insights BooleanEnabled - True if Query Insights feature is enabled.
- query
Plans NumberPer Minute - Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
- query
String NumberLength - Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
- Boolean
- True if Query Insights will record application tags from query when enabled.
- record
Client BooleanAddress - True if Query Insights will record client address when enabled.
DatabaseInstanceSettingsIpConfiguration, DatabaseInstanceSettingsIpConfigurationArgs
- Allocated
Ip stringRange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- List<Database
Instance Settings Ip Configuration Authorized Network> - Enable
Private boolPath For Google Cloud Services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- Ipv4Enabled bool
- Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_network
must be configured. - Private
Network 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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - Psc
Configs List<DatabaseInstance Settings Ip Configuration Psc Config> - PSC settings for a Cloud SQL instance.
- Server
Ca stringMode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - Ssl
Mode string - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
- Allocated
Ip stringRange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- []Database
Instance Settings Ip Configuration Authorized Network - Enable
Private boolPath For Google Cloud Services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- Ipv4Enabled bool
- Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_network
must be configured. - Private
Network 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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - Psc
Configs []DatabaseInstance Settings Ip Configuration Psc Config - PSC settings for a Cloud SQL instance.
- Server
Ca stringMode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - Ssl
Mode string - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
- allocated
Ip StringRange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- List<Database
Instance Settings Ip Configuration Authorized Network> - enable
Private BooleanPath For Google Cloud Services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- ipv4Enabled Boolean
- Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_network
must be configured. - private
Network 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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - psc
Configs List<DatabaseInstance Settings Ip Configuration Psc Config> - PSC settings for a Cloud SQL instance.
- server
Ca StringMode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - ssl
Mode String - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
- allocated
Ip stringRange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- Database
Instance Settings Ip Configuration Authorized Network[] - enable
Private booleanPath For Google Cloud Services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- ipv4Enabled boolean
- Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_network
must be configured. - private
Network 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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - psc
Configs DatabaseInstance Settings Ip Configuration Psc Config[] - PSC settings for a Cloud SQL instance.
- server
Ca stringMode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - ssl
Mode string - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
- allocated_
ip_ strrange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- Sequence[Database
Instance Settings Ip Configuration Authorized Network] - enable_
private_ boolpath_ for_ google_ cloud_ services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- ipv4_
enabled bool - Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - psc_
configs Sequence[DatabaseInstance Settings Ip Configuration Psc Config] - PSC settings for a Cloud SQL instance.
- server_
ca_ strmode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - ssl_
mode str - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
- allocated
Ip StringRange - The name of the allocated ip range for the private ip CloudSQL instance. For example: "google-managed-services-default". If set, the 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?.
- List<Property Map>
- enable
Private BooleanPath For Google Cloud Services - Whether Google Cloud services such as BigQuery are allowed to access data in this Cloud SQL instance over a private IP connection. SQLSERVER database type is not supported.
- ipv4Enabled Boolean
- Whether this Cloud SQL instance should be assigned
a public IPV4 address. At least
ipv4_enabled
must be enabled or aprivate_network
must be configured. - private
Network 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 aprivate_network
must be configured. This setting can be updated, but it cannot be removed after it is set. - psc
Configs List<Property Map> - PSC settings for a Cloud SQL instance.
- server
Ca StringMode - Specify how the server certificate's Certificate Authority is hosted. Supported values are
GOOGLE_MANAGED_INTERNAL_CA
andGOOGLE_MANAGED_CAS_CA
. - ssl
Mode String - Specify how SSL connection should be enforced in DB connections. Supported values are
ALLOW_UNENCRYPTED_AND_ENCRYPTED
,ENCRYPTED_ONLY
, andTRUSTED_CLIENT_CERTIFICATE_REQUIRED
(not supported for SQL Server). See API reference doc for details.
DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork, DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs
- 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.
- Expiration
Time 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.
- Expiration
Time 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.
- expiration
Time 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.
- expiration
Time 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.
- expiration
Time String - The RFC 3339 formatted date time string indicating when this whitelist expires.
- name String
- A name for this whitelist entry.
DatabaseInstanceSettingsIpConfigurationPscConfig, DatabaseInstanceSettingsIpConfigurationPscConfigArgs
- Allowed
Consumer List<string>Projects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- Psc
Enabled bool - Whether PSC connectivity is enabled for this instance.
- Allowed
Consumer []stringProjects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- Psc
Enabled bool - Whether PSC connectivity is enabled for this instance.
- allowed
Consumer List<String>Projects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- psc
Enabled Boolean - Whether PSC connectivity is enabled for this instance.
- allowed
Consumer string[]Projects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- psc
Enabled boolean - Whether PSC connectivity is enabled for this instance.
- allowed_
consumer_ Sequence[str]projects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- psc_
enabled bool - Whether PSC connectivity is enabled for this instance.
- allowed
Consumer List<String>Projects - List of consumer projects that are allow-listed for PSC connections to this instance. This instance can be connected to with PSC from any network in these projects. Each consumer project in this list may be represented by a project number (numeric) or by a project id (alphanumeric).
- psc
Enabled Boolean - Whether PSC connectivity is enabled for this instance.
DatabaseInstanceSettingsLocationPreference, DatabaseInstanceSettingsLocationPreferenceArgs
- Follow
Gae stringApplication - A GAE application whose zone to remain in. Must be in the same region as this instance.
- Secondary
Zone string - The preferred Compute Engine zone for the secondary/failover.
- Zone string
- The preferred compute engine zone.
- Follow
Gae stringApplication - A GAE application whose zone to remain in. Must be in the same region as this instance.
- Secondary
Zone string - The preferred Compute Engine zone for the secondary/failover.
- Zone string
- The preferred compute engine zone.
- follow
Gae StringApplication - A GAE application whose zone to remain in. Must be in the same region as this instance.
- secondary
Zone String - The preferred Compute Engine zone for the secondary/failover.
- zone String
- The preferred compute engine zone.
- follow
Gae stringApplication - A GAE application whose zone to remain in. Must be in the same region as this instance.
- secondary
Zone string - The preferred Compute Engine zone for the secondary/failover.
- zone string
- The preferred compute engine zone.
- follow_
gae_ strapplication - 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.
- follow
Gae StringApplication - A GAE application whose zone to remain in. Must be in the same region as this instance.
- secondary
Zone String - The preferred Compute Engine zone for the secondary/failover.
- zone String
- The preferred compute engine zone.
DatabaseInstanceSettingsMaintenanceWindow, DatabaseInstanceSettingsMaintenanceWindowArgs
- Day int
- Day of week (
1-7
), starting on Monday - Hour int
- Hour of day (
0-23
), ignored ifday
not set - Update
Track string - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
- Day int
- Day of week (
1-7
), starting on Monday - Hour int
- Hour of day (
0-23
), ignored ifday
not set - Update
Track string - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
- day Integer
- Day of week (
1-7
), starting on Monday - hour Integer
- Hour of day (
0-23
), ignored ifday
not set - update
Track String - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
- day number
- Day of week (
1-7
), starting on Monday - hour number
- Hour of day (
0-23
), ignored ifday
not set - update
Track string - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
- day int
- Day of week (
1-7
), starting on Monday - hour int
- Hour of day (
0-23
), ignored ifday
not set - update_
track str - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
- day Number
- Day of week (
1-7
), starting on Monday - hour Number
- Hour of day (
0-23
), ignored ifday
not set - update
Track String - Receive updates after one week (
canary
) or after two weeks (stable
) or after five weeks (week5
) of notification.
DatabaseInstanceSettingsPasswordValidationPolicy, DatabaseInstanceSettingsPasswordValidationPolicyArgs
- Enable
Password boolPolicy - Enables or disable the password validation policy.
- Complexity string
- Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.
- Disallow
Username boolSubstring - 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 stringInterval - 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.
- Enable
Password boolPolicy - Enables or disable the password validation policy.
- Complexity string
- Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.
- Disallow
Username boolSubstring - 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 stringInterval - 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.
- enable
Password BooleanPolicy - Enables or disable the password validation policy.
- complexity String
- Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.
- disallow
Username BooleanSubstring - Prevents the use of the username in the password.
- min
Length Integer - Specifies the minimum number of characters that the password must have.
- password
Change StringInterval - Specifies the minimum duration after which you can change the password.
- reuse
Interval Integer - Specifies the number of previous passwords that you can't reuse.
- enable
Password booleanPolicy - Enables or disable the password validation policy.
- complexity string
- Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.
- disallow
Username booleanSubstring - Prevents the use of the username in the password.
- min
Length number - Specifies the minimum number of characters that the password must have.
- password
Change stringInterval - Specifies the minimum duration after which you can change the password.
- reuse
Interval number - Specifies the number of previous passwords that you can't reuse.
- enable_
password_ boolpolicy - 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_ boolsubstring - 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_ strinterval - 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.
- enable
Password BooleanPolicy - Enables or disable the password validation policy.
- complexity String
- Checks if the password is a combination of lowercase, uppercase, numeric, and non-alphanumeric characters.
- disallow
Username BooleanSubstring - Prevents the use of the username in the password.
- min
Length Number - Specifies the minimum number of characters that the password must have.
- password
Change StringInterval - Specifies the minimum duration after which you can change the password.
- reuse
Interval Number - Specifies the number of previous passwords that you can't reuse.
DatabaseInstanceSettingsSqlServerAuditConfig, DatabaseInstanceSettingsSqlServerAuditConfigArgs
- Bucket string
- The name of the destination bucket (e.g., gs://mybucket).
- Retention
Interval string - 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 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).
- Retention
Interval string - 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 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).
- retention
Interval String - 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 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).
- retention
Interval string - 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 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).
- retention
Interval String - 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 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:
projects/{{project}}/instances/{{name}}
{{project}}/{{name}}
{{name}}
When using the pulumi import
command, Database instances can be imported using one of the formats above. For example:
$ pulumi import gcp:sql/databaseInstance:DatabaseInstance default projects/{{project}}/instances/{{name}}
$ pulumi import gcp:sql/databaseInstance:DatabaseInstance default {{project}}/{{name}}
$ pulumi import gcp:sql/databaseInstance:DatabaseInstance default {{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.
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.