CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/golang-github-com-pulumi-pulumi-aws-sdk-v7

A Pulumi provider SDK for creating and managing Amazon Web Services (AWS) cloud resources in Go, providing strongly-typed resource classes and data sources for all major AWS services.

Overview
Eval results
Files

rds.mddocs/reference/database/

Amazon RDS (Relational Database Service)

The rds package provides resources for managing Amazon RDS database instances, Aurora clusters, subnet groups, parameter groups, snapshots, proxies, and related features.

Import

import "github.com/pulumi/pulumi-aws/sdk/v7/go/aws/rds"

Available Resources and Data Sources

// Resources
NewCertificate(ctx, name, args, opts) (*Certificate, error)
NewCluster(ctx, name, args, opts) (*Cluster, error)
NewClusterActivityStream(ctx, name, args, opts) (*ClusterActivityStream, error)
NewClusterEndpoint(ctx, name, args, opts) (*ClusterEndpoint, error)
NewClusterInstance(ctx, name, args, opts) (*ClusterInstance, error)
NewClusterParameterGroup(ctx, name, args, opts) (*ClusterParameterGroup, error)
NewClusterRoleAssociation(ctx, name, args, opts) (*ClusterRoleAssociation, error)
NewClusterSnapshot(ctx, name, args, opts) (*ClusterSnapshot, error)
NewClusterSnapshotCopy(ctx, name, args, opts) (*ClusterSnapshotCopy, error)
NewCustomDbEngineVersion(ctx, name, args, opts) (*CustomDbEngineVersion, error)
NewEventSubscription(ctx, name, args, opts) (*EventSubscription, error)
NewExportTask(ctx, name, args, opts) (*ExportTask, error)
NewGlobalCluster(ctx, name, args, opts) (*GlobalCluster, error)
NewInstance(ctx, name, args, opts) (*Instance, error)
NewInstanceAutomatedBackupsReplication(ctx, name, args, opts) (*InstanceAutomatedBackupsReplication, error)
NewInstanceDesiredState(ctx, name, args, opts) (*InstanceDesiredState, error)
NewIntegration(ctx, name, args, opts) (*Integration, error)
NewOptionGroup(ctx, name, args, opts) (*OptionGroup, error)
NewParameterGroup(ctx, name, args, opts) (*ParameterGroup, error)
NewProxy(ctx, name, args, opts) (*Proxy, error)
NewProxyDefaultTargetGroup(ctx, name, args, opts) (*ProxyDefaultTargetGroup, error)
NewProxyEndpoint(ctx, name, args, opts) (*ProxyEndpoint, error)
NewProxyTarget(ctx, name, args, opts) (*ProxyTarget, error)
NewReservedInstance(ctx, name, args, opts) (*ReservedInstance, error)
NewRoleAssociation(ctx, name, args, opts) (*RoleAssociation, error)
NewShardGroup(ctx, name, args, opts) (*ShardGroup, error)
NewSnapshot(ctx, name, args, opts) (*Snapshot, error)
NewSnapshotCopy(ctx, name, args, opts) (*SnapshotCopy, error)
NewSubnetGroup(ctx, name, args, opts) (*SubnetGroup, error)

// Data Sources / Lookup Functions
GetCertificate(ctx, name, id, state, opts) (*Certificate, error)
GetCluster(ctx, name, id, state, opts) (*Cluster, error)
GetClusterActivityStream(ctx, name, id, state, opts) (*ClusterActivityStream, error)
GetClusterEndpoint(ctx, name, id, state, opts) (*ClusterEndpoint, error)
GetClusterInstance(ctx, name, id, state, opts) (*ClusterInstance, error)
GetClusterParameterGroup(ctx, name, id, state, opts) (*ClusterParameterGroup, error)
GetClusterRoleAssociation(ctx, name, id, state, opts) (*ClusterRoleAssociation, error)
GetClusterSnapshot(ctx, name, id, state, opts) (*ClusterSnapshot, error)
GetClusterSnapshotCopy(ctx, name, id, state, opts) (*ClusterSnapshotCopy, error)
GetCustomDbEngineVersion(ctx, name, id, state, opts) (*CustomDbEngineVersion, error)
GetEventSubscription(ctx, name, id, state, opts) (*EventSubscription, error)
GetExportTask(ctx, name, id, state, opts) (*ExportTask, error)
GetGlobalCluster(ctx, name, id, state, opts) (*GlobalCluster, error)
GetInstance(ctx, name, id, state, opts) (*Instance, error)
GetInstanceAutomatedBackupsReplication(ctx, name, id, state, opts) (*InstanceAutomatedBackupsReplication, error)
GetInstanceDesiredState(ctx, name, id, state, opts) (*InstanceDesiredState, error)
GetIntegration(ctx, name, id, state, opts) (*Integration, error)
GetOptionGroup(ctx, name, id, state, opts) (*OptionGroup, error)
GetParameterGroup(ctx, name, id, state, opts) (*ParameterGroup, error)
GetProxy(ctx, name, id, state, opts) (*Proxy, error)
GetProxyDefaultTargetGroup(ctx, name, id, state, opts) (*ProxyDefaultTargetGroup, error)
GetProxyEndpoint(ctx, name, id, state, opts) (*ProxyEndpoint, error)
GetProxyTarget(ctx, name, id, state, opts) (*ProxyTarget, error)
GetReservedInstance(ctx, name, id, state, opts) (*ReservedInstance, error)
GetRoleAssociation(ctx, name, id, state, opts) (*RoleAssociation, error)
GetShardGroup(ctx, name, id, state, opts) (*ShardGroup, error)
GetSnapshot(ctx, name, id, state, opts) (*Snapshot, error)
GetSnapshotCopy(ctx, name, id, state, opts) (*SnapshotCopy, error)
GetSubnetGroup(ctx, name, id, state, opts) (*SubnetGroup, error)
GetClusters(ctx, args, opts) (*GetClustersResult, error)
GetClustersOutput(ctx, args, opts) GetClustersResultOutput
GetEngineVersion(ctx, args, opts) (*GetEngineVersionResult, error)
GetEngineVersionOutput(ctx, args, opts) GetEngineVersionResultOutput
GetEventCategories(ctx, args, opts) (*GetEventCategoriesResult, error)
GetEventCategoriesOutput(ctx, args, opts) GetEventCategoriesResultOutput
GetInstances(ctx, args, opts) (*GetInstancesResult, error)
GetInstancesOutput(ctx, args, opts) GetInstancesResultOutput
GetOrderableDbInstance(ctx, args, opts) (*GetOrderableDbInstanceResult, error)
GetOrderableDbInstanceOutput(ctx, args, opts) GetOrderableDbInstanceResultOutput
GetReservedInstanceOffering(ctx, args, opts) (*GetReservedInstanceOfferingResult, error)
GetReservedInstanceOfferingOutput(ctx, args, opts) GetReservedInstanceOfferingResultOutput
LookupInstance(ctx, args, opts) (*LookupInstanceResult, error)

Instance

Manages a single RDS database instance (MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, etc.).

Constructor

func NewInstance(
    ctx  *pulumi.Context,
    name string,
    args *rds.InstanceArgs,
    opts ...pulumi.ResourceOption,
) (*rds.Instance, error)

InstanceArgs Fields

type InstanceArgs struct {
    // Allocated storage in GiB. Required unless restoring from a snapshot or read replica.
    AllocatedStorage pulumi.IntPtrInput

    // Allow major engine version upgrades. Default: false.
    AllowMajorVersionUpgrade pulumi.BoolPtrInput

    // Apply modifications immediately (vs. during next maintenance window). Default: false.
    ApplyImmediately pulumi.BoolPtrInput

    // Enable automatic minor version upgrades. Default: true.
    AutoMinorVersionUpgrade pulumi.BoolPtrInput

    // Availability Zone for the instance.
    AvailabilityZone pulumi.StringPtrInput

    // Days to retain automated backups (0–35). Default: 0.
    BackupRetentionPeriod pulumi.IntPtrInput

    // Backup storage target. Values: "region" (default), "outposts".
    BackupTarget pulumi.StringPtrInput

    // Daily UTC backup window (e.g., "09:46-10:16"). Must not overlap MaintenanceWindow.
    BackupWindow pulumi.StringPtrInput

    // Enable RDS Blue/Green deployments for low-downtime updates.
    BlueGreenUpdate InstanceBlueGreenUpdatePtrInput

    // CA certificate identifier.
    CaCertIdentifier pulumi.StringPtrInput

    // Character set name (Oracle and SQL Server only; immutable after creation).
    CharacterSetName pulumi.StringPtrInput

    // Copy instance tags to snapshots. Default: false.
    CopyTagsToSnapshot pulumi.BoolPtrInput

    // IAM instance profile for RDS Custom DB instances.
    CustomIamInstanceProfile pulumi.StringPtrInput

    // Enable customer-owned IP for RDS on Outposts.
    CustomerOwnedIpEnabled pulumi.BoolPtrInput

    // Database Insights mode. Values: "standard", "advanced".
    DatabaseInsightsMode pulumi.StringPtrInput

    // Name of the initial database to create. Not applicable for Oracle or SQL Server.
    DbName pulumi.StringPtrInput

    // DB subnet group name. Defaults to the "default" subnet group.
    DbSubnetGroupName pulumi.StringPtrInput

    // Use a dedicated log volume (DLV). Requires Provisioned IOPS.
    DedicatedLogVolume pulumi.BoolPtrInput

    // Remove automated backups immediately on deletion. Default: true.
    DeleteAutomatedBackups pulumi.BoolPtrInput

    // Enable deletion protection. Default: false.
    DeletionProtection pulumi.BoolPtrInput

    // Active Directory domain ID (conflicts with DomainFqdn, DomainOu, DomainAuthSecretArn, DomainDnsIps).
    Domain pulumi.StringPtrInput

    // Secrets Manager ARN for self-managed AD credentials.
    DomainAuthSecretArn pulumi.StringPtrInput

    // IPv4 DNS addresses of AD domain controllers (two required).
    DomainDnsIps pulumi.StringArrayInput

    // FQDN of the self-managed AD domain.
    DomainFqdn pulumi.StringPtrInput

    // IAM role for Directory Service API calls.
    DomainIamRoleName pulumi.StringPtrInput

    // AD organizational unit for the DB instance.
    DomainOu pulumi.StringPtrInput

    // CloudWatch log types to export (e.g., "error", "general", "slowquery").
    EnabledCloudwatchLogsExports pulumi.StringArrayInput

    // Database engine (e.g., "mysql", "postgres", "mariadb", "oracle-ee", "sqlserver-ex"). Required.
    Engine pulumi.StringPtrInput

    // Extended Support lifecycle. Values: "open-source-rds-extended-support" (default),
    // "open-source-rds-extended-support-disabled".
    EngineLifecycleSupport pulumi.StringPtrInput

    // Engine version (e.g., "8.0"). Partial versions accepted when AutoMinorVersionUpgrade is true.
    EngineVersion pulumi.StringPtrInput

    // Final snapshot identifier. Required when SkipFinalSnapshot is false.
    FinalSnapshotIdentifier pulumi.StringPtrInput

    // Enable IAM database authentication.
    IamDatabaseAuthenticationEnabled pulumi.BoolPtrInput

    // Instance identifier. Auto-generated if omitted. Required when RestoreToPointInTime is set.
    Identifier pulumi.StringPtrInput

    // Unique identifier prefix. Conflicts with Identifier.
    IdentifierPrefix pulumi.StringPtrInput

    // Instance class (e.g., "db.t3.micro", "db.r6g.large"). Required.
    InstanceClass pulumi.StringInput

    // Provisioned IOPS. Required for storageType "io1" or "io2".
    Iops pulumi.IntPtrInput

    // KMS key ARN for encryption (also used for encrypted read replicas).
    KmsKeyId pulumi.StringPtrInput

    // License model (varies by engine; e.g., "general-public-license" for MySQL).
    LicenseModel pulumi.StringPtrInput

    // Maintenance window (e.g., "Mon:00:00-Mon:03:00"). Must not overlap BackupWindow.
    MaintenanceWindow pulumi.StringPtrInput

    // Let RDS manage the master password in Secrets Manager. Mutually exclusive with Password.
    ManageMasterUserPassword pulumi.BoolPtrInput

    // KMS key for master user secret encryption.
    MasterUserSecretKmsKeyId pulumi.StringPtrInput

    // Maximum storage in GiB for autoscaling (set > AllocatedStorage to enable; 0 to disable).
    MaxAllocatedStorage pulumi.IntPtrInput

    // Enhanced Monitoring interval in seconds (0, 1, 5, 10, 15, 30, 60). Default: 0 (disabled).
    MonitoringInterval pulumi.IntPtrInput

    // IAM role ARN for Enhanced Monitoring.
    MonitoringRoleArn pulumi.StringPtrInput

    // Enable Multi-AZ deployment.
    MultiAz pulumi.BoolPtrInput

    // National character set for Oracle NCHAR/NVARCHAR2/NCLOB (immutable).
    NcharCharacterSetName pulumi.StringPtrInput

    // Network type. Values: "IPV4", "DUAL".
    NetworkType pulumi.StringPtrInput

    // DB option group name.
    OptionGroupName pulumi.StringPtrInput

    // DB parameter group name.
    ParameterGroupName pulumi.StringPtrInput

    // Master user password. Mutually exclusive with ManageMasterUserPassword.
    Password pulumi.StringPtrInput

    // Write-only password field (not stored in state reads). Mutually exclusive with ManageMasterUserPassword.
    PasswordWo pulumi.StringPtrInput

    // Version counter for PasswordWo updates.
    PasswordWoVersion pulumi.IntPtrInput

    // Enable Performance Insights. Default: false.
    PerformanceInsightsEnabled pulumi.BoolPtrInput

    // KMS key for Performance Insights data.
    PerformanceInsightsKmsKeyId pulumi.StringPtrInput

    // Performance Insights retention in days (7, 731, or a multiple of 31). Default: 7.
    PerformanceInsightsRetentionPeriod pulumi.IntPtrInput

    // Database port.
    Port pulumi.IntPtrInput

    // Make the instance publicly accessible. Default: false.
    PubliclyAccessible pulumi.BoolPtrInput

    // AWS region override.
    Region pulumi.StringPtrInput

    // Replica mode for Oracle replicas. Values: "mounted", "open-read-only".
    ReplicaMode pulumi.StringPtrInput

    // Source DB identifier or ARN for read replicas.
    ReplicateSourceDb pulumi.StringPtrInput

    // Point-in-time restore configuration block.
    RestoreToPointInTime InstanceRestoreToPointInTimePtrInput

    // Restore from Percona Xtrabackup in S3.
    S3Import InstanceS3ImportPtrInput

    // Skip final snapshot on deletion. Default: false.
    SkipFinalSnapshot pulumi.BoolPtrInput

    // Snapshot identifier to restore from.
    SnapshotIdentifier pulumi.StringPtrInput

    // Enable storage encryption. Default: false.
    StorageEncrypted pulumi.BoolPtrInput

    // Storage throughput in MiB/s. For "gp3" storage only.
    StorageThroughput pulumi.IntPtrInput

    // Storage type. Values: "standard", "gp2", "gp3", "io1", "io2". Default: "gp2" or "io1" if Iops set.
    StorageType pulumi.StringPtrInput

    // Resource tags.
    Tags pulumi.StringMapInput

    // Timezone (SQL Server only; immutable after creation).
    Timezone pulumi.StringPtrInput

    // Upgrade storage file system on the read replica (only with ReplicateSourceDb).
    UpgradeStorageConfig pulumi.BoolPtrInput

    // Master username (required unless restoring from snapshot or read replica).
    Username pulumi.StringPtrInput

    // VPC security group IDs.
    VpcSecurityGroupIds pulumi.StringArrayInput
}

Instance Output Attributes

FieldTypeDescription
Addresspulumi.StringOutputDNS address of the instance
AllocatedStoragepulumi.IntOutputAllocated storage in GiB
Arnpulumi.StringOutputARN of the DB instance
AvailabilityZonepulumi.StringOutputAvailability zone
DbNamepulumi.StringOutputInitial database name
Endpointpulumi.StringOutputConnection endpoint (address:port)
Enginepulumi.StringOutputDatabase engine
EngineVersionpulumi.StringOutputConfigured engine version
EngineVersionActualpulumi.StringOutputRunning engine version
Identifierpulumi.StringOutputInstance identifier
InstanceClasspulumi.StringOutputDB instance class
KmsKeyIdpulumi.StringOutputKMS key ARN (if encrypted)
MultiAzpulumi.BoolOutputWhether Multi-AZ is enabled
Portpulumi.IntOutputListening port
Statuspulumi.StringOutputCurrent instance status

Example — MySQL Instance

import (
    "github.com/pulumi/pulumi-aws/sdk/v7/go/aws/rds"
    "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        db, err := rds.NewInstance(ctx, "mysql-db", &rds.InstanceArgs{
            AllocatedStorage:    pulumi.Int(20),
            Engine:              pulumi.String("mysql"),
            EngineVersion:       pulumi.String("8.0"),
            InstanceClass:       pulumi.String("db.t3.micro"),
            DbName:              pulumi.String("mydb"),
            Username:            pulumi.String("admin"),
            Password:            pulumi.String("changeme"),
            DbSubnetGroupName:   pulumi.String(subnetGroupName),
            VpcSecurityGroupIds: pulumi.StringArray{pulumi.String(sgId)},
            SkipFinalSnapshot:   pulumi.Bool(true),
            StorageEncrypted:    pulumi.Bool(true),
            MultiAz:             pulumi.Bool(false),
            Tags: pulumi.StringMap{
                "Environment": pulumi.String("dev"),
            },
        })
        if err != nil {
            return err
        }
        ctx.Export("endpoint", db.Endpoint)
        return nil
    })
}

Cluster

Manages an Amazon Aurora DB cluster or Multi-AZ RDS cluster.

Constructor

func NewCluster(
    ctx  *pulumi.Context,
    name string,
    args *rds.ClusterArgs,
    opts ...pulumi.ResourceOption,
) (*rds.Cluster, error)

Key ClusterArgs Fields

FieldTypeDescription
Enginepulumi.StringInputRequired. Values: aurora-mysql, aurora-postgresql, mysql, postgres
ClusterIdentifierpulumi.StringPtrInputCluster identifier. Auto-generated if omitted
ClusterIdentifierPrefixpulumi.StringPtrInputUnique prefix. Conflicts with ClusterIdentifier
DatabaseNamepulumi.StringPtrInputInitial database name
MasterUsernamepulumi.StringPtrInputMaster username (immutable after initial creation)
MasterPasswordpulumi.StringPtrInputMaster password. Mutually exclusive with ManageMasterUserPassword
MasterPasswordWopulumi.StringPtrInputWrite-only master password (not stored in state reads)
ManageMasterUserPasswordpulumi.BoolPtrInputLet RDS manage the master password in Secrets Manager
EngineVersionpulumi.StringPtrInputEngine version
EngineModepulumi.StringPtrInputValues: provisioned (default), serverless, parallelquery, global
EngineLifecycleSupportpulumi.StringPtrInputExtended Support setting
AvailabilityZonespulumi.StringArrayInputAZs for cluster storage (max 3; RDS assigns 3 if fewer specified)
BackupRetentionPeriodpulumi.IntPtrInputDays to retain backups. Default: 1
BacktrackWindowpulumi.IntPtrInputBacktrack window in seconds (0–259200). Aurora MySQL only
DbSubnetGroupNamepulumi.StringPtrInputDB subnet group name
DbClusterParameterGroupNamepulumi.StringPtrInputCluster parameter group
DbInstanceParameterGroupNamepulumi.StringPtrInputInstance parameter group (use with AllowMajorVersionUpgrade)
VpcSecurityGroupIdspulumi.StringArrayInputVPC security group IDs
KmsKeyIdpulumi.StringPtrInputKMS key ARN when StorageEncrypted is true
StorageEncryptedpulumi.BoolPtrInputEnable storage encryption
StorageTypepulumi.StringPtrInputStorage type (Multi-AZ clusters only)
Iopspulumi.IntPtrInputProvisioned IOPS (Multi-AZ clusters only)
Portpulumi.IntPtrInputPort number
DeletionProtectionpulumi.BoolPtrInputPrevent cluster deletion. Default: false
SkipFinalSnapshotpulumi.BoolPtrInputSkip final snapshot on deletion
FinalSnapshotIdentifierpulumi.StringPtrInputFinal snapshot name
SnapshotIdentifierpulumi.StringPtrInputSnapshot to restore from
EnableHttpEndpointpulumi.BoolPtrInputEnable Data API (serverless and select Aurora configurations)
EnableGlobalWriteForwardingpulumi.BoolPtrInputForward writes to global cluster primary
EnableLocalWriteForwardingpulumi.BoolPtrInputEnable local write forwarding. Aurora MySQL 3.04+ only
EnabledCloudwatchLogsExportspulumi.StringArrayInputLog types: audit, error, general, postgresql, slowquery
IamDatabaseAuthenticationEnabledpulumi.BoolPtrInputEnable IAM database authentication
IamRolespulumi.StringArrayInputIAM role ARNs to associate
GlobalClusterIdentifierpulumi.StringPtrInputGlobal cluster identifier
ReplicationSourceIdentifierpulumi.StringPtrInputARN of source cluster for cross-region replicas
ApplyImmediatelypulumi.BoolPtrInputApply changes immediately. Default: false
AllowMajorVersionUpgradepulumi.BoolPtrInputAllow major version upgrades. Default: false
ScalingConfigurationClusterScalingConfigurationPtrInputServerless v1 scaling configuration
ServerlessV2ScalingConfigurationClusterServerlessV2ScalingConfigurationPtrInputServerless v2 scaling configuration
ClusterScalabilityTypepulumi.StringPtrInputValues: standard (default), limitless
NetworkTypepulumi.StringPtrInputValues: IPV4, DUAL
MonitoringIntervalpulumi.IntPtrInputEnhanced Monitoring interval (0, 1, 5, 10, 15, 30, 60). Default: 0
MonitoringRoleArnpulumi.StringPtrInputIAM role ARN for Enhanced Monitoring
PerformanceInsightsEnabledpulumi.BoolPtrInputEnable Performance Insights
PerformanceInsightsKmsKeyIdpulumi.StringPtrInputKMS key for Performance Insights
PerformanceInsightsRetentionPeriodpulumi.IntPtrInputRetention period in days for Performance Insights
CopyTagsToSnapshotpulumi.BoolPtrInputCopy tags to snapshots. Default: false
Tagspulumi.StringMapInputResource tags

Cluster Output Attributes

FieldTypeDescription
Arnpulumi.StringOutputCluster ARN
ClusterIdentifierpulumi.StringOutputCluster identifier
ClusterResourceIdpulumi.StringOutputCluster resource ID
Endpointpulumi.StringOutputWriter endpoint DNS address
ReaderEndpointpulumi.StringOutputRead-only endpoint DNS address
Enginepulumi.StringOutputDatabase engine
EngineVersionpulumi.StringOutputConfigured engine version
EngineVersionActualpulumi.StringOutputRunning engine version
Portpulumi.IntOutputDatabase port
DatabaseNamepulumi.StringOutputInitial database name
MasterUsernamepulumi.StringOutputMaster username
HostedZoneIdpulumi.StringOutputRoute 53 hosted zone ID for the endpoint
ClusterMemberspulumi.StringArrayOutputList of cluster instance identifiers

Example — Aurora MySQL Cluster

cluster, err := rds.NewCluster(ctx, "aurora-mysql", &rds.ClusterArgs{
    ClusterIdentifier:     pulumi.String("aurora-cluster"),
    Engine:                pulumi.String("aurora-mysql"),
    EngineVersion:         pulumi.String("8.0.mysql_aurora.3.04.0"),
    DatabaseName:          pulumi.String("mydb"),
    MasterUsername:        pulumi.String("admin"),
    MasterPassword:        pulumi.String("changeme"),
    DbSubnetGroupName:     pulumi.String(subnetGroupName),
    VpcSecurityGroupIds:   pulumi.StringArray{pulumi.String(sgId)},
    SkipFinalSnapshot:     pulumi.Bool(true),
    StorageEncrypted:      pulumi.Bool(true),
    BackupRetentionPeriod: pulumi.Int(7),
})

SubnetGroup

Manages an RDS DB subnet group. Instances and clusters deployed into a VPC must reference a subnet group.

Constructor

func NewSubnetGroup(
    ctx  *pulumi.Context,
    name string,
    args *rds.SubnetGroupArgs,
    opts ...pulumi.ResourceOption,
) (*rds.SubnetGroup, error)

SubnetGroupArgs Fields

type SubnetGroupArgs struct {
    // Subnet IDs to include in the group. Required.
    SubnetIds pulumi.StringArrayInput

    // Name of the subnet group. Auto-generated if omitted.
    Name pulumi.StringPtrInput

    // Unique name prefix. Conflicts with Name.
    NamePrefix pulumi.StringPtrInput

    // Description. Defaults to "Managed by Pulumi".
    Description pulumi.StringPtrInput

    // AWS region override.
    Region pulumi.StringPtrInput

    // Resource tags.
    Tags pulumi.StringMapInput
}

SubnetGroup Output Attributes

FieldTypeDescription
Arnpulumi.StringOutputARN of the subnet group
Namepulumi.StringOutputSubnet group name
VpcIdpulumi.StringOutputVPC ID the subnet group belongs to
SupportedNetworkTypespulumi.StringArrayOutputSupported network types

Example

subnetGroup, err := rds.NewSubnetGroup(ctx, "db-subnet-group", &rds.SubnetGroupArgs{
    Name: pulumi.String("db-subnet-group"),
    SubnetIds: pulumi.StringArray{
        pulumi.String(privateSubnet1Id),
        pulumi.String(privateSubnet2Id),
    },
    Tags: pulumi.StringMap{
        "Name": pulumi.String("DB subnet group"),
    },
})

ParameterGroup

Manages an RDS DB parameter group for configuring database engine settings.

Constructor

func NewParameterGroup(
    ctx  *pulumi.Context,
    name string,
    args *rds.ParameterGroupArgs,
    opts ...pulumi.ResourceOption,
) (*rds.ParameterGroup, error)

Key ParameterGroupArgs Fields

FieldTypeDescription
Familypulumi.StringInputRequired. Parameter group family (e.g., mysql8.0, postgres15)
Namepulumi.StringPtrInputParameter group name. Auto-generated if omitted
NamePrefixpulumi.StringPtrInputUnique name prefix. Conflicts with Name
Descriptionpulumi.StringPtrInputDescription. Defaults to "Managed by Pulumi"
ParametersParameterGroupParameterArrayInputList of parameter blocks ({Name, Value, ApplyMethod})
SkipDestroypulumi.BoolPtrInputRetain the parameter group on destroy
Tagspulumi.StringMapInputResource tags

ParameterGroup Output Attributes

FieldTypeDescription
Arnpulumi.StringOutputARN of the parameter group
Familypulumi.StringOutputParameter group family
Namepulumi.StringOutputParameter group name

Example

pg, err := rds.NewParameterGroup(ctx, "mysql-pg", &rds.ParameterGroupArgs{
    Name:   pulumi.String("mysql-params"),
    Family: pulumi.String("mysql8.0"),
    Parameters: rds.ParameterGroupParameterArray{
        &rds.ParameterGroupParameterArgs{
            Name:  pulumi.String("max_connections"),
            Value: pulumi.String("200"),
        },
        &rds.ParameterGroupParameterArgs{
            Name:         pulumi.String("slow_query_log"),
            Value:        pulumi.String("1"),
            ApplyMethod:  pulumi.String("immediate"),
        },
    },
})

LookupInstance — Instance Data Source

Look up an existing RDS instance by its identifier.

Function Signature

func LookupInstance(
    ctx  *pulumi.Context,
    args *rds.LookupInstanceArgs,
    opts ...pulumi.InvokeOption,
) (*rds.LookupInstanceResult, error)

LookupInstanceArgs Fields

type LookupInstanceArgs struct {
    // Name of the RDS instance to look up.
    DbInstanceIdentifier *string `pulumi:"dbInstanceIdentifier"`

    // AWS region override.
    Region *string `pulumi:"region"`

    // Tags that must exactly match the instance.
    Tags map[string]string `pulumi:"tags"`
}

Example

instance, err := rds.LookupInstance(ctx, &rds.LookupInstanceArgs{
    DbInstanceIdentifier: pulumi.StringRef("my-existing-db"),
})
if err != nil {
    return err
}
ctx.Export("dbEndpoint", pulumi.String(instance.Endpoint))

Import

DB instances are imported using the instance identifier:

pulumi import aws:rds/instance:Instance default mydb

DB clusters are imported using the cluster identifier:

pulumi import aws:rds/cluster:Cluster default aurora-cluster

Subnet groups are imported using the group name:

pulumi import aws:rds/subnetGroup:SubnetGroup default production-subnet-group

Parameter groups are imported using the group name:

pulumi import aws:rds/parameterGroup:ParameterGroup rds_pg rds-pg

Install with Tessl CLI

npx tessl i tessl/golang-github-com-pulumi-pulumi-aws-sdk-v7

docs

index.md

tile.json