rds

package
v3.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 4, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	pulumi.CustomResourceState

	AccountDescription pulumi.StringOutput `pulumi:"accountDescription"`
	AccountName        pulumi.StringOutput `pulumi:"accountName"`
	AccountPassword    pulumi.StringOutput `pulumi:"accountPassword"`
	AccountType        pulumi.StringOutput `pulumi:"accountType"`
	DbInstanceId       pulumi.StringOutput `pulumi:"dbInstanceId"`
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringOutput `pulumi:"description"`
	// The Id of instance in which account belongs.
	//
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// An KMS encrypts password used to a db account. If the `password` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringOutput `pulumi:"password"`
	Status   pulumi.StringOutput `pulumi:"status"`
	// Privilege type of account.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringOutput `pulumi:"type"`
}

## Import

RDS account can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/account:Account example "rm-12345:tf_account"

```

func GetAccount

func GetAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountState, opts ...pulumi.ResourceOption) (*Account, error)

GetAccount gets an existing Account resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccount

func NewAccount(ctx *pulumi.Context,
	name string, args *AccountArgs, opts ...pulumi.ResourceOption) (*Account, error)

NewAccount registers a new resource with the given unique name, arguments, and options.

func (*Account) ElementType

func (*Account) ElementType() reflect.Type

func (*Account) ToAccountOutput

func (i *Account) ToAccountOutput() AccountOutput

func (*Account) ToAccountOutputWithContext

func (i *Account) ToAccountOutputWithContext(ctx context.Context) AccountOutput

func (*Account) ToAccountPtrOutput

func (i *Account) ToAccountPtrOutput() AccountPtrOutput

func (*Account) ToAccountPtrOutputWithContext

func (i *Account) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountArgs

type AccountArgs struct {
	AccountDescription pulumi.StringPtrInput
	AccountName        pulumi.StringPtrInput
	AccountPassword    pulumi.StringPtrInput
	AccountType        pulumi.StringPtrInput
	DbInstanceId       pulumi.StringPtrInput
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// The Id of instance in which account belongs.
	//
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringPtrInput
	// An KMS encrypts password used to a db account. If the `password` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	// Privilege type of account.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType

func (AccountArgs) ElementType() reflect.Type

type AccountArray

type AccountArray []AccountInput

func (AccountArray) ElementType

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext

func (i AccountArray) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountArrayInput

type AccountArrayInput interface {
	pulumi.Input

	ToAccountArrayOutput() AccountArrayOutput
	ToAccountArrayOutputWithContext(context.Context) AccountArrayOutput
}

AccountArrayInput is an input type that accepts AccountArray and AccountArrayOutput values. You can construct a concrete instance of `AccountArrayInput` via:

AccountArray{ AccountArgs{...} }

type AccountArrayOutput

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index

func (AccountArrayOutput) ToAccountArrayOutput

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext

func (o AccountArrayOutput) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountInput

type AccountInput interface {
	pulumi.Input

	ToAccountOutput() AccountOutput
	ToAccountOutputWithContext(ctx context.Context) AccountOutput
}

type AccountMap

type AccountMap map[string]AccountInput

func (AccountMap) ElementType

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext

func (i AccountMap) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountMapInput

type AccountMapInput interface {
	pulumi.Input

	ToAccountMapOutput() AccountMapOutput
	ToAccountMapOutputWithContext(context.Context) AccountMapOutput
}

AccountMapInput is an input type that accepts AccountMap and AccountMapOutput values. You can construct a concrete instance of `AccountMapInput` via:

AccountMap{ "key": AccountArgs{...} }

type AccountMapOutput

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex

func (AccountMapOutput) ToAccountMapOutput

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext

func (o AccountMapOutput) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountOutput

type AccountOutput struct{ *pulumi.OutputState }

func (AccountOutput) ElementType

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) ToAccountOutput

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext

func (o AccountOutput) ToAccountOutputWithContext(ctx context.Context) AccountOutput

func (AccountOutput) ToAccountPtrOutput

func (o AccountOutput) ToAccountPtrOutput() AccountPtrOutput

func (AccountOutput) ToAccountPtrOutputWithContext

func (o AccountOutput) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountPrivilege

type AccountPrivilege struct {
	pulumi.CustomResourceState

	// A specified account name.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// List of specified database name.
	DbNames pulumi.StringArrayOutput `pulumi:"dbNames"`
	// The Id of instance in which account belongs.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The privilege of one account access database. Valid values:
	// - ReadOnly: This value is only for MySQL, MariaDB and SQL Server
	// - ReadWrite: This value is only for MySQL, MariaDB and SQL Server
	// - DDLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DMLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DBOwner: (Available in 1.64.0+) This value is only for SQL Server and PostgreSQL.
	Privilege pulumi.StringPtrOutput `pulumi:"privilege"`
}

Provides an RDS account privilege resource and used to grant several database some access privilege. A database can be granted by multiple account.

## Import

RDS account privilege can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/accountPrivilege:AccountPrivilege example "rm-12345:tf_account:ReadOnly"

```

func GetAccountPrivilege

func GetAccountPrivilege(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountPrivilegeState, opts ...pulumi.ResourceOption) (*AccountPrivilege, error)

GetAccountPrivilege gets an existing AccountPrivilege resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccountPrivilege

func NewAccountPrivilege(ctx *pulumi.Context,
	name string, args *AccountPrivilegeArgs, opts ...pulumi.ResourceOption) (*AccountPrivilege, error)

NewAccountPrivilege registers a new resource with the given unique name, arguments, and options.

func (*AccountPrivilege) ElementType

func (*AccountPrivilege) ElementType() reflect.Type

func (*AccountPrivilege) ToAccountPrivilegeOutput

func (i *AccountPrivilege) ToAccountPrivilegeOutput() AccountPrivilegeOutput

func (*AccountPrivilege) ToAccountPrivilegeOutputWithContext

func (i *AccountPrivilege) ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput

func (*AccountPrivilege) ToAccountPrivilegePtrOutput

func (i *AccountPrivilege) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (*AccountPrivilege) ToAccountPrivilegePtrOutputWithContext

func (i *AccountPrivilege) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegeArgs

type AccountPrivilegeArgs struct {
	// A specified account name.
	AccountName pulumi.StringInput
	// List of specified database name.
	DbNames pulumi.StringArrayInput
	// The Id of instance in which account belongs.
	InstanceId pulumi.StringInput
	// The privilege of one account access database. Valid values:
	// - ReadOnly: This value is only for MySQL, MariaDB and SQL Server
	// - ReadWrite: This value is only for MySQL, MariaDB and SQL Server
	// - DDLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DMLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DBOwner: (Available in 1.64.0+) This value is only for SQL Server and PostgreSQL.
	Privilege pulumi.StringPtrInput
}

The set of arguments for constructing a AccountPrivilege resource.

func (AccountPrivilegeArgs) ElementType

func (AccountPrivilegeArgs) ElementType() reflect.Type

type AccountPrivilegeArray

type AccountPrivilegeArray []AccountPrivilegeInput

func (AccountPrivilegeArray) ElementType

func (AccountPrivilegeArray) ElementType() reflect.Type

func (AccountPrivilegeArray) ToAccountPrivilegeArrayOutput

func (i AccountPrivilegeArray) ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput

func (AccountPrivilegeArray) ToAccountPrivilegeArrayOutputWithContext

func (i AccountPrivilegeArray) ToAccountPrivilegeArrayOutputWithContext(ctx context.Context) AccountPrivilegeArrayOutput

type AccountPrivilegeArrayInput

type AccountPrivilegeArrayInput interface {
	pulumi.Input

	ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput
	ToAccountPrivilegeArrayOutputWithContext(context.Context) AccountPrivilegeArrayOutput
}

AccountPrivilegeArrayInput is an input type that accepts AccountPrivilegeArray and AccountPrivilegeArrayOutput values. You can construct a concrete instance of `AccountPrivilegeArrayInput` via:

AccountPrivilegeArray{ AccountPrivilegeArgs{...} }

type AccountPrivilegeArrayOutput

type AccountPrivilegeArrayOutput struct{ *pulumi.OutputState }

func (AccountPrivilegeArrayOutput) ElementType

func (AccountPrivilegeArrayOutput) Index

func (AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutput

func (o AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput

func (AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutputWithContext

func (o AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutputWithContext(ctx context.Context) AccountPrivilegeArrayOutput

type AccountPrivilegeInput

type AccountPrivilegeInput interface {
	pulumi.Input

	ToAccountPrivilegeOutput() AccountPrivilegeOutput
	ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput
}

type AccountPrivilegeMap

type AccountPrivilegeMap map[string]AccountPrivilegeInput

func (AccountPrivilegeMap) ElementType

func (AccountPrivilegeMap) ElementType() reflect.Type

func (AccountPrivilegeMap) ToAccountPrivilegeMapOutput

func (i AccountPrivilegeMap) ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput

func (AccountPrivilegeMap) ToAccountPrivilegeMapOutputWithContext

func (i AccountPrivilegeMap) ToAccountPrivilegeMapOutputWithContext(ctx context.Context) AccountPrivilegeMapOutput

type AccountPrivilegeMapInput

type AccountPrivilegeMapInput interface {
	pulumi.Input

	ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput
	ToAccountPrivilegeMapOutputWithContext(context.Context) AccountPrivilegeMapOutput
}

AccountPrivilegeMapInput is an input type that accepts AccountPrivilegeMap and AccountPrivilegeMapOutput values. You can construct a concrete instance of `AccountPrivilegeMapInput` via:

AccountPrivilegeMap{ "key": AccountPrivilegeArgs{...} }

type AccountPrivilegeMapOutput

type AccountPrivilegeMapOutput struct{ *pulumi.OutputState }

func (AccountPrivilegeMapOutput) ElementType

func (AccountPrivilegeMapOutput) ElementType() reflect.Type

func (AccountPrivilegeMapOutput) MapIndex

func (AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutput

func (o AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput

func (AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutputWithContext

func (o AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutputWithContext(ctx context.Context) AccountPrivilegeMapOutput

type AccountPrivilegeOutput

type AccountPrivilegeOutput struct{ *pulumi.OutputState }

func (AccountPrivilegeOutput) ElementType

func (AccountPrivilegeOutput) ElementType() reflect.Type

func (AccountPrivilegeOutput) ToAccountPrivilegeOutput

func (o AccountPrivilegeOutput) ToAccountPrivilegeOutput() AccountPrivilegeOutput

func (AccountPrivilegeOutput) ToAccountPrivilegeOutputWithContext

func (o AccountPrivilegeOutput) ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput

func (AccountPrivilegeOutput) ToAccountPrivilegePtrOutput

func (o AccountPrivilegeOutput) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (AccountPrivilegeOutput) ToAccountPrivilegePtrOutputWithContext

func (o AccountPrivilegeOutput) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegePtrInput

type AccountPrivilegePtrInput interface {
	pulumi.Input

	ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput
	ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput
}

type AccountPrivilegePtrOutput

type AccountPrivilegePtrOutput struct{ *pulumi.OutputState }

func (AccountPrivilegePtrOutput) Elem added in v3.9.0

func (AccountPrivilegePtrOutput) ElementType

func (AccountPrivilegePtrOutput) ElementType() reflect.Type

func (AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutput

func (o AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutputWithContext

func (o AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegeState

type AccountPrivilegeState struct {
	// A specified account name.
	AccountName pulumi.StringPtrInput
	// List of specified database name.
	DbNames pulumi.StringArrayInput
	// The Id of instance in which account belongs.
	InstanceId pulumi.StringPtrInput
	// The privilege of one account access database. Valid values:
	// - ReadOnly: This value is only for MySQL, MariaDB and SQL Server
	// - ReadWrite: This value is only for MySQL, MariaDB and SQL Server
	// - DDLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DMLOnly: (Available in 1.64.0+) This value is only for MySQL and MariaDB
	// - DBOwner: (Available in 1.64.0+) This value is only for SQL Server and PostgreSQL.
	Privilege pulumi.StringPtrInput
}

func (AccountPrivilegeState) ElementType

func (AccountPrivilegeState) ElementType() reflect.Type

type AccountPtrInput

type AccountPtrInput interface {
	pulumi.Input

	ToAccountPtrOutput() AccountPtrOutput
	ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput
}

type AccountPtrOutput

type AccountPtrOutput struct{ *pulumi.OutputState }

func (AccountPtrOutput) Elem added in v3.9.0

func (AccountPtrOutput) ElementType

func (AccountPtrOutput) ElementType() reflect.Type

func (AccountPtrOutput) ToAccountPtrOutput

func (o AccountPtrOutput) ToAccountPtrOutput() AccountPtrOutput

func (AccountPtrOutput) ToAccountPtrOutputWithContext

func (o AccountPtrOutput) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountState

type AccountState struct {
	AccountDescription pulumi.StringPtrInput
	AccountName        pulumi.StringPtrInput
	AccountPassword    pulumi.StringPtrInput
	AccountType        pulumi.StringPtrInput
	DbInstanceId       pulumi.StringPtrInput
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// The Id of instance in which account belongs.
	//
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringPtrInput
	// An KMS encrypts password used to a db account. If the `password` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	Status   pulumi.StringPtrInput
	// Privilege type of account.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringPtrInput
}

func (AccountState) ElementType

func (AccountState) ElementType() reflect.Type

type BackupPolicy

type BackupPolicy struct {
	pulumi.CustomResourceState

	// Instance archive backup keep count. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. When `archiveBackupKeepPolicy` is `ByMonth` Valid values: [1-31]. When `archiveBackupKeepPolicy` is `ByWeek` Valid values: [1-7].
	ArchiveBackupKeepCount pulumi.IntOutput `pulumi:"archiveBackupKeepCount"`
	// Instance archive backup keep policy. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values are `ByMonth`, `Disable`, `KeepAll`.
	ArchiveBackupKeepPolicy pulumi.StringOutput `pulumi:"archiveBackupKeepPolicy"`
	// Instance archive backup retention days. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values: [30-1095], and `archiveBackupRetentionPeriod` must larger than `backupRetentionPeriod` 730.
	ArchiveBackupRetentionPeriod pulumi.IntOutput `pulumi:"archiveBackupRetentionPeriod"`
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_period' instead.
	//
	// Deprecated: Attribute 'backup_period' has been deprecated from version 1.69.0. Use `preferred_backup_period` instead
	BackupPeriods pulumi.StringArrayOutput `pulumi:"backupPeriods"`
	// Instance backup retention days. Valid values: [7-730]. Default to 7. But mysql local disk is unlimited.
	BackupRetentionPeriod pulumi.IntPtrOutput `pulumi:"backupRetentionPeriod"`
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_time' instead.
	//
	// Deprecated: Attribute 'backup_time' has been deprecated from version 1.69.0. Use `preferred_backup_time` instead
	BackupTime pulumi.StringOutput `pulumi:"backupTime"`
	// The compress type of instance policy. Valid values are `1`, `4`, `8`.
	CompressType pulumi.StringOutput `pulumi:"compressType"`
	// Whether to backup instance log. Valid values are `true`, `false`, Default to `true`. Note: The 'Basic Edition' category Rds instance does not support setting log backup. [What is Basic Edition](https://www.alibabacloud.com/help/doc-detail/48980.htm).
	EnableBackupLog pulumi.BoolOutput `pulumi:"enableBackupLog"`
	// Instance high space usage protection policy. Valid when the `enableBackupLog` is `true`. Valid values are `Enable`, `Disable`.
	HighSpaceUsageProtection pulumi.StringPtrOutput `pulumi:"highSpaceUsageProtection"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Instance log backup local retention hours. Valid when the `enableBackupLog` is `true`. Valid values: [0-7*24].
	LocalLogRetentionHours pulumi.IntOutput `pulumi:"localLogRetentionHours"`
	// Instance log backup local retention space. Valid when the `enableBackupLog` is `true`. Valid values: [0-50].
	LocalLogRetentionSpace pulumi.IntOutput `pulumi:"localLogRetentionSpace"`
	// It has been deprecated from version 1.68.0, and use field 'enable_backup_log' instead.
	//
	// Deprecated: Attribute 'log_backup' has been deprecated from version 1.68.0. Use `enable_backup_log` instead
	LogBackup pulumi.BoolOutput `pulumi:"logBackup"`
	// Instance log backup frequency. Valid when the instance engine is `SQLServer`. Valid values are `LogInterval`.
	LogBackupFrequency pulumi.StringOutput `pulumi:"logBackupFrequency"`
	// Instance log backup retention days. Valid when the `enableBackupLog` is `1`. Valid values: [7-730]. Default to 7. It cannot be larger than `backupRetentionPeriod`.
	LogBackupRetentionPeriod pulumi.IntOutput `pulumi:"logBackupRetentionPeriod"`
	// It has been deprecated from version 1.69.0, and use field 'log_backup_retention_period' instead.
	//
	// Deprecated: Attribute 'log_retention_period' has been deprecated from version 1.69.0. Use `log_backup_retention_period` instead
	LogRetentionPeriod pulumi.IntOutput `pulumi:"logRetentionPeriod"`
	// DB Instance backup period. Please set at least two days to ensure backing up at least twice a week. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"].
	PreferredBackupPeriods pulumi.StringArrayOutput `pulumi:"preferredBackupPeriods"`
	// DB instance backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrOutput `pulumi:"preferredBackupTime"`
	// The policy based on which ApsaraDB RDS retains archived backup files if the instance is released. Default value: None. Valid values:
	// * **None**: No archived backup files are retained.
	// * **Lastest**: Only the most recent archived backup file is retained.
	// * **All**: All archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringOutput `pulumi:"releasedKeepPolicy"`
	// It has been deprecated from version 1.69.0, and use field 'backup_retention_period' instead.
	//
	// Deprecated: Attribute 'retention_period' has been deprecated from version 1.69.0. Use `backup_retention_period` instead
	RetentionPeriod pulumi.IntOutput `pulumi:"retentionPeriod"`
}

Provides an RDS instance backup policy resource and used to configure instance backup policy.

> **NOTE:** Each DB instance has a backup policy and it will be set default values when destroying the resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbbackuppolicybasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		instance, err := rds.NewInstance(ctx, "instance", &rds.InstanceArgs{
			Engine:          pulumi.String("MySQL"),
			EngineVersion:   pulumi.String("5.6"),
			InstanceType:    pulumi.String("rds.mysql.s1.small"),
			InstanceStorage: pulumi.Int(10),
			VswitchId:       defaultSwitch.ID(),
			InstanceName:    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewBackupPolicy(ctx, "policy", &rds.BackupPolicyArgs{
			InstanceId: instance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS backup policy can be imported using the id or instance id, e.g.

```sh

$ pulumi import alicloud:rds/backupPolicy:BackupPolicy example "rm-12345678"

```

func GetBackupPolicy

func GetBackupPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupPolicyState, opts ...pulumi.ResourceOption) (*BackupPolicy, error)

GetBackupPolicy gets an existing BackupPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBackupPolicy

func NewBackupPolicy(ctx *pulumi.Context,
	name string, args *BackupPolicyArgs, opts ...pulumi.ResourceOption) (*BackupPolicy, error)

NewBackupPolicy registers a new resource with the given unique name, arguments, and options.

func (*BackupPolicy) ElementType

func (*BackupPolicy) ElementType() reflect.Type

func (*BackupPolicy) ToBackupPolicyOutput

func (i *BackupPolicy) ToBackupPolicyOutput() BackupPolicyOutput

func (*BackupPolicy) ToBackupPolicyOutputWithContext

func (i *BackupPolicy) ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput

func (*BackupPolicy) ToBackupPolicyPtrOutput

func (i *BackupPolicy) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (*BackupPolicy) ToBackupPolicyPtrOutputWithContext

func (i *BackupPolicy) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyArgs

type BackupPolicyArgs struct {
	// Instance archive backup keep count. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. When `archiveBackupKeepPolicy` is `ByMonth` Valid values: [1-31]. When `archiveBackupKeepPolicy` is `ByWeek` Valid values: [1-7].
	ArchiveBackupKeepCount pulumi.IntPtrInput
	// Instance archive backup keep policy. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values are `ByMonth`, `Disable`, `KeepAll`.
	ArchiveBackupKeepPolicy pulumi.StringPtrInput
	// Instance archive backup retention days. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values: [30-1095], and `archiveBackupRetentionPeriod` must larger than `backupRetentionPeriod` 730.
	ArchiveBackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_period' instead.
	//
	// Deprecated: Attribute 'backup_period' has been deprecated from version 1.69.0. Use `preferred_backup_period` instead
	BackupPeriods pulumi.StringArrayInput
	// Instance backup retention days. Valid values: [7-730]. Default to 7. But mysql local disk is unlimited.
	BackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_time' instead.
	//
	// Deprecated: Attribute 'backup_time' has been deprecated from version 1.69.0. Use `preferred_backup_time` instead
	BackupTime pulumi.StringPtrInput
	// The compress type of instance policy. Valid values are `1`, `4`, `8`.
	CompressType pulumi.StringPtrInput
	// Whether to backup instance log. Valid values are `true`, `false`, Default to `true`. Note: The 'Basic Edition' category Rds instance does not support setting log backup. [What is Basic Edition](https://www.alibabacloud.com/help/doc-detail/48980.htm).
	EnableBackupLog pulumi.BoolPtrInput
	// Instance high space usage protection policy. Valid when the `enableBackupLog` is `true`. Valid values are `Enable`, `Disable`.
	HighSpaceUsageProtection pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// Instance log backup local retention hours. Valid when the `enableBackupLog` is `true`. Valid values: [0-7*24].
	LocalLogRetentionHours pulumi.IntPtrInput
	// Instance log backup local retention space. Valid when the `enableBackupLog` is `true`. Valid values: [0-50].
	LocalLogRetentionSpace pulumi.IntPtrInput
	// It has been deprecated from version 1.68.0, and use field 'enable_backup_log' instead.
	//
	// Deprecated: Attribute 'log_backup' has been deprecated from version 1.68.0. Use `enable_backup_log` instead
	LogBackup pulumi.BoolPtrInput
	// Instance log backup frequency. Valid when the instance engine is `SQLServer`. Valid values are `LogInterval`.
	LogBackupFrequency pulumi.StringPtrInput
	// Instance log backup retention days. Valid when the `enableBackupLog` is `1`. Valid values: [7-730]. Default to 7. It cannot be larger than `backupRetentionPeriod`.
	LogBackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'log_backup_retention_period' instead.
	//
	// Deprecated: Attribute 'log_retention_period' has been deprecated from version 1.69.0. Use `log_backup_retention_period` instead
	LogRetentionPeriod pulumi.IntPtrInput
	// DB Instance backup period. Please set at least two days to ensure backing up at least twice a week. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"].
	PreferredBackupPeriods pulumi.StringArrayInput
	// DB instance backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrInput
	// The policy based on which ApsaraDB RDS retains archived backup files if the instance is released. Default value: None. Valid values:
	// * **None**: No archived backup files are retained.
	// * **Lastest**: Only the most recent archived backup file is retained.
	// * **All**: All archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// It has been deprecated from version 1.69.0, and use field 'backup_retention_period' instead.
	//
	// Deprecated: Attribute 'retention_period' has been deprecated from version 1.69.0. Use `backup_retention_period` instead
	RetentionPeriod pulumi.IntPtrInput
}

The set of arguments for constructing a BackupPolicy resource.

func (BackupPolicyArgs) ElementType

func (BackupPolicyArgs) ElementType() reflect.Type

type BackupPolicyArray

type BackupPolicyArray []BackupPolicyInput

func (BackupPolicyArray) ElementType

func (BackupPolicyArray) ElementType() reflect.Type

func (BackupPolicyArray) ToBackupPolicyArrayOutput

func (i BackupPolicyArray) ToBackupPolicyArrayOutput() BackupPolicyArrayOutput

func (BackupPolicyArray) ToBackupPolicyArrayOutputWithContext

func (i BackupPolicyArray) ToBackupPolicyArrayOutputWithContext(ctx context.Context) BackupPolicyArrayOutput

type BackupPolicyArrayInput

type BackupPolicyArrayInput interface {
	pulumi.Input

	ToBackupPolicyArrayOutput() BackupPolicyArrayOutput
	ToBackupPolicyArrayOutputWithContext(context.Context) BackupPolicyArrayOutput
}

BackupPolicyArrayInput is an input type that accepts BackupPolicyArray and BackupPolicyArrayOutput values. You can construct a concrete instance of `BackupPolicyArrayInput` via:

BackupPolicyArray{ BackupPolicyArgs{...} }

type BackupPolicyArrayOutput

type BackupPolicyArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyArrayOutput) ElementType

func (BackupPolicyArrayOutput) ElementType() reflect.Type

func (BackupPolicyArrayOutput) Index

func (BackupPolicyArrayOutput) ToBackupPolicyArrayOutput

func (o BackupPolicyArrayOutput) ToBackupPolicyArrayOutput() BackupPolicyArrayOutput

func (BackupPolicyArrayOutput) ToBackupPolicyArrayOutputWithContext

func (o BackupPolicyArrayOutput) ToBackupPolicyArrayOutputWithContext(ctx context.Context) BackupPolicyArrayOutput

type BackupPolicyInput

type BackupPolicyInput interface {
	pulumi.Input

	ToBackupPolicyOutput() BackupPolicyOutput
	ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput
}

type BackupPolicyMap

type BackupPolicyMap map[string]BackupPolicyInput

func (BackupPolicyMap) ElementType

func (BackupPolicyMap) ElementType() reflect.Type

func (BackupPolicyMap) ToBackupPolicyMapOutput

func (i BackupPolicyMap) ToBackupPolicyMapOutput() BackupPolicyMapOutput

func (BackupPolicyMap) ToBackupPolicyMapOutputWithContext

func (i BackupPolicyMap) ToBackupPolicyMapOutputWithContext(ctx context.Context) BackupPolicyMapOutput

type BackupPolicyMapInput

type BackupPolicyMapInput interface {
	pulumi.Input

	ToBackupPolicyMapOutput() BackupPolicyMapOutput
	ToBackupPolicyMapOutputWithContext(context.Context) BackupPolicyMapOutput
}

BackupPolicyMapInput is an input type that accepts BackupPolicyMap and BackupPolicyMapOutput values. You can construct a concrete instance of `BackupPolicyMapInput` via:

BackupPolicyMap{ "key": BackupPolicyArgs{...} }

type BackupPolicyMapOutput

type BackupPolicyMapOutput struct{ *pulumi.OutputState }

func (BackupPolicyMapOutput) ElementType

func (BackupPolicyMapOutput) ElementType() reflect.Type

func (BackupPolicyMapOutput) MapIndex

func (BackupPolicyMapOutput) ToBackupPolicyMapOutput

func (o BackupPolicyMapOutput) ToBackupPolicyMapOutput() BackupPolicyMapOutput

func (BackupPolicyMapOutput) ToBackupPolicyMapOutputWithContext

func (o BackupPolicyMapOutput) ToBackupPolicyMapOutputWithContext(ctx context.Context) BackupPolicyMapOutput

type BackupPolicyOutput

type BackupPolicyOutput struct{ *pulumi.OutputState }

func (BackupPolicyOutput) ElementType

func (BackupPolicyOutput) ElementType() reflect.Type

func (BackupPolicyOutput) ToBackupPolicyOutput

func (o BackupPolicyOutput) ToBackupPolicyOutput() BackupPolicyOutput

func (BackupPolicyOutput) ToBackupPolicyOutputWithContext

func (o BackupPolicyOutput) ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput

func (BackupPolicyOutput) ToBackupPolicyPtrOutput

func (o BackupPolicyOutput) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (BackupPolicyOutput) ToBackupPolicyPtrOutputWithContext

func (o BackupPolicyOutput) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyPtrInput

type BackupPolicyPtrInput interface {
	pulumi.Input

	ToBackupPolicyPtrOutput() BackupPolicyPtrOutput
	ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput
}

type BackupPolicyPtrOutput

type BackupPolicyPtrOutput struct{ *pulumi.OutputState }

func (BackupPolicyPtrOutput) Elem added in v3.9.0

func (BackupPolicyPtrOutput) ElementType

func (BackupPolicyPtrOutput) ElementType() reflect.Type

func (BackupPolicyPtrOutput) ToBackupPolicyPtrOutput

func (o BackupPolicyPtrOutput) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (BackupPolicyPtrOutput) ToBackupPolicyPtrOutputWithContext

func (o BackupPolicyPtrOutput) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyState

type BackupPolicyState struct {
	// Instance archive backup keep count. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. When `archiveBackupKeepPolicy` is `ByMonth` Valid values: [1-31]. When `archiveBackupKeepPolicy` is `ByWeek` Valid values: [1-7].
	ArchiveBackupKeepCount pulumi.IntPtrInput
	// Instance archive backup keep policy. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values are `ByMonth`, `Disable`, `KeepAll`.
	ArchiveBackupKeepPolicy pulumi.StringPtrInput
	// Instance archive backup retention days. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values: [30-1095], and `archiveBackupRetentionPeriod` must larger than `backupRetentionPeriod` 730.
	ArchiveBackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_period' instead.
	//
	// Deprecated: Attribute 'backup_period' has been deprecated from version 1.69.0. Use `preferred_backup_period` instead
	BackupPeriods pulumi.StringArrayInput
	// Instance backup retention days. Valid values: [7-730]. Default to 7. But mysql local disk is unlimited.
	BackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'preferred_backup_time' instead.
	//
	// Deprecated: Attribute 'backup_time' has been deprecated from version 1.69.0. Use `preferred_backup_time` instead
	BackupTime pulumi.StringPtrInput
	// The compress type of instance policy. Valid values are `1`, `4`, `8`.
	CompressType pulumi.StringPtrInput
	// Whether to backup instance log. Valid values are `true`, `false`, Default to `true`. Note: The 'Basic Edition' category Rds instance does not support setting log backup. [What is Basic Edition](https://www.alibabacloud.com/help/doc-detail/48980.htm).
	EnableBackupLog pulumi.BoolPtrInput
	// Instance high space usage protection policy. Valid when the `enableBackupLog` is `true`. Valid values are `Enable`, `Disable`.
	HighSpaceUsageProtection pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// Instance log backup local retention hours. Valid when the `enableBackupLog` is `true`. Valid values: [0-7*24].
	LocalLogRetentionHours pulumi.IntPtrInput
	// Instance log backup local retention space. Valid when the `enableBackupLog` is `true`. Valid values: [0-50].
	LocalLogRetentionSpace pulumi.IntPtrInput
	// It has been deprecated from version 1.68.0, and use field 'enable_backup_log' instead.
	//
	// Deprecated: Attribute 'log_backup' has been deprecated from version 1.68.0. Use `enable_backup_log` instead
	LogBackup pulumi.BoolPtrInput
	// Instance log backup frequency. Valid when the instance engine is `SQLServer`. Valid values are `LogInterval`.
	LogBackupFrequency pulumi.StringPtrInput
	// Instance log backup retention days. Valid when the `enableBackupLog` is `1`. Valid values: [7-730]. Default to 7. It cannot be larger than `backupRetentionPeriod`.
	LogBackupRetentionPeriod pulumi.IntPtrInput
	// It has been deprecated from version 1.69.0, and use field 'log_backup_retention_period' instead.
	//
	// Deprecated: Attribute 'log_retention_period' has been deprecated from version 1.69.0. Use `log_backup_retention_period` instead
	LogRetentionPeriod pulumi.IntPtrInput
	// DB Instance backup period. Please set at least two days to ensure backing up at least twice a week. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"].
	PreferredBackupPeriods pulumi.StringArrayInput
	// DB instance backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrInput
	// The policy based on which ApsaraDB RDS retains archived backup files if the instance is released. Default value: None. Valid values:
	// * **None**: No archived backup files are retained.
	// * **Lastest**: Only the most recent archived backup file is retained.
	// * **All**: All archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// It has been deprecated from version 1.69.0, and use field 'backup_retention_period' instead.
	//
	// Deprecated: Attribute 'retention_period' has been deprecated from version 1.69.0. Use `backup_retention_period` instead
	RetentionPeriod pulumi.IntPtrInput
}

func (BackupPolicyState) ElementType

func (BackupPolicyState) ElementType() reflect.Type

type Connection

type Connection struct {
	pulumi.CustomResourceState

	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 40 characters. Default to <instance_id> + 'tf'.
	ConnectionPrefix pulumi.StringOutput `pulumi:"connectionPrefix"`
	// Connection instance string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ip address of connection string.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// Internet connection port. Valid value: [1000-5999]. Default to 3306.
	Port pulumi.StringPtrOutput `pulumi:"port"`
}

Provides an RDS connection resource to allocate an Internet connection string for RDS instance.

> **NOTE:** Each RDS instance will allocate a intranet connnection string automatically and its prifix is RDS instance ID.

To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbconnectionbasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		instance, err := rds.NewInstance(ctx, "instance", &rds.InstanceArgs{
			Engine:          pulumi.String("MySQL"),
			EngineVersion:   pulumi.String("5.6"),
			InstanceType:    pulumi.String("rds.mysql.t1.small"),
			InstanceStorage: pulumi.Int(10),
			VswitchId:       defaultSwitch.ID(),
			InstanceName:    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewConnection(ctx, "foo", &rds.ConnectionArgs{
			InstanceId:       instance.ID(),
			ConnectionPrefix: pulumi.String("testabc"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS connection can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/connection:Connection example abc12345678

```

func GetConnection

func GetConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConnectionState, opts ...pulumi.ResourceOption) (*Connection, error)

GetConnection gets an existing Connection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConnection

func NewConnection(ctx *pulumi.Context,
	name string, args *ConnectionArgs, opts ...pulumi.ResourceOption) (*Connection, error)

NewConnection registers a new resource with the given unique name, arguments, and options.

func (*Connection) ElementType

func (*Connection) ElementType() reflect.Type

func (*Connection) ToConnectionOutput

func (i *Connection) ToConnectionOutput() ConnectionOutput

func (*Connection) ToConnectionOutputWithContext

func (i *Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

func (*Connection) ToConnectionPtrOutput

func (i *Connection) ToConnectionPtrOutput() ConnectionPtrOutput

func (*Connection) ToConnectionPtrOutputWithContext

func (i *Connection) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput

type ConnectionArgs

type ConnectionArgs struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 40 characters. Default to <instance_id> + 'tf'.
	ConnectionPrefix pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// Internet connection port. Valid value: [1000-5999]. Default to 3306.
	Port pulumi.StringPtrInput
}

The set of arguments for constructing a Connection resource.

func (ConnectionArgs) ElementType

func (ConnectionArgs) ElementType() reflect.Type

type ConnectionArray

type ConnectionArray []ConnectionInput

func (ConnectionArray) ElementType

func (ConnectionArray) ElementType() reflect.Type

func (ConnectionArray) ToConnectionArrayOutput

func (i ConnectionArray) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArray) ToConnectionArrayOutputWithContext

func (i ConnectionArray) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionArrayInput

type ConnectionArrayInput interface {
	pulumi.Input

	ToConnectionArrayOutput() ConnectionArrayOutput
	ToConnectionArrayOutputWithContext(context.Context) ConnectionArrayOutput
}

ConnectionArrayInput is an input type that accepts ConnectionArray and ConnectionArrayOutput values. You can construct a concrete instance of `ConnectionArrayInput` via:

ConnectionArray{ ConnectionArgs{...} }

type ConnectionArrayOutput

type ConnectionArrayOutput struct{ *pulumi.OutputState }

func (ConnectionArrayOutput) ElementType

func (ConnectionArrayOutput) ElementType() reflect.Type

func (ConnectionArrayOutput) Index

func (ConnectionArrayOutput) ToConnectionArrayOutput

func (o ConnectionArrayOutput) ToConnectionArrayOutput() ConnectionArrayOutput

func (ConnectionArrayOutput) ToConnectionArrayOutputWithContext

func (o ConnectionArrayOutput) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput

type ConnectionInput

type ConnectionInput interface {
	pulumi.Input

	ToConnectionOutput() ConnectionOutput
	ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
}

type ConnectionMap

type ConnectionMap map[string]ConnectionInput

func (ConnectionMap) ElementType

func (ConnectionMap) ElementType() reflect.Type

func (ConnectionMap) ToConnectionMapOutput

func (i ConnectionMap) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMap) ToConnectionMapOutputWithContext

func (i ConnectionMap) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionMapInput

type ConnectionMapInput interface {
	pulumi.Input

	ToConnectionMapOutput() ConnectionMapOutput
	ToConnectionMapOutputWithContext(context.Context) ConnectionMapOutput
}

ConnectionMapInput is an input type that accepts ConnectionMap and ConnectionMapOutput values. You can construct a concrete instance of `ConnectionMapInput` via:

ConnectionMap{ "key": ConnectionArgs{...} }

type ConnectionMapOutput

type ConnectionMapOutput struct{ *pulumi.OutputState }

func (ConnectionMapOutput) ElementType

func (ConnectionMapOutput) ElementType() reflect.Type

func (ConnectionMapOutput) MapIndex

func (ConnectionMapOutput) ToConnectionMapOutput

func (o ConnectionMapOutput) ToConnectionMapOutput() ConnectionMapOutput

func (ConnectionMapOutput) ToConnectionMapOutputWithContext

func (o ConnectionMapOutput) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput

type ConnectionOutput

type ConnectionOutput struct{ *pulumi.OutputState }

func (ConnectionOutput) ElementType

func (ConnectionOutput) ElementType() reflect.Type

func (ConnectionOutput) ToConnectionOutput

func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput

func (ConnectionOutput) ToConnectionOutputWithContext

func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput

func (ConnectionOutput) ToConnectionPtrOutput

func (o ConnectionOutput) ToConnectionPtrOutput() ConnectionPtrOutput

func (ConnectionOutput) ToConnectionPtrOutputWithContext

func (o ConnectionOutput) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput

type ConnectionPtrInput

type ConnectionPtrInput interface {
	pulumi.Input

	ToConnectionPtrOutput() ConnectionPtrOutput
	ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
}

type ConnectionPtrOutput

type ConnectionPtrOutput struct{ *pulumi.OutputState }

func (ConnectionPtrOutput) Elem added in v3.9.0

func (ConnectionPtrOutput) ElementType

func (ConnectionPtrOutput) ElementType() reflect.Type

func (ConnectionPtrOutput) ToConnectionPtrOutput

func (o ConnectionPtrOutput) ToConnectionPtrOutput() ConnectionPtrOutput

func (ConnectionPtrOutput) ToConnectionPtrOutputWithContext

func (o ConnectionPtrOutput) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput

type ConnectionState

type ConnectionState struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 40 characters. Default to <instance_id> + 'tf'.
	ConnectionPrefix pulumi.StringPtrInput
	// Connection instance string.
	ConnectionString pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// The ip address of connection string.
	IpAddress pulumi.StringPtrInput
	// Internet connection port. Valid value: [1000-5999]. Default to 3306.
	Port pulumi.StringPtrInput
}

func (ConnectionState) ElementType

func (ConnectionState) ElementType() reflect.Type

type Database

type Database struct {
	pulumi.CustomResourceState

	// Character set. The value range is limited to the following:
	// - MySQL: [ utf8, gbk, latin1, utf8mb4 ] \(`utf8mb4` only supports versions 5.5 and 5.6\).
	// - SQLServer: [ Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ]
	// - PostgreSQL: [ KOI8U、UTF8、WIN866、WIN874、WIN1250、WIN1251、WIN1252、WIN1253、WIN1254、WIN1255、WIN1256、WIN1257、WIN1258、EUC_CN、EUC_KR、EUC_TW、EUC_JP、EUC_JIS_2004、KOI8R、MULE_INTERNAL、LATIN1、LATIN2、LATIN3、LATIN4、LATIN5、LATIN6、LATIN7、LATIN8、LATIN9、LATIN10、ISO_8859_5、ISO_8859_6、ISO_8859_7、ISO_8859_8、SQL_ASCII ]
	CharacterSet pulumi.StringPtrOutput `pulumi:"characterSet"`
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter
	// and have no more than 64 characters.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides an RDS database resource. A DB database deployed in a DB instance. A DB instance can own multiple databases.

> **NOTE:** This resource does not support creating 'PPAS' database. You have to login RDS instance to create manually.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbdatabasebasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		instance, err := rds.NewInstance(ctx, "instance", &rds.InstanceArgs{
			Engine:          pulumi.String("MySQL"),
			EngineVersion:   pulumi.String("5.6"),
			InstanceType:    pulumi.String("rds.mysql.s1.small"),
			InstanceStorage: pulumi.Int(10),
			VswitchId:       defaultSwitch.ID(),
			InstanceName:    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewDatabase(ctx, "defaultDatabase", &rds.DatabaseArgs{
			InstanceId: instance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS database can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/database:Database example "rm-12345:tf_database"

```

func GetDatabase

func GetDatabase(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabaseState, opts ...pulumi.ResourceOption) (*Database, error)

GetDatabase gets an existing Database resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatabase

func NewDatabase(ctx *pulumi.Context,
	name string, args *DatabaseArgs, opts ...pulumi.ResourceOption) (*Database, error)

NewDatabase registers a new resource with the given unique name, arguments, and options.

func (*Database) ElementType

func (*Database) ElementType() reflect.Type

func (*Database) ToDatabaseOutput

func (i *Database) ToDatabaseOutput() DatabaseOutput

func (*Database) ToDatabaseOutputWithContext

func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (*Database) ToDatabasePtrOutput

func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput

func (*Database) ToDatabasePtrOutputWithContext

func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseArgs

type DatabaseArgs struct {
	// Character set. The value range is limited to the following:
	// - MySQL: [ utf8, gbk, latin1, utf8mb4 ] \(`utf8mb4` only supports versions 5.5 and 5.6\).
	// - SQLServer: [ Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ]
	// - PostgreSQL: [ KOI8U、UTF8、WIN866、WIN874、WIN1250、WIN1251、WIN1252、WIN1253、WIN1254、WIN1255、WIN1256、WIN1257、WIN1258、EUC_CN、EUC_KR、EUC_TW、EUC_JP、EUC_JIS_2004、KOI8R、MULE_INTERNAL、LATIN1、LATIN2、LATIN3、LATIN4、LATIN5、LATIN6、LATIN7、LATIN8、LATIN9、LATIN10、ISO_8859_5、ISO_8859_6、ISO_8859_7、ISO_8859_8、SQL_ASCII ]
	CharacterSet pulumi.StringPtrInput
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	Description pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter
	// and have no more than 64 characters.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a Database resource.

func (DatabaseArgs) ElementType

func (DatabaseArgs) ElementType() reflect.Type

type DatabaseArray

type DatabaseArray []DatabaseInput

func (DatabaseArray) ElementType

func (DatabaseArray) ElementType() reflect.Type

func (DatabaseArray) ToDatabaseArrayOutput

func (i DatabaseArray) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArray) ToDatabaseArrayOutputWithContext

func (i DatabaseArray) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseArrayInput

type DatabaseArrayInput interface {
	pulumi.Input

	ToDatabaseArrayOutput() DatabaseArrayOutput
	ToDatabaseArrayOutputWithContext(context.Context) DatabaseArrayOutput
}

DatabaseArrayInput is an input type that accepts DatabaseArray and DatabaseArrayOutput values. You can construct a concrete instance of `DatabaseArrayInput` via:

DatabaseArray{ DatabaseArgs{...} }

type DatabaseArrayOutput

type DatabaseArrayOutput struct{ *pulumi.OutputState }

func (DatabaseArrayOutput) ElementType

func (DatabaseArrayOutput) ElementType() reflect.Type

func (DatabaseArrayOutput) Index

func (DatabaseArrayOutput) ToDatabaseArrayOutput

func (o DatabaseArrayOutput) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArrayOutput) ToDatabaseArrayOutputWithContext

func (o DatabaseArrayOutput) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseInput

type DatabaseInput interface {
	pulumi.Input

	ToDatabaseOutput() DatabaseOutput
	ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
}

type DatabaseMap

type DatabaseMap map[string]DatabaseInput

func (DatabaseMap) ElementType

func (DatabaseMap) ElementType() reflect.Type

func (DatabaseMap) ToDatabaseMapOutput

func (i DatabaseMap) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMap) ToDatabaseMapOutputWithContext

func (i DatabaseMap) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseMapInput

type DatabaseMapInput interface {
	pulumi.Input

	ToDatabaseMapOutput() DatabaseMapOutput
	ToDatabaseMapOutputWithContext(context.Context) DatabaseMapOutput
}

DatabaseMapInput is an input type that accepts DatabaseMap and DatabaseMapOutput values. You can construct a concrete instance of `DatabaseMapInput` via:

DatabaseMap{ "key": DatabaseArgs{...} }

type DatabaseMapOutput

type DatabaseMapOutput struct{ *pulumi.OutputState }

func (DatabaseMapOutput) ElementType

func (DatabaseMapOutput) ElementType() reflect.Type

func (DatabaseMapOutput) MapIndex

func (DatabaseMapOutput) ToDatabaseMapOutput

func (o DatabaseMapOutput) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMapOutput) ToDatabaseMapOutputWithContext

func (o DatabaseMapOutput) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseOutput

type DatabaseOutput struct{ *pulumi.OutputState }

func (DatabaseOutput) ElementType

func (DatabaseOutput) ElementType() reflect.Type

func (DatabaseOutput) ToDatabaseOutput

func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput

func (DatabaseOutput) ToDatabaseOutputWithContext

func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (DatabaseOutput) ToDatabasePtrOutput

func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabaseOutput) ToDatabasePtrOutputWithContext

func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabasePtrInput

type DatabasePtrInput interface {
	pulumi.Input

	ToDatabasePtrOutput() DatabasePtrOutput
	ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
}

type DatabasePtrOutput

type DatabasePtrOutput struct{ *pulumi.OutputState }

func (DatabasePtrOutput) Elem added in v3.9.0

func (DatabasePtrOutput) ElementType

func (DatabasePtrOutput) ElementType() reflect.Type

func (DatabasePtrOutput) ToDatabasePtrOutput

func (o DatabasePtrOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabasePtrOutput) ToDatabasePtrOutputWithContext

func (o DatabasePtrOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseState

type DatabaseState struct {
	// Character set. The value range is limited to the following:
	// - MySQL: [ utf8, gbk, latin1, utf8mb4 ] \(`utf8mb4` only supports versions 5.5 and 5.6\).
	// - SQLServer: [ Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ]
	// - PostgreSQL: [ KOI8U、UTF8、WIN866、WIN874、WIN1250、WIN1251、WIN1252、WIN1253、WIN1254、WIN1255、WIN1256、WIN1257、WIN1258、EUC_CN、EUC_KR、EUC_TW、EUC_JP、EUC_JIS_2004、KOI8R、MULE_INTERNAL、LATIN1、LATIN2、LATIN3、LATIN4、LATIN5、LATIN6、LATIN7、LATIN8、LATIN9、LATIN10、ISO_8859_5、ISO_8859_6、ISO_8859_7、ISO_8859_8、SQL_ASCII ]
	CharacterSet pulumi.StringPtrInput
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	Description pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter
	// and have no more than 64 characters.
	Name pulumi.StringPtrInput
}

func (DatabaseState) ElementType

func (DatabaseState) ElementType() reflect.Type

type GetAccountsAccount

type GetAccountsAccount struct {
	// Database description.
	AccountDescription string `pulumi:"accountDescription"`
	// Name of database account.
	AccountName string `pulumi:"accountName"`
	// Privilege type of account.
	AccountType string `pulumi:"accountType"`
	// A list of database permissions the account has.
	DatabasePrivileges []GetAccountsAccountDatabasePrivilege `pulumi:"databasePrivileges"`
	// The ID of the Account.
	Id string `pulumi:"id"`
	// Whether the maximum number of databases managed by the account is exceeded.
	PrivExceeded string `pulumi:"privExceeded"`
	// The status of the resource.
	Status string `pulumi:"status"`
}

type GetAccountsAccountArgs

type GetAccountsAccountArgs struct {
	// Database description.
	AccountDescription pulumi.StringInput `pulumi:"accountDescription"`
	// Name of database account.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// Privilege type of account.
	AccountType pulumi.StringInput `pulumi:"accountType"`
	// A list of database permissions the account has.
	DatabasePrivileges GetAccountsAccountDatabasePrivilegeArrayInput `pulumi:"databasePrivileges"`
	// The ID of the Account.
	Id pulumi.StringInput `pulumi:"id"`
	// Whether the maximum number of databases managed by the account is exceeded.
	PrivExceeded pulumi.StringInput `pulumi:"privExceeded"`
	// The status of the resource.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetAccountsAccountArgs) ElementType

func (GetAccountsAccountArgs) ElementType() reflect.Type

func (GetAccountsAccountArgs) ToGetAccountsAccountOutput

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

type GetAccountsAccountArray

type GetAccountsAccountArray []GetAccountsAccountInput

func (GetAccountsAccountArray) ElementType

func (GetAccountsAccountArray) ElementType() reflect.Type

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutput

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountArrayInput

type GetAccountsAccountArrayInput interface {
	pulumi.Input

	ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput
	ToGetAccountsAccountArrayOutputWithContext(context.Context) GetAccountsAccountArrayOutput
}

GetAccountsAccountArrayInput is an input type that accepts GetAccountsAccountArray and GetAccountsAccountArrayOutput values. You can construct a concrete instance of `GetAccountsAccountArrayInput` via:

GetAccountsAccountArray{ GetAccountsAccountArgs{...} }

type GetAccountsAccountArrayOutput

type GetAccountsAccountArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountArrayOutput) ElementType

func (GetAccountsAccountArrayOutput) Index

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountDatabasePrivilege

type GetAccountsAccountDatabasePrivilege struct {
	// The type of permission for the account.
	AccountPrivilege string `pulumi:"accountPrivilege"`
	// The specific permissions corresponding to the type of account permissions.
	AccountPrivilegeDetail string `pulumi:"accountPrivilegeDetail"`
	// Database name.
	DbName string `pulumi:"dbName"`
}

type GetAccountsAccountDatabasePrivilegeArgs

type GetAccountsAccountDatabasePrivilegeArgs struct {
	// The type of permission for the account.
	AccountPrivilege pulumi.StringInput `pulumi:"accountPrivilege"`
	// The specific permissions corresponding to the type of account permissions.
	AccountPrivilegeDetail pulumi.StringInput `pulumi:"accountPrivilegeDetail"`
	// Database name.
	DbName pulumi.StringInput `pulumi:"dbName"`
}

func (GetAccountsAccountDatabasePrivilegeArgs) ElementType

func (GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutput

func (i GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput

func (GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutputWithContext

func (i GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountDatabasePrivilegeArray

type GetAccountsAccountDatabasePrivilegeArray []GetAccountsAccountDatabasePrivilegeInput

func (GetAccountsAccountDatabasePrivilegeArray) ElementType

func (GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutput

func (i GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput

func (GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext

func (i GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeArrayInput

type GetAccountsAccountDatabasePrivilegeArrayInput interface {
	pulumi.Input

	ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput
	ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput
}

GetAccountsAccountDatabasePrivilegeArrayInput is an input type that accepts GetAccountsAccountDatabasePrivilegeArray and GetAccountsAccountDatabasePrivilegeArrayOutput values. You can construct a concrete instance of `GetAccountsAccountDatabasePrivilegeArrayInput` via:

GetAccountsAccountDatabasePrivilegeArray{ GetAccountsAccountDatabasePrivilegeArgs{...} }

type GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ElementType

func (GetAccountsAccountDatabasePrivilegeArrayOutput) Index

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutput

func (o GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext

func (o GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeInput

type GetAccountsAccountDatabasePrivilegeInput interface {
	pulumi.Input

	ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput
	ToGetAccountsAccountDatabasePrivilegeOutputWithContext(context.Context) GetAccountsAccountDatabasePrivilegeOutput
}

GetAccountsAccountDatabasePrivilegeInput is an input type that accepts GetAccountsAccountDatabasePrivilegeArgs and GetAccountsAccountDatabasePrivilegeOutput values. You can construct a concrete instance of `GetAccountsAccountDatabasePrivilegeInput` via:

GetAccountsAccountDatabasePrivilegeArgs{...}

type GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountDatabasePrivilegeOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountDatabasePrivilegeOutput) AccountPrivilege

The type of permission for the account.

func (GetAccountsAccountDatabasePrivilegeOutput) AccountPrivilegeDetail

The specific permissions corresponding to the type of account permissions.

func (GetAccountsAccountDatabasePrivilegeOutput) DbName

Database name.

func (GetAccountsAccountDatabasePrivilegeOutput) ElementType

func (GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutput

func (o GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput

func (GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutputWithContext

func (o GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountInput

type GetAccountsAccountInput interface {
	pulumi.Input

	ToGetAccountsAccountOutput() GetAccountsAccountOutput
	ToGetAccountsAccountOutputWithContext(context.Context) GetAccountsAccountOutput
}

GetAccountsAccountInput is an input type that accepts GetAccountsAccountArgs and GetAccountsAccountOutput values. You can construct a concrete instance of `GetAccountsAccountInput` via:

GetAccountsAccountArgs{...}

type GetAccountsAccountOutput

type GetAccountsAccountOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountOutput) AccountDescription

func (o GetAccountsAccountOutput) AccountDescription() pulumi.StringOutput

Database description.

func (GetAccountsAccountOutput) AccountName

Name of database account.

func (GetAccountsAccountOutput) AccountType

Privilege type of account.

func (GetAccountsAccountOutput) DatabasePrivileges

A list of database permissions the account has.

func (GetAccountsAccountOutput) ElementType

func (GetAccountsAccountOutput) ElementType() reflect.Type

func (GetAccountsAccountOutput) Id

The ID of the Account.

func (GetAccountsAccountOutput) PrivExceeded

func (o GetAccountsAccountOutput) PrivExceeded() pulumi.StringOutput

Whether the maximum number of databases managed by the account is exceeded.

func (GetAccountsAccountOutput) Status

The status of the resource.

func (GetAccountsAccountOutput) ToGetAccountsAccountOutput

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

type GetAccountsArgs

type GetAccountsArgs struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// A list of Account IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by Account name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of the resource.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getAccounts.

type GetAccountsOutputArgs added in v3.9.0

type GetAccountsOutputArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// A list of Account IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by Account name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The status of the resource.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

A collection of arguments for invoking getAccounts.

func (GetAccountsOutputArgs) ElementType added in v3.9.0

func (GetAccountsOutputArgs) ElementType() reflect.Type

type GetAccountsResult

type GetAccountsResult struct {
	Accounts     []GetAccountsAccount `pulumi:"accounts"`
	DbInstanceId string               `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	Status     *string  `pulumi:"status"`
}

A collection of values returned by getAccounts.

func GetAccounts

func GetAccounts(ctx *pulumi.Context, args *GetAccountsArgs, opts ...pulumi.InvokeOption) (*GetAccountsResult, error)

This data source provides the Rds Accounts of the current Alibaba Cloud user.

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "the_resource_name"
		example, err := rds.GetAccounts(ctx, &rds.GetAccountsArgs{
			DbInstanceId: "example_value",
			NameRegex:    &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsAccountId", example.Accounts[0].Id)
		return nil
	})
}

```

type GetAccountsResultOutput added in v3.9.0

type GetAccountsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccounts.

func GetAccountsOutput added in v3.9.0

func GetAccountsOutput(ctx *pulumi.Context, args GetAccountsOutputArgs, opts ...pulumi.InvokeOption) GetAccountsResultOutput

func (GetAccountsResultOutput) Accounts added in v3.9.0

func (GetAccountsResultOutput) DbInstanceId added in v3.9.0

func (o GetAccountsResultOutput) DbInstanceId() pulumi.StringOutput

func (GetAccountsResultOutput) ElementType added in v3.9.0

func (GetAccountsResultOutput) ElementType() reflect.Type

func (GetAccountsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetAccountsResultOutput) Ids added in v3.9.0

func (GetAccountsResultOutput) NameRegex added in v3.9.0

func (GetAccountsResultOutput) Names added in v3.9.0

func (GetAccountsResultOutput) OutputFile added in v3.9.0

func (GetAccountsResultOutput) Status added in v3.9.0

func (GetAccountsResultOutput) ToGetAccountsResultOutput added in v3.9.0

func (o GetAccountsResultOutput) ToGetAccountsResultOutput() GetAccountsResultOutput

func (GetAccountsResultOutput) ToGetAccountsResultOutputWithContext added in v3.9.0

func (o GetAccountsResultOutput) ToGetAccountsResultOutputWithContext(ctx context.Context) GetAccountsResultOutput

type GetInstanceClassesArgs

type GetInstanceClassesArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category *string `pulumi:"category"`
	// The DB instance class type by the user.
	DbInstanceClass *string `pulumi:"dbInstanceClass"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values:"MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine *string `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion *string `pulumi:"engineVersion"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType *string `pulumi:"instanceChargeType"`
	// Whether to show multi available zone. Default false to not show multi availability zone.
	MultiZone  *bool   `pulumi:"multiZone"`
	OutputFile *string `pulumi:"outputFile"`
	SortedBy   *string `pulumi:"sortedBy"`
	// It has been deprecated from version 1.134.0+ and using `dbInstanceStorageType` instead.
	StorageType *string `pulumi:"storageType"`
	// The Zone to launch the DB instance.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceClasses.

type GetInstanceClassesInstanceClass

type GetInstanceClassesInstanceClass struct {
	// DB Instance available class.
	InstanceClass string `pulumi:"instanceClass"`
	Price         string `pulumi:"price"`
	// DB Instance available storage range.
	StorageRange GetInstanceClassesInstanceClassStorageRange `pulumi:"storageRange"`
	// A list of Zone to launch the DB instance.
	ZoneIds []GetInstanceClassesInstanceClassZoneId `pulumi:"zoneIds"`
}

type GetInstanceClassesInstanceClassArgs

type GetInstanceClassesInstanceClassArgs struct {
	// DB Instance available class.
	InstanceClass pulumi.StringInput `pulumi:"instanceClass"`
	Price         pulumi.StringInput `pulumi:"price"`
	// DB Instance available storage range.
	StorageRange GetInstanceClassesInstanceClassStorageRangeInput `pulumi:"storageRange"`
	// A list of Zone to launch the DB instance.
	ZoneIds GetInstanceClassesInstanceClassZoneIdArrayInput `pulumi:"zoneIds"`
}

func (GetInstanceClassesInstanceClassArgs) ElementType

func (GetInstanceClassesInstanceClassArgs) ToGetInstanceClassesInstanceClassOutput

func (i GetInstanceClassesInstanceClassArgs) ToGetInstanceClassesInstanceClassOutput() GetInstanceClassesInstanceClassOutput

func (GetInstanceClassesInstanceClassArgs) ToGetInstanceClassesInstanceClassOutputWithContext

func (i GetInstanceClassesInstanceClassArgs) ToGetInstanceClassesInstanceClassOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassOutput

type GetInstanceClassesInstanceClassArray

type GetInstanceClassesInstanceClassArray []GetInstanceClassesInstanceClassInput

func (GetInstanceClassesInstanceClassArray) ElementType

func (GetInstanceClassesInstanceClassArray) ToGetInstanceClassesInstanceClassArrayOutput

func (i GetInstanceClassesInstanceClassArray) ToGetInstanceClassesInstanceClassArrayOutput() GetInstanceClassesInstanceClassArrayOutput

func (GetInstanceClassesInstanceClassArray) ToGetInstanceClassesInstanceClassArrayOutputWithContext

func (i GetInstanceClassesInstanceClassArray) ToGetInstanceClassesInstanceClassArrayOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassArrayOutput

type GetInstanceClassesInstanceClassArrayInput

type GetInstanceClassesInstanceClassArrayInput interface {
	pulumi.Input

	ToGetInstanceClassesInstanceClassArrayOutput() GetInstanceClassesInstanceClassArrayOutput
	ToGetInstanceClassesInstanceClassArrayOutputWithContext(context.Context) GetInstanceClassesInstanceClassArrayOutput
}

GetInstanceClassesInstanceClassArrayInput is an input type that accepts GetInstanceClassesInstanceClassArray and GetInstanceClassesInstanceClassArrayOutput values. You can construct a concrete instance of `GetInstanceClassesInstanceClassArrayInput` via:

GetInstanceClassesInstanceClassArray{ GetInstanceClassesInstanceClassArgs{...} }

type GetInstanceClassesInstanceClassArrayOutput

type GetInstanceClassesInstanceClassArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceClassesInstanceClassArrayOutput) ElementType

func (GetInstanceClassesInstanceClassArrayOutput) Index

func (GetInstanceClassesInstanceClassArrayOutput) ToGetInstanceClassesInstanceClassArrayOutput

func (o GetInstanceClassesInstanceClassArrayOutput) ToGetInstanceClassesInstanceClassArrayOutput() GetInstanceClassesInstanceClassArrayOutput

func (GetInstanceClassesInstanceClassArrayOutput) ToGetInstanceClassesInstanceClassArrayOutputWithContext

func (o GetInstanceClassesInstanceClassArrayOutput) ToGetInstanceClassesInstanceClassArrayOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassArrayOutput

type GetInstanceClassesInstanceClassInput

type GetInstanceClassesInstanceClassInput interface {
	pulumi.Input

	ToGetInstanceClassesInstanceClassOutput() GetInstanceClassesInstanceClassOutput
	ToGetInstanceClassesInstanceClassOutputWithContext(context.Context) GetInstanceClassesInstanceClassOutput
}

GetInstanceClassesInstanceClassInput is an input type that accepts GetInstanceClassesInstanceClassArgs and GetInstanceClassesInstanceClassOutput values. You can construct a concrete instance of `GetInstanceClassesInstanceClassInput` via:

GetInstanceClassesInstanceClassArgs{...}

type GetInstanceClassesInstanceClassOutput

type GetInstanceClassesInstanceClassOutput struct{ *pulumi.OutputState }

func (GetInstanceClassesInstanceClassOutput) ElementType

func (GetInstanceClassesInstanceClassOutput) InstanceClass

DB Instance available class.

func (GetInstanceClassesInstanceClassOutput) Price

func (GetInstanceClassesInstanceClassOutput) StorageRange

DB Instance available storage range.

func (GetInstanceClassesInstanceClassOutput) ToGetInstanceClassesInstanceClassOutput

func (o GetInstanceClassesInstanceClassOutput) ToGetInstanceClassesInstanceClassOutput() GetInstanceClassesInstanceClassOutput

func (GetInstanceClassesInstanceClassOutput) ToGetInstanceClassesInstanceClassOutputWithContext

func (o GetInstanceClassesInstanceClassOutput) ToGetInstanceClassesInstanceClassOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassOutput

func (GetInstanceClassesInstanceClassOutput) ZoneIds

A list of Zone to launch the DB instance.

type GetInstanceClassesInstanceClassStorageRange

type GetInstanceClassesInstanceClassStorageRange struct {
	// DB Instance available storage max value.
	Max string `pulumi:"max"`
	// DB Instance available storage min value.
	Min string `pulumi:"min"`
	// DB Instance available storage increase step.
	Step string `pulumi:"step"`
}

type GetInstanceClassesInstanceClassStorageRangeArgs

type GetInstanceClassesInstanceClassStorageRangeArgs struct {
	// DB Instance available storage max value.
	Max pulumi.StringInput `pulumi:"max"`
	// DB Instance available storage min value.
	Min pulumi.StringInput `pulumi:"min"`
	// DB Instance available storage increase step.
	Step pulumi.StringInput `pulumi:"step"`
}

func (GetInstanceClassesInstanceClassStorageRangeArgs) ElementType

func (GetInstanceClassesInstanceClassStorageRangeArgs) ToGetInstanceClassesInstanceClassStorageRangeOutput

func (i GetInstanceClassesInstanceClassStorageRangeArgs) ToGetInstanceClassesInstanceClassStorageRangeOutput() GetInstanceClassesInstanceClassStorageRangeOutput

func (GetInstanceClassesInstanceClassStorageRangeArgs) ToGetInstanceClassesInstanceClassStorageRangeOutputWithContext

func (i GetInstanceClassesInstanceClassStorageRangeArgs) ToGetInstanceClassesInstanceClassStorageRangeOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassStorageRangeOutput

type GetInstanceClassesInstanceClassStorageRangeInput

type GetInstanceClassesInstanceClassStorageRangeInput interface {
	pulumi.Input

	ToGetInstanceClassesInstanceClassStorageRangeOutput() GetInstanceClassesInstanceClassStorageRangeOutput
	ToGetInstanceClassesInstanceClassStorageRangeOutputWithContext(context.Context) GetInstanceClassesInstanceClassStorageRangeOutput
}

GetInstanceClassesInstanceClassStorageRangeInput is an input type that accepts GetInstanceClassesInstanceClassStorageRangeArgs and GetInstanceClassesInstanceClassStorageRangeOutput values. You can construct a concrete instance of `GetInstanceClassesInstanceClassStorageRangeInput` via:

GetInstanceClassesInstanceClassStorageRangeArgs{...}

type GetInstanceClassesInstanceClassStorageRangeOutput

type GetInstanceClassesInstanceClassStorageRangeOutput struct{ *pulumi.OutputState }

func (GetInstanceClassesInstanceClassStorageRangeOutput) ElementType

func (GetInstanceClassesInstanceClassStorageRangeOutput) Max

DB Instance available storage max value.

func (GetInstanceClassesInstanceClassStorageRangeOutput) Min

DB Instance available storage min value.

func (GetInstanceClassesInstanceClassStorageRangeOutput) Step

DB Instance available storage increase step.

func (GetInstanceClassesInstanceClassStorageRangeOutput) ToGetInstanceClassesInstanceClassStorageRangeOutput

func (o GetInstanceClassesInstanceClassStorageRangeOutput) ToGetInstanceClassesInstanceClassStorageRangeOutput() GetInstanceClassesInstanceClassStorageRangeOutput

func (GetInstanceClassesInstanceClassStorageRangeOutput) ToGetInstanceClassesInstanceClassStorageRangeOutputWithContext

func (o GetInstanceClassesInstanceClassStorageRangeOutput) ToGetInstanceClassesInstanceClassStorageRangeOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassStorageRangeOutput

type GetInstanceClassesInstanceClassZoneId

type GetInstanceClassesInstanceClassZoneId struct {
	// The Zone to launch the DB instance
	Id string `pulumi:"id"`
	// A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.
	SubZoneIds []string `pulumi:"subZoneIds"`
}

type GetInstanceClassesInstanceClassZoneIdArgs

type GetInstanceClassesInstanceClassZoneIdArgs struct {
	// The Zone to launch the DB instance
	Id pulumi.StringInput `pulumi:"id"`
	// A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.
	SubZoneIds pulumi.StringArrayInput `pulumi:"subZoneIds"`
}

func (GetInstanceClassesInstanceClassZoneIdArgs) ElementType

func (GetInstanceClassesInstanceClassZoneIdArgs) ToGetInstanceClassesInstanceClassZoneIdOutput

func (i GetInstanceClassesInstanceClassZoneIdArgs) ToGetInstanceClassesInstanceClassZoneIdOutput() GetInstanceClassesInstanceClassZoneIdOutput

func (GetInstanceClassesInstanceClassZoneIdArgs) ToGetInstanceClassesInstanceClassZoneIdOutputWithContext

func (i GetInstanceClassesInstanceClassZoneIdArgs) ToGetInstanceClassesInstanceClassZoneIdOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassZoneIdOutput

type GetInstanceClassesInstanceClassZoneIdArray

type GetInstanceClassesInstanceClassZoneIdArray []GetInstanceClassesInstanceClassZoneIdInput

func (GetInstanceClassesInstanceClassZoneIdArray) ElementType

func (GetInstanceClassesInstanceClassZoneIdArray) ToGetInstanceClassesInstanceClassZoneIdArrayOutput

func (i GetInstanceClassesInstanceClassZoneIdArray) ToGetInstanceClassesInstanceClassZoneIdArrayOutput() GetInstanceClassesInstanceClassZoneIdArrayOutput

func (GetInstanceClassesInstanceClassZoneIdArray) ToGetInstanceClassesInstanceClassZoneIdArrayOutputWithContext

func (i GetInstanceClassesInstanceClassZoneIdArray) ToGetInstanceClassesInstanceClassZoneIdArrayOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassZoneIdArrayOutput

type GetInstanceClassesInstanceClassZoneIdArrayInput

type GetInstanceClassesInstanceClassZoneIdArrayInput interface {
	pulumi.Input

	ToGetInstanceClassesInstanceClassZoneIdArrayOutput() GetInstanceClassesInstanceClassZoneIdArrayOutput
	ToGetInstanceClassesInstanceClassZoneIdArrayOutputWithContext(context.Context) GetInstanceClassesInstanceClassZoneIdArrayOutput
}

GetInstanceClassesInstanceClassZoneIdArrayInput is an input type that accepts GetInstanceClassesInstanceClassZoneIdArray and GetInstanceClassesInstanceClassZoneIdArrayOutput values. You can construct a concrete instance of `GetInstanceClassesInstanceClassZoneIdArrayInput` via:

GetInstanceClassesInstanceClassZoneIdArray{ GetInstanceClassesInstanceClassZoneIdArgs{...} }

type GetInstanceClassesInstanceClassZoneIdArrayOutput

type GetInstanceClassesInstanceClassZoneIdArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceClassesInstanceClassZoneIdArrayOutput) ElementType

func (GetInstanceClassesInstanceClassZoneIdArrayOutput) Index

func (GetInstanceClassesInstanceClassZoneIdArrayOutput) ToGetInstanceClassesInstanceClassZoneIdArrayOutput

func (o GetInstanceClassesInstanceClassZoneIdArrayOutput) ToGetInstanceClassesInstanceClassZoneIdArrayOutput() GetInstanceClassesInstanceClassZoneIdArrayOutput

func (GetInstanceClassesInstanceClassZoneIdArrayOutput) ToGetInstanceClassesInstanceClassZoneIdArrayOutputWithContext

func (o GetInstanceClassesInstanceClassZoneIdArrayOutput) ToGetInstanceClassesInstanceClassZoneIdArrayOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassZoneIdArrayOutput

type GetInstanceClassesInstanceClassZoneIdInput

type GetInstanceClassesInstanceClassZoneIdInput interface {
	pulumi.Input

	ToGetInstanceClassesInstanceClassZoneIdOutput() GetInstanceClassesInstanceClassZoneIdOutput
	ToGetInstanceClassesInstanceClassZoneIdOutputWithContext(context.Context) GetInstanceClassesInstanceClassZoneIdOutput
}

GetInstanceClassesInstanceClassZoneIdInput is an input type that accepts GetInstanceClassesInstanceClassZoneIdArgs and GetInstanceClassesInstanceClassZoneIdOutput values. You can construct a concrete instance of `GetInstanceClassesInstanceClassZoneIdInput` via:

GetInstanceClassesInstanceClassZoneIdArgs{...}

type GetInstanceClassesInstanceClassZoneIdOutput

type GetInstanceClassesInstanceClassZoneIdOutput struct{ *pulumi.OutputState }

func (GetInstanceClassesInstanceClassZoneIdOutput) ElementType

func (GetInstanceClassesInstanceClassZoneIdOutput) Id

The Zone to launch the DB instance

func (GetInstanceClassesInstanceClassZoneIdOutput) SubZoneIds

A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.

func (GetInstanceClassesInstanceClassZoneIdOutput) ToGetInstanceClassesInstanceClassZoneIdOutput

func (o GetInstanceClassesInstanceClassZoneIdOutput) ToGetInstanceClassesInstanceClassZoneIdOutput() GetInstanceClassesInstanceClassZoneIdOutput

func (GetInstanceClassesInstanceClassZoneIdOutput) ToGetInstanceClassesInstanceClassZoneIdOutputWithContext

func (o GetInstanceClassesInstanceClassZoneIdOutput) ToGetInstanceClassesInstanceClassZoneIdOutputWithContext(ctx context.Context) GetInstanceClassesInstanceClassZoneIdOutput

type GetInstanceClassesOutputArgs added in v3.9.0

type GetInstanceClassesOutputArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category pulumi.StringPtrInput `pulumi:"category"`
	// The DB instance class type by the user.
	DbInstanceClass pulumi.StringPtrInput `pulumi:"dbInstanceClass"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType pulumi.StringPtrInput `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values:"MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput `pulumi:"instanceChargeType"`
	// Whether to show multi available zone. Default false to not show multi availability zone.
	MultiZone  pulumi.BoolPtrInput   `pulumi:"multiZone"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	SortedBy   pulumi.StringPtrInput `pulumi:"sortedBy"`
	// It has been deprecated from version 1.134.0+ and using `dbInstanceStorageType` instead.
	StorageType pulumi.StringPtrInput `pulumi:"storageType"`
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceClasses.

func (GetInstanceClassesOutputArgs) ElementType added in v3.9.0

type GetInstanceClassesResult

type GetInstanceClassesResult struct {
	Category              *string `pulumi:"category"`
	DbInstanceClass       *string `pulumi:"dbInstanceClass"`
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	Engine                *string `pulumi:"engine"`
	EngineVersion         *string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Available in 1.60.0+) A list of Rds instance class codes.
	Ids                []string `pulumi:"ids"`
	InstanceChargeType *string  `pulumi:"instanceChargeType"`
	// A list of Rds available resource. Each element contains the following attributes:
	InstanceClasses []GetInstanceClassesInstanceClass `pulumi:"instanceClasses"`
	MultiZone       *bool                             `pulumi:"multiZone"`
	OutputFile      *string                           `pulumi:"outputFile"`
	SortedBy        *string                           `pulumi:"sortedBy"`
	StorageType     *string                           `pulumi:"storageType"`
	ZoneId          *string                           `pulumi:"zoneId"`
}

A collection of values returned by getInstanceClasses.

func GetInstanceClasses

func GetInstanceClasses(ctx *pulumi.Context, args *GetInstanceClassesArgs, opts ...pulumi.InvokeOption) (*GetInstanceClassesResult, error)

This data source provides the RDS instance classes resource available info of Alibaba Cloud.

> **NOTE:** Available in v1.46.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "MySQL"
		opt1 := "5.6"
		opt2 := "PostPaid"
		opt3 := "./classes.txt"
		resources, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			Engine:             &opt0,
			EngineVersion:      &opt1,
			InstanceChargeType: &opt2,
			OutputFile:         &opt3,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDbInstanceClass", resources.InstanceClasses[0].InstanceClass)
		return nil
	})
}

```

type GetInstanceClassesResultOutput added in v3.9.0

type GetInstanceClassesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceClasses.

func GetInstanceClassesOutput added in v3.9.0

func (GetInstanceClassesResultOutput) Category added in v3.9.0

func (GetInstanceClassesResultOutput) DbInstanceClass added in v3.9.0

func (GetInstanceClassesResultOutput) DbInstanceStorageType added in v3.9.0

func (o GetInstanceClassesResultOutput) DbInstanceStorageType() pulumi.StringPtrOutput

func (GetInstanceClassesResultOutput) ElementType added in v3.9.0

func (GetInstanceClassesResultOutput) Engine added in v3.9.0

func (GetInstanceClassesResultOutput) EngineVersion added in v3.9.0

func (GetInstanceClassesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetInstanceClassesResultOutput) Ids added in v3.9.0

(Available in 1.60.0+) A list of Rds instance class codes.

func (GetInstanceClassesResultOutput) InstanceChargeType added in v3.9.0

func (o GetInstanceClassesResultOutput) InstanceChargeType() pulumi.StringPtrOutput

func (GetInstanceClassesResultOutput) InstanceClasses added in v3.9.0

A list of Rds available resource. Each element contains the following attributes:

func (GetInstanceClassesResultOutput) MultiZone added in v3.9.0

func (GetInstanceClassesResultOutput) OutputFile added in v3.9.0

func (GetInstanceClassesResultOutput) SortedBy added in v3.9.0

func (GetInstanceClassesResultOutput) StorageType added in v3.9.0

func (GetInstanceClassesResultOutput) ToGetInstanceClassesResultOutput added in v3.9.0

func (o GetInstanceClassesResultOutput) ToGetInstanceClassesResultOutput() GetInstanceClassesResultOutput

func (GetInstanceClassesResultOutput) ToGetInstanceClassesResultOutputWithContext added in v3.9.0

func (o GetInstanceClassesResultOutput) ToGetInstanceClassesResultOutputWithContext(ctx context.Context) GetInstanceClassesResultOutput

func (GetInstanceClassesResultOutput) ZoneId added in v3.9.0

type GetInstanceEnginesArgs

type GetInstanceEnginesArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category *string `pulumi:"category"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine *string `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion *string `pulumi:"engineVersion"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType *string `pulumi:"instanceChargeType"`
	// Whether to show multi available zone. Default false to not show multi availability zone.
	MultiZone  *bool   `pulumi:"multiZone"`
	OutputFile *string `pulumi:"outputFile"`
	// The Zone to launch the DB instance.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceEngines.

type GetInstanceEnginesInstanceEngine

type GetInstanceEnginesInstanceEngine struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category string `pulumi:"category"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine string `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion string `pulumi:"engineVersion"`
	// A list of Zone to launch the DB instance.
	ZoneIds []GetInstanceEnginesInstanceEngineZoneId `pulumi:"zoneIds"`
}

type GetInstanceEnginesInstanceEngineArgs

type GetInstanceEnginesInstanceEngineArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category pulumi.StringInput `pulumi:"category"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// A list of Zone to launch the DB instance.
	ZoneIds GetInstanceEnginesInstanceEngineZoneIdArrayInput `pulumi:"zoneIds"`
}

func (GetInstanceEnginesInstanceEngineArgs) ElementType

func (GetInstanceEnginesInstanceEngineArgs) ToGetInstanceEnginesInstanceEngineOutput

func (i GetInstanceEnginesInstanceEngineArgs) ToGetInstanceEnginesInstanceEngineOutput() GetInstanceEnginesInstanceEngineOutput

func (GetInstanceEnginesInstanceEngineArgs) ToGetInstanceEnginesInstanceEngineOutputWithContext

func (i GetInstanceEnginesInstanceEngineArgs) ToGetInstanceEnginesInstanceEngineOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineOutput

type GetInstanceEnginesInstanceEngineArray

type GetInstanceEnginesInstanceEngineArray []GetInstanceEnginesInstanceEngineInput

func (GetInstanceEnginesInstanceEngineArray) ElementType

func (GetInstanceEnginesInstanceEngineArray) ToGetInstanceEnginesInstanceEngineArrayOutput

func (i GetInstanceEnginesInstanceEngineArray) ToGetInstanceEnginesInstanceEngineArrayOutput() GetInstanceEnginesInstanceEngineArrayOutput

func (GetInstanceEnginesInstanceEngineArray) ToGetInstanceEnginesInstanceEngineArrayOutputWithContext

func (i GetInstanceEnginesInstanceEngineArray) ToGetInstanceEnginesInstanceEngineArrayOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineArrayOutput

type GetInstanceEnginesInstanceEngineArrayInput

type GetInstanceEnginesInstanceEngineArrayInput interface {
	pulumi.Input

	ToGetInstanceEnginesInstanceEngineArrayOutput() GetInstanceEnginesInstanceEngineArrayOutput
	ToGetInstanceEnginesInstanceEngineArrayOutputWithContext(context.Context) GetInstanceEnginesInstanceEngineArrayOutput
}

GetInstanceEnginesInstanceEngineArrayInput is an input type that accepts GetInstanceEnginesInstanceEngineArray and GetInstanceEnginesInstanceEngineArrayOutput values. You can construct a concrete instance of `GetInstanceEnginesInstanceEngineArrayInput` via:

GetInstanceEnginesInstanceEngineArray{ GetInstanceEnginesInstanceEngineArgs{...} }

type GetInstanceEnginesInstanceEngineArrayOutput

type GetInstanceEnginesInstanceEngineArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceEnginesInstanceEngineArrayOutput) ElementType

func (GetInstanceEnginesInstanceEngineArrayOutput) Index

func (GetInstanceEnginesInstanceEngineArrayOutput) ToGetInstanceEnginesInstanceEngineArrayOutput

func (o GetInstanceEnginesInstanceEngineArrayOutput) ToGetInstanceEnginesInstanceEngineArrayOutput() GetInstanceEnginesInstanceEngineArrayOutput

func (GetInstanceEnginesInstanceEngineArrayOutput) ToGetInstanceEnginesInstanceEngineArrayOutputWithContext

func (o GetInstanceEnginesInstanceEngineArrayOutput) ToGetInstanceEnginesInstanceEngineArrayOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineArrayOutput

type GetInstanceEnginesInstanceEngineInput

type GetInstanceEnginesInstanceEngineInput interface {
	pulumi.Input

	ToGetInstanceEnginesInstanceEngineOutput() GetInstanceEnginesInstanceEngineOutput
	ToGetInstanceEnginesInstanceEngineOutputWithContext(context.Context) GetInstanceEnginesInstanceEngineOutput
}

GetInstanceEnginesInstanceEngineInput is an input type that accepts GetInstanceEnginesInstanceEngineArgs and GetInstanceEnginesInstanceEngineOutput values. You can construct a concrete instance of `GetInstanceEnginesInstanceEngineInput` via:

GetInstanceEnginesInstanceEngineArgs{...}

type GetInstanceEnginesInstanceEngineOutput

type GetInstanceEnginesInstanceEngineOutput struct{ *pulumi.OutputState }

func (GetInstanceEnginesInstanceEngineOutput) Category

DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).

func (GetInstanceEnginesInstanceEngineOutput) ElementType

func (GetInstanceEnginesInstanceEngineOutput) Engine

Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.

func (GetInstanceEnginesInstanceEngineOutput) EngineVersion

Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.

func (GetInstanceEnginesInstanceEngineOutput) ToGetInstanceEnginesInstanceEngineOutput

func (o GetInstanceEnginesInstanceEngineOutput) ToGetInstanceEnginesInstanceEngineOutput() GetInstanceEnginesInstanceEngineOutput

func (GetInstanceEnginesInstanceEngineOutput) ToGetInstanceEnginesInstanceEngineOutputWithContext

func (o GetInstanceEnginesInstanceEngineOutput) ToGetInstanceEnginesInstanceEngineOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineOutput

func (GetInstanceEnginesInstanceEngineOutput) ZoneIds

A list of Zone to launch the DB instance.

type GetInstanceEnginesInstanceEngineZoneId

type GetInstanceEnginesInstanceEngineZoneId struct {
	// The Zone to launch the DB instance
	Id string `pulumi:"id"`
	// A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.
	SubZoneIds []string `pulumi:"subZoneIds"`
}

type GetInstanceEnginesInstanceEngineZoneIdArgs

type GetInstanceEnginesInstanceEngineZoneIdArgs struct {
	// The Zone to launch the DB instance
	Id pulumi.StringInput `pulumi:"id"`
	// A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.
	SubZoneIds pulumi.StringArrayInput `pulumi:"subZoneIds"`
}

func (GetInstanceEnginesInstanceEngineZoneIdArgs) ElementType

func (GetInstanceEnginesInstanceEngineZoneIdArgs) ToGetInstanceEnginesInstanceEngineZoneIdOutput

func (i GetInstanceEnginesInstanceEngineZoneIdArgs) ToGetInstanceEnginesInstanceEngineZoneIdOutput() GetInstanceEnginesInstanceEngineZoneIdOutput

func (GetInstanceEnginesInstanceEngineZoneIdArgs) ToGetInstanceEnginesInstanceEngineZoneIdOutputWithContext

func (i GetInstanceEnginesInstanceEngineZoneIdArgs) ToGetInstanceEnginesInstanceEngineZoneIdOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineZoneIdOutput

type GetInstanceEnginesInstanceEngineZoneIdArray

type GetInstanceEnginesInstanceEngineZoneIdArray []GetInstanceEnginesInstanceEngineZoneIdInput

func (GetInstanceEnginesInstanceEngineZoneIdArray) ElementType

func (GetInstanceEnginesInstanceEngineZoneIdArray) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutput

func (i GetInstanceEnginesInstanceEngineZoneIdArray) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutput() GetInstanceEnginesInstanceEngineZoneIdArrayOutput

func (GetInstanceEnginesInstanceEngineZoneIdArray) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutputWithContext

func (i GetInstanceEnginesInstanceEngineZoneIdArray) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineZoneIdArrayOutput

type GetInstanceEnginesInstanceEngineZoneIdArrayInput

type GetInstanceEnginesInstanceEngineZoneIdArrayInput interface {
	pulumi.Input

	ToGetInstanceEnginesInstanceEngineZoneIdArrayOutput() GetInstanceEnginesInstanceEngineZoneIdArrayOutput
	ToGetInstanceEnginesInstanceEngineZoneIdArrayOutputWithContext(context.Context) GetInstanceEnginesInstanceEngineZoneIdArrayOutput
}

GetInstanceEnginesInstanceEngineZoneIdArrayInput is an input type that accepts GetInstanceEnginesInstanceEngineZoneIdArray and GetInstanceEnginesInstanceEngineZoneIdArrayOutput values. You can construct a concrete instance of `GetInstanceEnginesInstanceEngineZoneIdArrayInput` via:

GetInstanceEnginesInstanceEngineZoneIdArray{ GetInstanceEnginesInstanceEngineZoneIdArgs{...} }

type GetInstanceEnginesInstanceEngineZoneIdArrayOutput

type GetInstanceEnginesInstanceEngineZoneIdArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceEnginesInstanceEngineZoneIdArrayOutput) ElementType

func (GetInstanceEnginesInstanceEngineZoneIdArrayOutput) Index

func (GetInstanceEnginesInstanceEngineZoneIdArrayOutput) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutput

func (o GetInstanceEnginesInstanceEngineZoneIdArrayOutput) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutput() GetInstanceEnginesInstanceEngineZoneIdArrayOutput

func (GetInstanceEnginesInstanceEngineZoneIdArrayOutput) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutputWithContext

func (o GetInstanceEnginesInstanceEngineZoneIdArrayOutput) ToGetInstanceEnginesInstanceEngineZoneIdArrayOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineZoneIdArrayOutput

type GetInstanceEnginesInstanceEngineZoneIdInput

type GetInstanceEnginesInstanceEngineZoneIdInput interface {
	pulumi.Input

	ToGetInstanceEnginesInstanceEngineZoneIdOutput() GetInstanceEnginesInstanceEngineZoneIdOutput
	ToGetInstanceEnginesInstanceEngineZoneIdOutputWithContext(context.Context) GetInstanceEnginesInstanceEngineZoneIdOutput
}

GetInstanceEnginesInstanceEngineZoneIdInput is an input type that accepts GetInstanceEnginesInstanceEngineZoneIdArgs and GetInstanceEnginesInstanceEngineZoneIdOutput values. You can construct a concrete instance of `GetInstanceEnginesInstanceEngineZoneIdInput` via:

GetInstanceEnginesInstanceEngineZoneIdArgs{...}

type GetInstanceEnginesInstanceEngineZoneIdOutput

type GetInstanceEnginesInstanceEngineZoneIdOutput struct{ *pulumi.OutputState }

func (GetInstanceEnginesInstanceEngineZoneIdOutput) ElementType

func (GetInstanceEnginesInstanceEngineZoneIdOutput) Id

The Zone to launch the DB instance

func (GetInstanceEnginesInstanceEngineZoneIdOutput) SubZoneIds

A list of sub zone ids which in the id - e.g If `id` is `cn-beijing-MAZ5(a,b)`, `subZoneIds` will be `["cn-beijing-a", "cn-beijing-b"]`.

func (GetInstanceEnginesInstanceEngineZoneIdOutput) ToGetInstanceEnginesInstanceEngineZoneIdOutput

func (o GetInstanceEnginesInstanceEngineZoneIdOutput) ToGetInstanceEnginesInstanceEngineZoneIdOutput() GetInstanceEnginesInstanceEngineZoneIdOutput

func (GetInstanceEnginesInstanceEngineZoneIdOutput) ToGetInstanceEnginesInstanceEngineZoneIdOutputWithContext

func (o GetInstanceEnginesInstanceEngineZoneIdOutput) ToGetInstanceEnginesInstanceEngineZoneIdOutputWithContext(ctx context.Context) GetInstanceEnginesInstanceEngineZoneIdOutput

type GetInstanceEnginesOutputArgs added in v3.9.0

type GetInstanceEnginesOutputArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category pulumi.StringPtrInput `pulumi:"category"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType pulumi.StringPtrInput `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput `pulumi:"instanceChargeType"`
	// Whether to show multi available zone. Default false to not show multi availability zone.
	MultiZone  pulumi.BoolPtrInput   `pulumi:"multiZone"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getInstanceEngines.

func (GetInstanceEnginesOutputArgs) ElementType added in v3.9.0

type GetInstanceEnginesResult

type GetInstanceEnginesResult struct {
	// DB Instance category.
	Category              *string `pulumi:"category"`
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	// Database type.
	Engine *string `pulumi:"engine"`
	// DB Instance version.
	EngineVersion *string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of engines.
	Ids                []string `pulumi:"ids"`
	InstanceChargeType *string  `pulumi:"instanceChargeType"`
	// A list of Rds available resource. Each element contains the following attributes:
	InstanceEngines []GetInstanceEnginesInstanceEngine `pulumi:"instanceEngines"`
	MultiZone       *bool                              `pulumi:"multiZone"`
	OutputFile      *string                            `pulumi:"outputFile"`
	ZoneId          *string                            `pulumi:"zoneId"`
}

A collection of values returned by getInstanceEngines.

func GetInstanceEngines

func GetInstanceEngines(ctx *pulumi.Context, args *GetInstanceEnginesArgs, opts ...pulumi.InvokeOption) (*GetInstanceEnginesResult, error)

This data source provides the RDS instance engines resource available info of Alibaba Cloud.

> **NOTE:** Available in v1.46.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "MySQL"
		opt1 := "5.6"
		opt2 := "PostPaid"
		opt3 := "./engines.txt"
		resources, err := rds.GetInstanceEngines(ctx, &rds.GetInstanceEnginesArgs{
			Engine:             &opt0,
			EngineVersion:      &opt1,
			InstanceChargeType: &opt2,
			OutputFile:         &opt3,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDbCategory", resources.InstanceEngines[0].Category)
		return nil
	})
}

```

type GetInstanceEnginesResultOutput added in v3.9.0

type GetInstanceEnginesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceEngines.

func GetInstanceEnginesOutput added in v3.9.0

func (GetInstanceEnginesResultOutput) Category added in v3.9.0

DB Instance category.

func (GetInstanceEnginesResultOutput) DbInstanceStorageType added in v3.9.0

func (o GetInstanceEnginesResultOutput) DbInstanceStorageType() pulumi.StringPtrOutput

func (GetInstanceEnginesResultOutput) ElementType added in v3.9.0

func (GetInstanceEnginesResultOutput) Engine added in v3.9.0

Database type.

func (GetInstanceEnginesResultOutput) EngineVersion added in v3.9.0

DB Instance version.

func (GetInstanceEnginesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetInstanceEnginesResultOutput) Ids added in v3.9.0

A list of engines.

func (GetInstanceEnginesResultOutput) InstanceChargeType added in v3.9.0

func (o GetInstanceEnginesResultOutput) InstanceChargeType() pulumi.StringPtrOutput

func (GetInstanceEnginesResultOutput) InstanceEngines added in v3.9.0

A list of Rds available resource. Each element contains the following attributes:

func (GetInstanceEnginesResultOutput) MultiZone added in v3.9.0

func (GetInstanceEnginesResultOutput) OutputFile added in v3.9.0

func (GetInstanceEnginesResultOutput) ToGetInstanceEnginesResultOutput added in v3.9.0

func (o GetInstanceEnginesResultOutput) ToGetInstanceEnginesResultOutput() GetInstanceEnginesResultOutput

func (GetInstanceEnginesResultOutput) ToGetInstanceEnginesResultOutputWithContext added in v3.9.0

func (o GetInstanceEnginesResultOutput) ToGetInstanceEnginesResultOutputWithContext(ctx context.Context) GetInstanceEnginesResultOutput

func (GetInstanceEnginesResultOutput) ZoneId added in v3.9.0

type GetInstancesArgs

type GetInstancesArgs struct {
	// `Standard` for standard access mode and `Safe` for high security access mode.
	ConnectionMode *string `pulumi:"connectionMode"`
	// `Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.
	DbType *string `pulumi:"dbType"`
	// Default to `false`. Set it to `true` can output parameter template about resource attributes.
	EnableDetails *bool `pulumi:"enableDetails"`
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.
	Engine *string `pulumi:"engine"`
	// A list of RDS instance IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by instance name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// Status of the instance.
	Status *string `pulumi:"status"`
	// A map of tags assigned to the DB instances.
	// Note: Before 1.60.0, the value's format is a `json` string which including `TagKey` and `TagValue`. `TagKey` cannot be null, and `TagValue` can be empty. Format example `"{\"key1\":\"value1\"}"`
	Tags map[string]interface{} `pulumi:"tags"`
	// Used to retrieve instances belong to specified VPC.
	VpcId *string `pulumi:"vpcId"`
	// Used to retrieve instances belong to specified `vswitch` resources.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// (Available in 1.124.1+) The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl string `pulumi:"acl"`
	// Availability zone.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// (Available in 1.124.1+) The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType string `pulumi:"caType"`
	// Billing method. Value options: `Postpaid` for Pay-As-You-Go and `Prepaid` for subscription.
	ChargeType string `pulumi:"chargeType"`
	// (Available in 1.124.1+) The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ClientCaCert           string `pulumi:"clientCaCert"`
	ClientCaCertExpireTime string `pulumi:"clientCaCertExpireTime"`
	// (Available in 1.124.1+) The certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ClientCertRevocationList string `pulumi:"clientCertRevocationList"`
	// `Standard` for standard access mode and `Safe` for high security access mode.
	ConnectionMode string `pulumi:"connectionMode"`
	// (Available in 1.70.3+) RDS database connection string.
	ConnectionString string `pulumi:"connectionString"`
	// Creation time of the instance.
	CreateTime string `pulumi:"createTime"`
	// (Available in 1.124.3+) The creator of the encryption key.
	Creator string `pulumi:"creator"`
	// (Available in 1.70.3+) The storage type of the instance.
	DbInstanceStorageType string `pulumi:"dbInstanceStorageType"`
	// `Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.
	DbType string `pulumi:"dbType"`
	// (Available in 1.124.3+) The estimated time when the encryption key will be deleted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	DeleteDate string `pulumi:"deleteDate"`
	// (Available in 1.124.3+) The description of the encryption key.
	Description string `pulumi:"description"`
	// (Available in 1.124.3+) The ID of the encryption key.
	EncryptionKey string `pulumi:"encryptionKey"`
	// (Available in 1.124.3+) The status of the encryption key. Valid values:
	// - Enabled
	// - Disabled
	EncryptionKeyStatus string `pulumi:"encryptionKeyStatus"`
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.
	Engine string `pulumi:"engine"`
	// Database version.
	EngineVersion string `pulumi:"engineVersion"`
	// Expiration time. Pay-As-You-Go instances never expire.
	ExpireTime string `pulumi:"expireTime"`
	// If a disaster recovery instance is attached to the current instance, the ID of the disaster recovery instance applies.
	GuardInstanceId string `pulumi:"guardInstanceId"`
	// The ID of the RDS instance.
	Id string `pulumi:"id"`
	// (Available in 1.70.3+) User-defined DB instance storage space.
	InstanceStorage int `pulumi:"instanceStorage"`
	// Sizing of the RDS instance.
	InstanceType string `pulumi:"instanceType"`
	// (Available in 1.124.3+) The purpose of the encryption key.
	KeyUsage string `pulumi:"keyUsage"`
	// (Available in 1.124.1+) The status of the SSL link. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - success
	// - setting
	// - failed
	LastModifyStatus string `pulumi:"lastModifyStatus"`
	// ID of the primary instance. If this parameter is not returned, the current instance is a primary instance.
	MasterInstanceId string `pulumi:"masterInstanceId"`
	// (Available in 1.101.0+) The master zone of the instance.
	MasterZone string `pulumi:"masterZone"`
	// (Available in 1.124.3+) The time when the encryption key expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	MaterialExpireTime string `pulumi:"materialExpireTime"`
	// (Available in 1.124.1+) The reason why the SSL link stays in the current state. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ModifyStatusReason string `pulumi:"modifyStatusReason"`
	// The name of the RDS instance.
	Name string `pulumi:"name"`
	// `Internet` for public network or `Intranet` for private network.
	NetType string `pulumi:"netType"`
	// (Available in 1.124.3+) The source of the encryption key.
	Origin string `pulumi:"origin"`
	// (Available in 1.135.0+) Parameter list.
	Parameters []GetInstancesInstanceParameter `pulumi:"parameters"`
	// (Available in 1.70.3+) RDS database connection port.
	Port string `pulumi:"port"`
	// A list of IDs of read-only instances attached to the primary instance.
	ReadonlyInstanceIds []string `pulumi:"readonlyInstanceIds"`
	// Region ID the instance belongs to.
	RegionId string `pulumi:"regionId"`
	// (Available in 1.124.1+) The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	ReplicationAcl string `pulumi:"replicationAcl"`
	// (Available in 1.124.1+) Indicates whether the server certificate needs to be updated.
	// - Valid values for ApsaraDB RDS for MySQL and ApsaraDB RDS for SQL Server:
	// - No
	// - Yes
	// - Valid values for ApsaraDB RDS for PostgreSQL:
	// - 0: no
	// - 1: yes
	RequireUpdate string `pulumi:"requireUpdate"`
	// (Available in 1.124.1+) The server certificate that needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	RequireUpdateItem string `pulumi:"requireUpdateItem"`
	// (Available in 1.124.1+) The reason why the server certificate needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	RequireUpdateReason string `pulumi:"requireUpdateReason"`
	// (Available in 1.124.1+) The URL of the CA that issues the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerCaUrl string `pulumi:"serverCaUrl"`
	// (Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerCert string `pulumi:"serverCert"`
	// (Available in 1.124.1+) The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerKey string `pulumi:"serverKey"`
	// (Available in 1.124.1+) The time when the server certificate was created. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is valid only when the CAType parameter is set to aliyun.
	SslCreateTime string `pulumi:"sslCreateTime"`
	// (Available in 1.124.1+) Indicates whether SSL encryption is enabled. Valid values:
	// - on: enabled
	// - off: disabled
	SslEnabled string `pulumi:"sslEnabled"`
	// (Available in 1.124.1+) The time when the server certificate expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	SslExpireTime string `pulumi:"sslExpireTime"`
	// Status of the instance.
	Status string `pulumi:"status"`
	// If a temporary instance is attached to the current instance, the ID of the temporary instance applies.
	TempInstanceId string `pulumi:"tempInstanceId"`
	// Used to retrieve instances belong to specified VPC.
	VpcId string `pulumi:"vpcId"`
	// Used to retrieve instances belong to specified `vswitch` resources.
	VswitchId string `pulumi:"vswitchId"`
	// (Available in 1.101.0+) The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveA string `pulumi:"zoneIdSlaveA"`
	// (Available in 1.101.0+) The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveB string `pulumi:"zoneIdSlaveB"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// (Available in 1.124.1+) The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringInput `pulumi:"acl"`
	// Availability zone.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	// (Available in 1.124.1+) The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringInput `pulumi:"caType"`
	// Billing method. Value options: `Postpaid` for Pay-As-You-Go and `Prepaid` for subscription.
	ChargeType pulumi.StringInput `pulumi:"chargeType"`
	// (Available in 1.124.1+) The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ClientCaCert           pulumi.StringInput `pulumi:"clientCaCert"`
	ClientCaCertExpireTime pulumi.StringInput `pulumi:"clientCaCertExpireTime"`
	// (Available in 1.124.1+) The certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ClientCertRevocationList pulumi.StringInput `pulumi:"clientCertRevocationList"`
	// `Standard` for standard access mode and `Safe` for high security access mode.
	ConnectionMode pulumi.StringInput `pulumi:"connectionMode"`
	// (Available in 1.70.3+) RDS database connection string.
	ConnectionString pulumi.StringInput `pulumi:"connectionString"`
	// Creation time of the instance.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// (Available in 1.124.3+) The creator of the encryption key.
	Creator pulumi.StringInput `pulumi:"creator"`
	// (Available in 1.70.3+) The storage type of the instance.
	DbInstanceStorageType pulumi.StringInput `pulumi:"dbInstanceStorageType"`
	// `Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.
	DbType pulumi.StringInput `pulumi:"dbType"`
	// (Available in 1.124.3+) The estimated time when the encryption key will be deleted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	DeleteDate pulumi.StringInput `pulumi:"deleteDate"`
	// (Available in 1.124.3+) The description of the encryption key.
	Description pulumi.StringInput `pulumi:"description"`
	// (Available in 1.124.3+) The ID of the encryption key.
	EncryptionKey pulumi.StringInput `pulumi:"encryptionKey"`
	// (Available in 1.124.3+) The status of the encryption key. Valid values:
	// - Enabled
	// - Disabled
	EncryptionKeyStatus pulumi.StringInput `pulumi:"encryptionKeyStatus"`
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Database version.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// Expiration time. Pay-As-You-Go instances never expire.
	ExpireTime pulumi.StringInput `pulumi:"expireTime"`
	// If a disaster recovery instance is attached to the current instance, the ID of the disaster recovery instance applies.
	GuardInstanceId pulumi.StringInput `pulumi:"guardInstanceId"`
	// The ID of the RDS instance.
	Id pulumi.StringInput `pulumi:"id"`
	// (Available in 1.70.3+) User-defined DB instance storage space.
	InstanceStorage pulumi.IntInput `pulumi:"instanceStorage"`
	// Sizing of the RDS instance.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// (Available in 1.124.3+) The purpose of the encryption key.
	KeyUsage pulumi.StringInput `pulumi:"keyUsage"`
	// (Available in 1.124.1+) The status of the SSL link. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - success
	// - setting
	// - failed
	LastModifyStatus pulumi.StringInput `pulumi:"lastModifyStatus"`
	// ID of the primary instance. If this parameter is not returned, the current instance is a primary instance.
	MasterInstanceId pulumi.StringInput `pulumi:"masterInstanceId"`
	// (Available in 1.101.0+) The master zone of the instance.
	MasterZone pulumi.StringInput `pulumi:"masterZone"`
	// (Available in 1.124.3+) The time when the encryption key expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	MaterialExpireTime pulumi.StringInput `pulumi:"materialExpireTime"`
	// (Available in 1.124.1+) The reason why the SSL link stays in the current state. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ModifyStatusReason pulumi.StringInput `pulumi:"modifyStatusReason"`
	// The name of the RDS instance.
	Name pulumi.StringInput `pulumi:"name"`
	// `Internet` for public network or `Intranet` for private network.
	NetType pulumi.StringInput `pulumi:"netType"`
	// (Available in 1.124.3+) The source of the encryption key.
	Origin pulumi.StringInput `pulumi:"origin"`
	// (Available in 1.135.0+) Parameter list.
	Parameters GetInstancesInstanceParameterArrayInput `pulumi:"parameters"`
	// (Available in 1.70.3+) RDS database connection port.
	Port pulumi.StringInput `pulumi:"port"`
	// A list of IDs of read-only instances attached to the primary instance.
	ReadonlyInstanceIds pulumi.StringArrayInput `pulumi:"readonlyInstanceIds"`
	// Region ID the instance belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// (Available in 1.124.1+) The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	ReplicationAcl pulumi.StringInput `pulumi:"replicationAcl"`
	// (Available in 1.124.1+) Indicates whether the server certificate needs to be updated.
	// - Valid values for ApsaraDB RDS for MySQL and ApsaraDB RDS for SQL Server:
	// - No
	// - Yes
	// - Valid values for ApsaraDB RDS for PostgreSQL:
	// - 0: no
	// - 1: yes
	RequireUpdate pulumi.StringInput `pulumi:"requireUpdate"`
	// (Available in 1.124.1+) The server certificate that needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	RequireUpdateItem pulumi.StringInput `pulumi:"requireUpdateItem"`
	// (Available in 1.124.1+) The reason why the server certificate needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	RequireUpdateReason pulumi.StringInput `pulumi:"requireUpdateReason"`
	// (Available in 1.124.1+) The URL of the CA that issues the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerCaUrl pulumi.StringInput `pulumi:"serverCaUrl"`
	// (Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerCert pulumi.StringInput `pulumi:"serverCert"`
	// (Available in 1.124.1+) The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.
	ServerKey pulumi.StringInput `pulumi:"serverKey"`
	// (Available in 1.124.1+) The time when the server certificate was created. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is valid only when the CAType parameter is set to aliyun.
	SslCreateTime pulumi.StringInput `pulumi:"sslCreateTime"`
	// (Available in 1.124.1+) Indicates whether SSL encryption is enabled. Valid values:
	// - on: enabled
	// - off: disabled
	SslEnabled pulumi.StringInput `pulumi:"sslEnabled"`
	// (Available in 1.124.1+) The time when the server certificate expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	SslExpireTime pulumi.StringInput `pulumi:"sslExpireTime"`
	// Status of the instance.
	Status pulumi.StringInput `pulumi:"status"`
	// If a temporary instance is attached to the current instance, the ID of the temporary instance applies.
	TempInstanceId pulumi.StringInput `pulumi:"tempInstanceId"`
	// Used to retrieve instances belong to specified VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Used to retrieve instances belong to specified `vswitch` resources.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
	// (Available in 1.101.0+) The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveA pulumi.StringInput `pulumi:"zoneIdSlaveA"`
	// (Available in 1.101.0+) The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveB pulumi.StringInput `pulumi:"zoneIdSlaveB"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) Acl added in v3.3.0

(Available in 1.124.1+) The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values: - cert - perfer - verify-ca - verify-full (supported only when the instance runs PostgreSQL 12 or later)

func (GetInstancesInstanceOutput) AvailabilityZone

func (o GetInstancesInstanceOutput) AvailabilityZone() pulumi.StringOutput

Availability zone.

func (GetInstancesInstanceOutput) CaType added in v3.3.0

(Available in 1.124.1+) The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values: - aliyun: a cloud certificate - custom: a custom certificate

func (GetInstancesInstanceOutput) ChargeType

Billing method. Value options: `Postpaid` for Pay-As-You-Go and `Prepaid` for subscription.

func (GetInstancesInstanceOutput) ClientCaCert added in v3.3.0

(Available in 1.124.1+) The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) ClientCaCertExpireTime added in v3.3.0

func (o GetInstancesInstanceOutput) ClientCaCertExpireTime() pulumi.StringOutput

func (GetInstancesInstanceOutput) ClientCertRevocationList added in v3.3.0

func (o GetInstancesInstanceOutput) ClientCertRevocationList() pulumi.StringOutput

(Available in 1.124.1+) The certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) ConnectionMode

func (o GetInstancesInstanceOutput) ConnectionMode() pulumi.StringOutput

`Standard` for standard access mode and `Safe` for high security access mode.

func (GetInstancesInstanceOutput) ConnectionString

func (o GetInstancesInstanceOutput) ConnectionString() pulumi.StringOutput

(Available in 1.70.3+) RDS database connection string.

func (GetInstancesInstanceOutput) CreateTime

Creation time of the instance.

func (GetInstancesInstanceOutput) Creator added in v3.3.0

(Available in 1.124.3+) The creator of the encryption key.

func (GetInstancesInstanceOutput) DbInstanceStorageType

func (o GetInstancesInstanceOutput) DbInstanceStorageType() pulumi.StringOutput

(Available in 1.70.3+) The storage type of the instance.

func (GetInstancesInstanceOutput) DbType

`Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.

func (GetInstancesInstanceOutput) DeleteDate added in v3.3.0

(Available in 1.124.3+) The estimated time when the encryption key will be deleted. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetInstancesInstanceOutput) Description added in v3.3.0

(Available in 1.124.3+) The description of the encryption key.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) EncryptionKey added in v3.3.0

(Available in 1.124.3+) The ID of the encryption key.

func (GetInstancesInstanceOutput) EncryptionKeyStatus added in v3.3.0

func (o GetInstancesInstanceOutput) EncryptionKeyStatus() pulumi.StringOutput

(Available in 1.124.3+) The status of the encryption key. Valid values: - Enabled - Disabled

func (GetInstancesInstanceOutput) Engine

Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.

func (GetInstancesInstanceOutput) EngineVersion

Database version.

func (GetInstancesInstanceOutput) ExpireTime

Expiration time. Pay-As-You-Go instances never expire.

func (GetInstancesInstanceOutput) GuardInstanceId

func (o GetInstancesInstanceOutput) GuardInstanceId() pulumi.StringOutput

If a disaster recovery instance is attached to the current instance, the ID of the disaster recovery instance applies.

func (GetInstancesInstanceOutput) Id

The ID of the RDS instance.

func (GetInstancesInstanceOutput) InstanceStorage

func (o GetInstancesInstanceOutput) InstanceStorage() pulumi.IntOutput

(Available in 1.70.3+) User-defined DB instance storage space.

func (GetInstancesInstanceOutput) InstanceType

Sizing of the RDS instance.

func (GetInstancesInstanceOutput) KeyUsage added in v3.3.0

(Available in 1.124.3+) The purpose of the encryption key.

func (GetInstancesInstanceOutput) LastModifyStatus added in v3.3.0

func (o GetInstancesInstanceOutput) LastModifyStatus() pulumi.StringOutput

(Available in 1.124.1+) The status of the SSL link. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values: - success - setting - failed

func (GetInstancesInstanceOutput) MasterInstanceId

func (o GetInstancesInstanceOutput) MasterInstanceId() pulumi.StringOutput

ID of the primary instance. If this parameter is not returned, the current instance is a primary instance.

func (GetInstancesInstanceOutput) MasterZone

(Available in 1.101.0+) The master zone of the instance.

func (GetInstancesInstanceOutput) MaterialExpireTime added in v3.3.0

func (o GetInstancesInstanceOutput) MaterialExpireTime() pulumi.StringOutput

(Available in 1.124.3+) The time when the encryption key expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetInstancesInstanceOutput) ModifyStatusReason added in v3.3.0

func (o GetInstancesInstanceOutput) ModifyStatusReason() pulumi.StringOutput

(Available in 1.124.1+) The reason why the SSL link stays in the current state. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) Name

The name of the RDS instance.

func (GetInstancesInstanceOutput) NetType

`Internet` for public network or `Intranet` for private network.

func (GetInstancesInstanceOutput) Origin added in v3.3.0

(Available in 1.124.3+) The source of the encryption key.

func (GetInstancesInstanceOutput) Parameters added in v3.8.0

(Available in 1.135.0+) Parameter list.

func (GetInstancesInstanceOutput) Port

(Available in 1.70.3+) RDS database connection port.

func (GetInstancesInstanceOutput) ReadonlyInstanceIds

func (o GetInstancesInstanceOutput) ReadonlyInstanceIds() pulumi.StringArrayOutput

A list of IDs of read-only instances attached to the primary instance.

func (GetInstancesInstanceOutput) RegionId

Region ID the instance belongs to.

func (GetInstancesInstanceOutput) ReplicationAcl added in v3.3.0

func (o GetInstancesInstanceOutput) ReplicationAcl() pulumi.StringOutput

(Available in 1.124.1+) The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values: - cert - perfer - verify-ca - verify-full (supported only when the instance runs PostgreSQL 12 or later)

func (GetInstancesInstanceOutput) RequireUpdate added in v3.3.0

(Available in 1.124.1+) Indicates whether the server certificate needs to be updated. - Valid values for ApsaraDB RDS for MySQL and ApsaraDB RDS for SQL Server: - No - Yes - Valid values for ApsaraDB RDS for PostgreSQL: - 0: no - 1: yes

func (GetInstancesInstanceOutput) RequireUpdateItem added in v3.3.0

func (o GetInstancesInstanceOutput) RequireUpdateItem() pulumi.StringOutput

(Available in 1.124.1+) The server certificate that needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) RequireUpdateReason added in v3.3.0

func (o GetInstancesInstanceOutput) RequireUpdateReason() pulumi.StringOutput

(Available in 1.124.1+) The reason why the server certificate needs to be updated. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) ServerCaUrl added in v3.3.0

(Available in 1.124.1+) The URL of the CA that issues the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) ServerCert added in v3.3.0

(Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) ServerKey added in v3.3.0

(Available in 1.124.1+) The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs.

func (GetInstancesInstanceOutput) SslCreateTime added in v3.3.0

(Available in 1.124.1+) The time when the server certificate was created. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is valid only when the CAType parameter is set to aliyun.

func (GetInstancesInstanceOutput) SslEnabled added in v3.3.0

(Available in 1.124.1+) Indicates whether SSL encryption is enabled. Valid values: - on: enabled - off: disabled

func (GetInstancesInstanceOutput) SslExpireTime added in v3.3.0

(Available in 1.124.1+) The time when the server certificate expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetInstancesInstanceOutput) Status

Status of the instance.

func (GetInstancesInstanceOutput) TempInstanceId

func (o GetInstancesInstanceOutput) TempInstanceId() pulumi.StringOutput

If a temporary instance is attached to the current instance, the ID of the temporary instance applies.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) VpcId

Used to retrieve instances belong to specified VPC.

func (GetInstancesInstanceOutput) VswitchId

Used to retrieve instances belong to specified `vswitch` resources.

func (GetInstancesInstanceOutput) ZoneIdSlaveA

(Available in 1.101.0+) The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.

func (GetInstancesInstanceOutput) ZoneIdSlaveB

(Available in 1.101.0+) The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.

type GetInstancesInstanceParameter added in v3.8.0

type GetInstancesInstanceParameter struct {
	// The value range of the parameter.
	CheckingCode string `pulumi:"checkingCode"`
	// Indicates whether the parameter can be modified. Valid values: true | false
	ForceModify string `pulumi:"forceModify"`
	// Indicates whether the modified parameter takes effect only after a database restart. Valid values: true | false
	ForceRestart string `pulumi:"forceRestart"`
	// The description of the parameter.
	ParameterDescription string `pulumi:"parameterDescription"`
	// The name of the parameter.
	ParameterName string `pulumi:"parameterName"`
	// The default value of the parameter.
	ParameterValue string `pulumi:"parameterValue"`
}

type GetInstancesInstanceParameterArgs added in v3.8.0

type GetInstancesInstanceParameterArgs struct {
	// The value range of the parameter.
	CheckingCode pulumi.StringInput `pulumi:"checkingCode"`
	// Indicates whether the parameter can be modified. Valid values: true | false
	ForceModify pulumi.StringInput `pulumi:"forceModify"`
	// Indicates whether the modified parameter takes effect only after a database restart. Valid values: true | false
	ForceRestart pulumi.StringInput `pulumi:"forceRestart"`
	// The description of the parameter.
	ParameterDescription pulumi.StringInput `pulumi:"parameterDescription"`
	// The name of the parameter.
	ParameterName pulumi.StringInput `pulumi:"parameterName"`
	// The default value of the parameter.
	ParameterValue pulumi.StringInput `pulumi:"parameterValue"`
}

func (GetInstancesInstanceParameterArgs) ElementType added in v3.8.0

func (GetInstancesInstanceParameterArgs) ToGetInstancesInstanceParameterOutput added in v3.8.0

func (i GetInstancesInstanceParameterArgs) ToGetInstancesInstanceParameterOutput() GetInstancesInstanceParameterOutput

func (GetInstancesInstanceParameterArgs) ToGetInstancesInstanceParameterOutputWithContext added in v3.8.0

func (i GetInstancesInstanceParameterArgs) ToGetInstancesInstanceParameterOutputWithContext(ctx context.Context) GetInstancesInstanceParameterOutput

type GetInstancesInstanceParameterArray added in v3.8.0

type GetInstancesInstanceParameterArray []GetInstancesInstanceParameterInput

func (GetInstancesInstanceParameterArray) ElementType added in v3.8.0

func (GetInstancesInstanceParameterArray) ToGetInstancesInstanceParameterArrayOutput added in v3.8.0

func (i GetInstancesInstanceParameterArray) ToGetInstancesInstanceParameterArrayOutput() GetInstancesInstanceParameterArrayOutput

func (GetInstancesInstanceParameterArray) ToGetInstancesInstanceParameterArrayOutputWithContext added in v3.8.0

func (i GetInstancesInstanceParameterArray) ToGetInstancesInstanceParameterArrayOutputWithContext(ctx context.Context) GetInstancesInstanceParameterArrayOutput

type GetInstancesInstanceParameterArrayInput added in v3.8.0

type GetInstancesInstanceParameterArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceParameterArrayOutput() GetInstancesInstanceParameterArrayOutput
	ToGetInstancesInstanceParameterArrayOutputWithContext(context.Context) GetInstancesInstanceParameterArrayOutput
}

GetInstancesInstanceParameterArrayInput is an input type that accepts GetInstancesInstanceParameterArray and GetInstancesInstanceParameterArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceParameterArrayInput` via:

GetInstancesInstanceParameterArray{ GetInstancesInstanceParameterArgs{...} }

type GetInstancesInstanceParameterArrayOutput added in v3.8.0

type GetInstancesInstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceParameterArrayOutput) ElementType added in v3.8.0

func (GetInstancesInstanceParameterArrayOutput) Index added in v3.8.0

func (GetInstancesInstanceParameterArrayOutput) ToGetInstancesInstanceParameterArrayOutput added in v3.8.0

func (o GetInstancesInstanceParameterArrayOutput) ToGetInstancesInstanceParameterArrayOutput() GetInstancesInstanceParameterArrayOutput

func (GetInstancesInstanceParameterArrayOutput) ToGetInstancesInstanceParameterArrayOutputWithContext added in v3.8.0

func (o GetInstancesInstanceParameterArrayOutput) ToGetInstancesInstanceParameterArrayOutputWithContext(ctx context.Context) GetInstancesInstanceParameterArrayOutput

type GetInstancesInstanceParameterInput added in v3.8.0

type GetInstancesInstanceParameterInput interface {
	pulumi.Input

	ToGetInstancesInstanceParameterOutput() GetInstancesInstanceParameterOutput
	ToGetInstancesInstanceParameterOutputWithContext(context.Context) GetInstancesInstanceParameterOutput
}

GetInstancesInstanceParameterInput is an input type that accepts GetInstancesInstanceParameterArgs and GetInstancesInstanceParameterOutput values. You can construct a concrete instance of `GetInstancesInstanceParameterInput` via:

GetInstancesInstanceParameterArgs{...}

type GetInstancesInstanceParameterOutput added in v3.8.0

type GetInstancesInstanceParameterOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceParameterOutput) CheckingCode added in v3.8.0

The value range of the parameter.

func (GetInstancesInstanceParameterOutput) ElementType added in v3.8.0

func (GetInstancesInstanceParameterOutput) ForceModify added in v3.8.0

Indicates whether the parameter can be modified. Valid values: true | false

func (GetInstancesInstanceParameterOutput) ForceRestart added in v3.8.0

Indicates whether the modified parameter takes effect only after a database restart. Valid values: true | false

func (GetInstancesInstanceParameterOutput) ParameterDescription added in v3.8.0

func (o GetInstancesInstanceParameterOutput) ParameterDescription() pulumi.StringOutput

The description of the parameter.

func (GetInstancesInstanceParameterOutput) ParameterName added in v3.8.0

The name of the parameter.

func (GetInstancesInstanceParameterOutput) ParameterValue added in v3.8.0

The default value of the parameter.

func (GetInstancesInstanceParameterOutput) ToGetInstancesInstanceParameterOutput added in v3.8.0

func (o GetInstancesInstanceParameterOutput) ToGetInstancesInstanceParameterOutput() GetInstancesInstanceParameterOutput

func (GetInstancesInstanceParameterOutput) ToGetInstancesInstanceParameterOutputWithContext added in v3.8.0

func (o GetInstancesInstanceParameterOutput) ToGetInstancesInstanceParameterOutputWithContext(ctx context.Context) GetInstancesInstanceParameterOutput

type GetInstancesOutputArgs added in v3.9.0

type GetInstancesOutputArgs struct {
	// `Standard` for standard access mode and `Safe` for high security access mode.
	ConnectionMode pulumi.StringPtrInput `pulumi:"connectionMode"`
	// `Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.
	DbType pulumi.StringPtrInput `pulumi:"dbType"`
	// Default to `false`. Set it to `true` can output parameter template about resource attributes.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// A list of RDS instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// A regex string to filter results by instance name.
	NameRegex  pulumi.StringPtrInput `pulumi:"nameRegex"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// Status of the instance.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A map of tags assigned to the DB instances.
	// Note: Before 1.60.0, the value's format is a `json` string which including `TagKey` and `TagValue`. `TagKey` cannot be null, and `TagValue` can be empty. Format example `"{\"key1\":\"value1\"}"`
	Tags pulumi.MapInput `pulumi:"tags"`
	// Used to retrieve instances belong to specified VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// Used to retrieve instances belong to specified `vswitch` resources.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType added in v3.9.0

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	// `Standard` for standard access mode and `Safe` for high security access mode.
	ConnectionMode *string `pulumi:"connectionMode"`
	// `Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.
	DbType        *string `pulumi:"dbType"`
	EnableDetails *bool   `pulumi:"enableDetails"`
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.
	Engine *string `pulumi:"engine"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of RDS instance IDs.
	Ids []string `pulumi:"ids"`
	// A list of RDS instances. Each element contains the following attributes:
	Instances []GetInstancesInstance `pulumi:"instances"`
	NameRegex *string                `pulumi:"nameRegex"`
	// A list of RDS instance names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// Status of the instance.
	Status *string                `pulumi:"status"`
	Tags   map[string]interface{} `pulumi:"tags"`
	// ID of the VPC the instance belongs to.
	VpcId *string `pulumi:"vpcId"`
	// ID of the VSwitch the instance belongs to.
	VswitchId *string `pulumi:"vswitchId"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

The `rds.getInstances` data source provides a collection of RDS instances available in Alibaba Cloud account. Filters support regular expression for the instance name, searches by tags, and other filters which are listed below.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "data-\\d+"
		opt1 := "Running"
		dbInstancesDs, err := rds.GetInstances(ctx, &rds.GetInstancesArgs{
			NameRegex: &opt0,
			Status:    &opt1,
			Tags: map[string]interface{}{
				"size": "tiny",
				"type": "database",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstDbInstanceId", dbInstancesDs.Instances[0].Id)
		return nil
	})
}

```

type GetInstancesResultOutput added in v3.9.0

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func GetInstancesOutput added in v3.9.0

func GetInstancesOutput(ctx *pulumi.Context, args GetInstancesOutputArgs, opts ...pulumi.InvokeOption) GetInstancesResultOutput

func (GetInstancesResultOutput) ConnectionMode added in v3.9.0

func (o GetInstancesResultOutput) ConnectionMode() pulumi.StringPtrOutput

`Standard` for standard access mode and `Safe` for high security access mode.

func (GetInstancesResultOutput) DbType added in v3.9.0

`Primary` for primary instance, `Readonly` for read-only instance, `Guard` for disaster recovery instance, and `Temp` for temporary instance.

func (GetInstancesResultOutput) ElementType added in v3.9.0

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) EnableDetails added in v3.9.0

func (o GetInstancesResultOutput) EnableDetails() pulumi.BoolPtrOutput

func (GetInstancesResultOutput) Engine added in v3.9.0

Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL` and `PPAS`. If no value is specified, all types are returned.

func (GetInstancesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids added in v3.9.0

A list of RDS instance IDs.

func (GetInstancesResultOutput) Instances added in v3.9.0

A list of RDS instances. Each element contains the following attributes:

func (GetInstancesResultOutput) NameRegex added in v3.9.0

func (GetInstancesResultOutput) Names added in v3.9.0

A list of RDS instance names.

func (GetInstancesResultOutput) OutputFile added in v3.9.0

func (GetInstancesResultOutput) Status added in v3.9.0

Status of the instance.

func (GetInstancesResultOutput) Tags added in v3.9.0

func (GetInstancesResultOutput) ToGetInstancesResultOutput added in v3.9.0

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext added in v3.9.0

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

func (GetInstancesResultOutput) VpcId added in v3.9.0

ID of the VPC the instance belongs to.

func (GetInstancesResultOutput) VswitchId added in v3.9.0

ID of the VSwitch the instance belongs to.

type GetRdsBackupsArgs added in v3.13.0

type GetRdsBackupsArgs struct {
	// BackupMode.
	BackupMode *string `pulumi:"backupMode"`
	// Backup task status. **NOTE:** This parameter will only be returned when a task is executed. Value:
	// * **NoStart**: Not started
	// * **Checking**: check the backup
	// * **Preparing**: Prepare a backup
	// * **Waiting**: Waiting for backup
	// * **Uploading**: Upload backup
	// * **Finished**: Complete backup
	// * **Failed**: backup Failed
	BackupStatus *string `pulumi:"backupStatus"`
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The end time.
	EndTime *string `pulumi:"endTime"`
	// A list of Backup IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// The start time.
	StartTime *string `pulumi:"startTime"`
}

A collection of arguments for invoking getRdsBackups.

type GetRdsBackupsBackup added in v3.13.0

type GetRdsBackupsBackup struct {
	// The backup download url.
	BackupDownloadUrl string `pulumi:"backupDownloadUrl"`
	// BackupEndTime.
	BackupEndTime string `pulumi:"backupEndTime"`
	// BackupId.
	BackupId string `pulumi:"backupId"`
	// The initiator of the backup task. Value:
	// * **System**: automatically initiated by the System
	// * **User**: manually initiated by the User.
	BackupInitiator string `pulumi:"backupInitiator"`
	// The backup intranet download url.
	BackupIntranetDownloadUrl string `pulumi:"backupIntranetDownloadUrl"`
	// BackupMethod.
	BackupMethod string `pulumi:"backupMethod"`
	// BackupMode.
	BackupMode string `pulumi:"backupMode"`
	// BackupSize.
	BackupSize string `pulumi:"backupSize"`
	// BackupStartTime.
	BackupStartTime string `pulumi:"backupStartTime"`
	// Backup task status. **NOTE:** This parameter will only be returned when a task is executed. Value:
	// * **NoStart**: Not started
	// * **Checking**: check the backup
	// * **Preparing**: Prepare a backup
	// * **Waiting**: Waiting for backup
	// * **Uploading**: Upload backup
	// * **Finished**: Complete backup
	// * **Failed**: backup Failed
	BackupStatus string `pulumi:"backupStatus"`
	// BackupType.
	BackupType string `pulumi:"backupType"`
	// The consistency point of the backup set. The return value is a timestamp. **NOTE:** only MySQL 5.6 returns this parameter, and other versions return 0.
	ConsistentTime string `pulumi:"consistentTime"`
	// The backup mode is divided into the normal backup mode (full and incremental recovery is supported) and the replication-only mode (full recovery is supported only). **NOTE:** Only SQL Server returns this parameter. Valid values:
	// * **0**: General Backup Mode
	// * **1**: Copy only mode
	CopyOnlyBackup string `pulumi:"copyOnlyBackup"`
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The encrypted information of the backup set.
	Encryption string `pulumi:"encryption"`
	// HostInstanceID.
	HostInstanceId string `pulumi:"hostInstanceId"`
	// The ID of the Backup.
	Id string `pulumi:"id"`
	// Whether the backup set is available, the value is:
	// * **0**: Not available
	// * **1**: Available.
	IsAvail int `pulumi:"isAvail"`
	// The backup set status of the database table. **NOTE:** an empty string indicates that the backup set for database table recovery is not enabled. Valid values:
	// * **OK**: normal.
	// * **LARGE**: There are too many tables that cannot be used for database and table recovery.
	// * **EMPTY**: The backup set that failed to be backed up.
	MetaStatus string `pulumi:"metaStatus"`
	// The storage medium for the backup set. Valid values:
	// * **0**: Regular storage
	// * **1**: Archive storage.
	StorageClass string `pulumi:"storageClass"`
	// StoreStatus.
	StoreStatus string `pulumi:"storeStatus"`
}

type GetRdsBackupsBackupArgs added in v3.13.0

type GetRdsBackupsBackupArgs struct {
	// The backup download url.
	BackupDownloadUrl pulumi.StringInput `pulumi:"backupDownloadUrl"`
	// BackupEndTime.
	BackupEndTime pulumi.StringInput `pulumi:"backupEndTime"`
	// BackupId.
	BackupId pulumi.StringInput `pulumi:"backupId"`
	// The initiator of the backup task. Value:
	// * **System**: automatically initiated by the System
	// * **User**: manually initiated by the User.
	BackupInitiator pulumi.StringInput `pulumi:"backupInitiator"`
	// The backup intranet download url.
	BackupIntranetDownloadUrl pulumi.StringInput `pulumi:"backupIntranetDownloadUrl"`
	// BackupMethod.
	BackupMethod pulumi.StringInput `pulumi:"backupMethod"`
	// BackupMode.
	BackupMode pulumi.StringInput `pulumi:"backupMode"`
	// BackupSize.
	BackupSize pulumi.StringInput `pulumi:"backupSize"`
	// BackupStartTime.
	BackupStartTime pulumi.StringInput `pulumi:"backupStartTime"`
	// Backup task status. **NOTE:** This parameter will only be returned when a task is executed. Value:
	// * **NoStart**: Not started
	// * **Checking**: check the backup
	// * **Preparing**: Prepare a backup
	// * **Waiting**: Waiting for backup
	// * **Uploading**: Upload backup
	// * **Finished**: Complete backup
	// * **Failed**: backup Failed
	BackupStatus pulumi.StringInput `pulumi:"backupStatus"`
	// BackupType.
	BackupType pulumi.StringInput `pulumi:"backupType"`
	// The consistency point of the backup set. The return value is a timestamp. **NOTE:** only MySQL 5.6 returns this parameter, and other versions return 0.
	ConsistentTime pulumi.StringInput `pulumi:"consistentTime"`
	// The backup mode is divided into the normal backup mode (full and incremental recovery is supported) and the replication-only mode (full recovery is supported only). **NOTE:** Only SQL Server returns this parameter. Valid values:
	// * **0**: General Backup Mode
	// * **1**: Copy only mode
	CopyOnlyBackup pulumi.StringInput `pulumi:"copyOnlyBackup"`
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The encrypted information of the backup set.
	Encryption pulumi.StringInput `pulumi:"encryption"`
	// HostInstanceID.
	HostInstanceId pulumi.StringInput `pulumi:"hostInstanceId"`
	// The ID of the Backup.
	Id pulumi.StringInput `pulumi:"id"`
	// Whether the backup set is available, the value is:
	// * **0**: Not available
	// * **1**: Available.
	IsAvail pulumi.IntInput `pulumi:"isAvail"`
	// The backup set status of the database table. **NOTE:** an empty string indicates that the backup set for database table recovery is not enabled. Valid values:
	// * **OK**: normal.
	// * **LARGE**: There are too many tables that cannot be used for database and table recovery.
	// * **EMPTY**: The backup set that failed to be backed up.
	MetaStatus pulumi.StringInput `pulumi:"metaStatus"`
	// The storage medium for the backup set. Valid values:
	// * **0**: Regular storage
	// * **1**: Archive storage.
	StorageClass pulumi.StringInput `pulumi:"storageClass"`
	// StoreStatus.
	StoreStatus pulumi.StringInput `pulumi:"storeStatus"`
}

func (GetRdsBackupsBackupArgs) ElementType added in v3.13.0

func (GetRdsBackupsBackupArgs) ElementType() reflect.Type

func (GetRdsBackupsBackupArgs) ToGetRdsBackupsBackupOutput added in v3.13.0

func (i GetRdsBackupsBackupArgs) ToGetRdsBackupsBackupOutput() GetRdsBackupsBackupOutput

func (GetRdsBackupsBackupArgs) ToGetRdsBackupsBackupOutputWithContext added in v3.13.0

func (i GetRdsBackupsBackupArgs) ToGetRdsBackupsBackupOutputWithContext(ctx context.Context) GetRdsBackupsBackupOutput

type GetRdsBackupsBackupArray added in v3.13.0

type GetRdsBackupsBackupArray []GetRdsBackupsBackupInput

func (GetRdsBackupsBackupArray) ElementType added in v3.13.0

func (GetRdsBackupsBackupArray) ElementType() reflect.Type

func (GetRdsBackupsBackupArray) ToGetRdsBackupsBackupArrayOutput added in v3.13.0

func (i GetRdsBackupsBackupArray) ToGetRdsBackupsBackupArrayOutput() GetRdsBackupsBackupArrayOutput

func (GetRdsBackupsBackupArray) ToGetRdsBackupsBackupArrayOutputWithContext added in v3.13.0

func (i GetRdsBackupsBackupArray) ToGetRdsBackupsBackupArrayOutputWithContext(ctx context.Context) GetRdsBackupsBackupArrayOutput

type GetRdsBackupsBackupArrayInput added in v3.13.0

type GetRdsBackupsBackupArrayInput interface {
	pulumi.Input

	ToGetRdsBackupsBackupArrayOutput() GetRdsBackupsBackupArrayOutput
	ToGetRdsBackupsBackupArrayOutputWithContext(context.Context) GetRdsBackupsBackupArrayOutput
}

GetRdsBackupsBackupArrayInput is an input type that accepts GetRdsBackupsBackupArray and GetRdsBackupsBackupArrayOutput values. You can construct a concrete instance of `GetRdsBackupsBackupArrayInput` via:

GetRdsBackupsBackupArray{ GetRdsBackupsBackupArgs{...} }

type GetRdsBackupsBackupArrayOutput added in v3.13.0

type GetRdsBackupsBackupArrayOutput struct{ *pulumi.OutputState }

func (GetRdsBackupsBackupArrayOutput) ElementType added in v3.13.0

func (GetRdsBackupsBackupArrayOutput) Index added in v3.13.0

func (GetRdsBackupsBackupArrayOutput) ToGetRdsBackupsBackupArrayOutput added in v3.13.0

func (o GetRdsBackupsBackupArrayOutput) ToGetRdsBackupsBackupArrayOutput() GetRdsBackupsBackupArrayOutput

func (GetRdsBackupsBackupArrayOutput) ToGetRdsBackupsBackupArrayOutputWithContext added in v3.13.0

func (o GetRdsBackupsBackupArrayOutput) ToGetRdsBackupsBackupArrayOutputWithContext(ctx context.Context) GetRdsBackupsBackupArrayOutput

type GetRdsBackupsBackupInput added in v3.13.0

type GetRdsBackupsBackupInput interface {
	pulumi.Input

	ToGetRdsBackupsBackupOutput() GetRdsBackupsBackupOutput
	ToGetRdsBackupsBackupOutputWithContext(context.Context) GetRdsBackupsBackupOutput
}

GetRdsBackupsBackupInput is an input type that accepts GetRdsBackupsBackupArgs and GetRdsBackupsBackupOutput values. You can construct a concrete instance of `GetRdsBackupsBackupInput` via:

GetRdsBackupsBackupArgs{...}

type GetRdsBackupsBackupOutput added in v3.13.0

type GetRdsBackupsBackupOutput struct{ *pulumi.OutputState }

func (GetRdsBackupsBackupOutput) BackupDownloadUrl added in v3.13.0

func (o GetRdsBackupsBackupOutput) BackupDownloadUrl() pulumi.StringOutput

The backup download url.

func (GetRdsBackupsBackupOutput) BackupEndTime added in v3.13.0

func (o GetRdsBackupsBackupOutput) BackupEndTime() pulumi.StringOutput

BackupEndTime.

func (GetRdsBackupsBackupOutput) BackupId added in v3.13.0

BackupId.

func (GetRdsBackupsBackupOutput) BackupInitiator added in v3.13.0

func (o GetRdsBackupsBackupOutput) BackupInitiator() pulumi.StringOutput

The initiator of the backup task. Value: * **System**: automatically initiated by the System * **User**: manually initiated by the User.

func (GetRdsBackupsBackupOutput) BackupIntranetDownloadUrl added in v3.13.0

func (o GetRdsBackupsBackupOutput) BackupIntranetDownloadUrl() pulumi.StringOutput

The backup intranet download url.

func (GetRdsBackupsBackupOutput) BackupMethod added in v3.13.0

BackupMethod.

func (GetRdsBackupsBackupOutput) BackupMode added in v3.13.0

BackupMode.

func (GetRdsBackupsBackupOutput) BackupSize added in v3.13.0

BackupSize.

func (GetRdsBackupsBackupOutput) BackupStartTime added in v3.13.0

func (o GetRdsBackupsBackupOutput) BackupStartTime() pulumi.StringOutput

BackupStartTime.

func (GetRdsBackupsBackupOutput) BackupStatus added in v3.13.0

Backup task status. **NOTE:** This parameter will only be returned when a task is executed. Value: * **NoStart**: Not started * **Checking**: check the backup * **Preparing**: Prepare a backup * **Waiting**: Waiting for backup * **Uploading**: Upload backup * **Finished**: Complete backup * **Failed**: backup Failed

func (GetRdsBackupsBackupOutput) BackupType added in v3.13.0

BackupType.

func (GetRdsBackupsBackupOutput) ConsistentTime added in v3.13.0

func (o GetRdsBackupsBackupOutput) ConsistentTime() pulumi.StringOutput

The consistency point of the backup set. The return value is a timestamp. **NOTE:** only MySQL 5.6 returns this parameter, and other versions return 0.

func (GetRdsBackupsBackupOutput) CopyOnlyBackup added in v3.13.0

func (o GetRdsBackupsBackupOutput) CopyOnlyBackup() pulumi.StringOutput

The backup mode is divided into the normal backup mode (full and incremental recovery is supported) and the replication-only mode (full recovery is supported only). **NOTE:** Only SQL Server returns this parameter. Valid values: * **0**: General Backup Mode * **1**: Copy only mode

func (GetRdsBackupsBackupOutput) DbInstanceId added in v3.13.0

The db instance id.

func (GetRdsBackupsBackupOutput) ElementType added in v3.13.0

func (GetRdsBackupsBackupOutput) ElementType() reflect.Type

func (GetRdsBackupsBackupOutput) Encryption added in v3.13.0

The encrypted information of the backup set.

func (GetRdsBackupsBackupOutput) HostInstanceId added in v3.13.0

func (o GetRdsBackupsBackupOutput) HostInstanceId() pulumi.StringOutput

HostInstanceID.

func (GetRdsBackupsBackupOutput) Id added in v3.13.0

The ID of the Backup.

func (GetRdsBackupsBackupOutput) IsAvail added in v3.13.0

Whether the backup set is available, the value is: * **0**: Not available * **1**: Available.

func (GetRdsBackupsBackupOutput) MetaStatus added in v3.13.0

The backup set status of the database table. **NOTE:** an empty string indicates that the backup set for database table recovery is not enabled. Valid values: * **OK**: normal. * **LARGE**: There are too many tables that cannot be used for database and table recovery. * **EMPTY**: The backup set that failed to be backed up.

func (GetRdsBackupsBackupOutput) StorageClass added in v3.13.0

The storage medium for the backup set. Valid values: * **0**: Regular storage * **1**: Archive storage.

func (GetRdsBackupsBackupOutput) StoreStatus added in v3.13.0

StoreStatus.

func (GetRdsBackupsBackupOutput) ToGetRdsBackupsBackupOutput added in v3.13.0

func (o GetRdsBackupsBackupOutput) ToGetRdsBackupsBackupOutput() GetRdsBackupsBackupOutput

func (GetRdsBackupsBackupOutput) ToGetRdsBackupsBackupOutputWithContext added in v3.13.0

func (o GetRdsBackupsBackupOutput) ToGetRdsBackupsBackupOutputWithContext(ctx context.Context) GetRdsBackupsBackupOutput

type GetRdsBackupsOutputArgs added in v3.13.0

type GetRdsBackupsOutputArgs struct {
	// BackupMode.
	BackupMode pulumi.StringPtrInput `pulumi:"backupMode"`
	// Backup task status. **NOTE:** This parameter will only be returned when a task is executed. Value:
	// * **NoStart**: Not started
	// * **Checking**: check the backup
	// * **Preparing**: Prepare a backup
	// * **Waiting**: Waiting for backup
	// * **Uploading**: Upload backup
	// * **Finished**: Complete backup
	// * **Failed**: backup Failed
	BackupStatus pulumi.StringPtrInput `pulumi:"backupStatus"`
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The end time.
	EndTime pulumi.StringPtrInput `pulumi:"endTime"`
	// A list of Backup IDs.
	Ids        pulumi.StringArrayInput `pulumi:"ids"`
	OutputFile pulumi.StringPtrInput   `pulumi:"outputFile"`
	// The start time.
	StartTime pulumi.StringPtrInput `pulumi:"startTime"`
}

A collection of arguments for invoking getRdsBackups.

func (GetRdsBackupsOutputArgs) ElementType added in v3.13.0

func (GetRdsBackupsOutputArgs) ElementType() reflect.Type

type GetRdsBackupsResult added in v3.13.0

type GetRdsBackupsResult struct {
	BackupMode   *string               `pulumi:"backupMode"`
	BackupStatus *string               `pulumi:"backupStatus"`
	Backups      []GetRdsBackupsBackup `pulumi:"backups"`
	DbInstanceId string                `pulumi:"dbInstanceId"`
	EndTime      *string               `pulumi:"endTime"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	StartTime  *string  `pulumi:"startTime"`
}

A collection of values returned by getRdsBackups.

func GetRdsBackups added in v3.13.0

func GetRdsBackups(ctx *pulumi.Context, args *GetRdsBackupsArgs, opts ...pulumi.InvokeOption) (*GetRdsBackupsResult, error)

This data source provides the Rds Backups of the current Alibaba Cloud user.

> **NOTE:** Available in v1.149.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.GetRdsBackups(ctx, &rds.GetRdsBackupsArgs{
			DbInstanceId: "example_value",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsBackupId", example.Backups[0].Id)
		return nil
	})
}

```

type GetRdsBackupsResultOutput added in v3.13.0

type GetRdsBackupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRdsBackups.

func GetRdsBackupsOutput added in v3.13.0

func GetRdsBackupsOutput(ctx *pulumi.Context, args GetRdsBackupsOutputArgs, opts ...pulumi.InvokeOption) GetRdsBackupsResultOutput

func (GetRdsBackupsResultOutput) BackupMode added in v3.13.0

func (GetRdsBackupsResultOutput) BackupStatus added in v3.13.0

func (GetRdsBackupsResultOutput) Backups added in v3.13.0

func (GetRdsBackupsResultOutput) DbInstanceId added in v3.13.0

func (GetRdsBackupsResultOutput) ElementType added in v3.13.0

func (GetRdsBackupsResultOutput) ElementType() reflect.Type

func (GetRdsBackupsResultOutput) EndTime added in v3.13.0

func (GetRdsBackupsResultOutput) Id added in v3.13.0

The provider-assigned unique ID for this managed resource.

func (GetRdsBackupsResultOutput) Ids added in v3.13.0

func (GetRdsBackupsResultOutput) OutputFile added in v3.13.0

func (GetRdsBackupsResultOutput) StartTime added in v3.13.0

func (GetRdsBackupsResultOutput) ToGetRdsBackupsResultOutput added in v3.13.0

func (o GetRdsBackupsResultOutput) ToGetRdsBackupsResultOutput() GetRdsBackupsResultOutput

func (GetRdsBackupsResultOutput) ToGetRdsBackupsResultOutputWithContext added in v3.13.0

func (o GetRdsBackupsResultOutput) ToGetRdsBackupsResultOutputWithContext(ctx context.Context) GetRdsBackupsResultOutput

type GetRdsParameterGroupsArgs

type GetRdsParameterGroupsArgs struct {
	EnableDetails *bool    `pulumi:"enableDetails"`
	Ids           []string `pulumi:"ids"`
	NameRegex     *string  `pulumi:"nameRegex"`
	OutputFile    *string  `pulumi:"outputFile"`
}

A collection of arguments for invoking getRdsParameterGroups.

type GetRdsParameterGroupsGroup

type GetRdsParameterGroupsGroup struct {
	Engine             string                                  `pulumi:"engine"`
	EngineVersion      string                                  `pulumi:"engineVersion"`
	ForceRestart       int                                     `pulumi:"forceRestart"`
	Id                 string                                  `pulumi:"id"`
	ParamCounts        int                                     `pulumi:"paramCounts"`
	ParamDetails       []GetRdsParameterGroupsGroupParamDetail `pulumi:"paramDetails"`
	ParameterGroupDesc string                                  `pulumi:"parameterGroupDesc"`
	ParameterGroupId   string                                  `pulumi:"parameterGroupId"`
	ParameterGroupName string                                  `pulumi:"parameterGroupName"`
	ParameterGroupType int                                     `pulumi:"parameterGroupType"`
}

type GetRdsParameterGroupsGroupArgs

type GetRdsParameterGroupsGroupArgs struct {
	Engine             pulumi.StringInput                              `pulumi:"engine"`
	EngineVersion      pulumi.StringInput                              `pulumi:"engineVersion"`
	ForceRestart       pulumi.IntInput                                 `pulumi:"forceRestart"`
	Id                 pulumi.StringInput                              `pulumi:"id"`
	ParamCounts        pulumi.IntInput                                 `pulumi:"paramCounts"`
	ParamDetails       GetRdsParameterGroupsGroupParamDetailArrayInput `pulumi:"paramDetails"`
	ParameterGroupDesc pulumi.StringInput                              `pulumi:"parameterGroupDesc"`
	ParameterGroupId   pulumi.StringInput                              `pulumi:"parameterGroupId"`
	ParameterGroupName pulumi.StringInput                              `pulumi:"parameterGroupName"`
	ParameterGroupType pulumi.IntInput                                 `pulumi:"parameterGroupType"`
}

func (GetRdsParameterGroupsGroupArgs) ElementType

func (GetRdsParameterGroupsGroupArgs) ToGetRdsParameterGroupsGroupOutput

func (i GetRdsParameterGroupsGroupArgs) ToGetRdsParameterGroupsGroupOutput() GetRdsParameterGroupsGroupOutput

func (GetRdsParameterGroupsGroupArgs) ToGetRdsParameterGroupsGroupOutputWithContext

func (i GetRdsParameterGroupsGroupArgs) ToGetRdsParameterGroupsGroupOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupOutput

type GetRdsParameterGroupsGroupArray

type GetRdsParameterGroupsGroupArray []GetRdsParameterGroupsGroupInput

func (GetRdsParameterGroupsGroupArray) ElementType

func (GetRdsParameterGroupsGroupArray) ToGetRdsParameterGroupsGroupArrayOutput

func (i GetRdsParameterGroupsGroupArray) ToGetRdsParameterGroupsGroupArrayOutput() GetRdsParameterGroupsGroupArrayOutput

func (GetRdsParameterGroupsGroupArray) ToGetRdsParameterGroupsGroupArrayOutputWithContext

func (i GetRdsParameterGroupsGroupArray) ToGetRdsParameterGroupsGroupArrayOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupArrayOutput

type GetRdsParameterGroupsGroupArrayInput

type GetRdsParameterGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetRdsParameterGroupsGroupArrayOutput() GetRdsParameterGroupsGroupArrayOutput
	ToGetRdsParameterGroupsGroupArrayOutputWithContext(context.Context) GetRdsParameterGroupsGroupArrayOutput
}

GetRdsParameterGroupsGroupArrayInput is an input type that accepts GetRdsParameterGroupsGroupArray and GetRdsParameterGroupsGroupArrayOutput values. You can construct a concrete instance of `GetRdsParameterGroupsGroupArrayInput` via:

GetRdsParameterGroupsGroupArray{ GetRdsParameterGroupsGroupArgs{...} }

type GetRdsParameterGroupsGroupArrayOutput

type GetRdsParameterGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetRdsParameterGroupsGroupArrayOutput) ElementType

func (GetRdsParameterGroupsGroupArrayOutput) Index

func (GetRdsParameterGroupsGroupArrayOutput) ToGetRdsParameterGroupsGroupArrayOutput

func (o GetRdsParameterGroupsGroupArrayOutput) ToGetRdsParameterGroupsGroupArrayOutput() GetRdsParameterGroupsGroupArrayOutput

func (GetRdsParameterGroupsGroupArrayOutput) ToGetRdsParameterGroupsGroupArrayOutputWithContext

func (o GetRdsParameterGroupsGroupArrayOutput) ToGetRdsParameterGroupsGroupArrayOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupArrayOutput

type GetRdsParameterGroupsGroupInput

type GetRdsParameterGroupsGroupInput interface {
	pulumi.Input

	ToGetRdsParameterGroupsGroupOutput() GetRdsParameterGroupsGroupOutput
	ToGetRdsParameterGroupsGroupOutputWithContext(context.Context) GetRdsParameterGroupsGroupOutput
}

GetRdsParameterGroupsGroupInput is an input type that accepts GetRdsParameterGroupsGroupArgs and GetRdsParameterGroupsGroupOutput values. You can construct a concrete instance of `GetRdsParameterGroupsGroupInput` via:

GetRdsParameterGroupsGroupArgs{...}

type GetRdsParameterGroupsGroupOutput

type GetRdsParameterGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetRdsParameterGroupsGroupOutput) ElementType

func (GetRdsParameterGroupsGroupOutput) Engine

func (GetRdsParameterGroupsGroupOutput) EngineVersion

func (GetRdsParameterGroupsGroupOutput) ForceRestart

func (GetRdsParameterGroupsGroupOutput) Id

func (GetRdsParameterGroupsGroupOutput) ParamCounts

func (GetRdsParameterGroupsGroupOutput) ParamDetails

func (GetRdsParameterGroupsGroupOutput) ParameterGroupDesc

func (o GetRdsParameterGroupsGroupOutput) ParameterGroupDesc() pulumi.StringOutput

func (GetRdsParameterGroupsGroupOutput) ParameterGroupId

func (GetRdsParameterGroupsGroupOutput) ParameterGroupName

func (o GetRdsParameterGroupsGroupOutput) ParameterGroupName() pulumi.StringOutput

func (GetRdsParameterGroupsGroupOutput) ParameterGroupType

func (o GetRdsParameterGroupsGroupOutput) ParameterGroupType() pulumi.IntOutput

func (GetRdsParameterGroupsGroupOutput) ToGetRdsParameterGroupsGroupOutput

func (o GetRdsParameterGroupsGroupOutput) ToGetRdsParameterGroupsGroupOutput() GetRdsParameterGroupsGroupOutput

func (GetRdsParameterGroupsGroupOutput) ToGetRdsParameterGroupsGroupOutputWithContext

func (o GetRdsParameterGroupsGroupOutput) ToGetRdsParameterGroupsGroupOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupOutput

type GetRdsParameterGroupsGroupParamDetail

type GetRdsParameterGroupsGroupParamDetail struct {
	ParamName  string `pulumi:"paramName"`
	ParamValue string `pulumi:"paramValue"`
}

type GetRdsParameterGroupsGroupParamDetailArgs

type GetRdsParameterGroupsGroupParamDetailArgs struct {
	ParamName  pulumi.StringInput `pulumi:"paramName"`
	ParamValue pulumi.StringInput `pulumi:"paramValue"`
}

func (GetRdsParameterGroupsGroupParamDetailArgs) ElementType

func (GetRdsParameterGroupsGroupParamDetailArgs) ToGetRdsParameterGroupsGroupParamDetailOutput

func (i GetRdsParameterGroupsGroupParamDetailArgs) ToGetRdsParameterGroupsGroupParamDetailOutput() GetRdsParameterGroupsGroupParamDetailOutput

func (GetRdsParameterGroupsGroupParamDetailArgs) ToGetRdsParameterGroupsGroupParamDetailOutputWithContext

func (i GetRdsParameterGroupsGroupParamDetailArgs) ToGetRdsParameterGroupsGroupParamDetailOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupParamDetailOutput

type GetRdsParameterGroupsGroupParamDetailArray

type GetRdsParameterGroupsGroupParamDetailArray []GetRdsParameterGroupsGroupParamDetailInput

func (GetRdsParameterGroupsGroupParamDetailArray) ElementType

func (GetRdsParameterGroupsGroupParamDetailArray) ToGetRdsParameterGroupsGroupParamDetailArrayOutput

func (i GetRdsParameterGroupsGroupParamDetailArray) ToGetRdsParameterGroupsGroupParamDetailArrayOutput() GetRdsParameterGroupsGroupParamDetailArrayOutput

func (GetRdsParameterGroupsGroupParamDetailArray) ToGetRdsParameterGroupsGroupParamDetailArrayOutputWithContext

func (i GetRdsParameterGroupsGroupParamDetailArray) ToGetRdsParameterGroupsGroupParamDetailArrayOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupParamDetailArrayOutput

type GetRdsParameterGroupsGroupParamDetailArrayInput

type GetRdsParameterGroupsGroupParamDetailArrayInput interface {
	pulumi.Input

	ToGetRdsParameterGroupsGroupParamDetailArrayOutput() GetRdsParameterGroupsGroupParamDetailArrayOutput
	ToGetRdsParameterGroupsGroupParamDetailArrayOutputWithContext(context.Context) GetRdsParameterGroupsGroupParamDetailArrayOutput
}

GetRdsParameterGroupsGroupParamDetailArrayInput is an input type that accepts GetRdsParameterGroupsGroupParamDetailArray and GetRdsParameterGroupsGroupParamDetailArrayOutput values. You can construct a concrete instance of `GetRdsParameterGroupsGroupParamDetailArrayInput` via:

GetRdsParameterGroupsGroupParamDetailArray{ GetRdsParameterGroupsGroupParamDetailArgs{...} }

type GetRdsParameterGroupsGroupParamDetailArrayOutput

type GetRdsParameterGroupsGroupParamDetailArrayOutput struct{ *pulumi.OutputState }

func (GetRdsParameterGroupsGroupParamDetailArrayOutput) ElementType

func (GetRdsParameterGroupsGroupParamDetailArrayOutput) Index

func (GetRdsParameterGroupsGroupParamDetailArrayOutput) ToGetRdsParameterGroupsGroupParamDetailArrayOutput

func (o GetRdsParameterGroupsGroupParamDetailArrayOutput) ToGetRdsParameterGroupsGroupParamDetailArrayOutput() GetRdsParameterGroupsGroupParamDetailArrayOutput

func (GetRdsParameterGroupsGroupParamDetailArrayOutput) ToGetRdsParameterGroupsGroupParamDetailArrayOutputWithContext

func (o GetRdsParameterGroupsGroupParamDetailArrayOutput) ToGetRdsParameterGroupsGroupParamDetailArrayOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupParamDetailArrayOutput

type GetRdsParameterGroupsGroupParamDetailInput

type GetRdsParameterGroupsGroupParamDetailInput interface {
	pulumi.Input

	ToGetRdsParameterGroupsGroupParamDetailOutput() GetRdsParameterGroupsGroupParamDetailOutput
	ToGetRdsParameterGroupsGroupParamDetailOutputWithContext(context.Context) GetRdsParameterGroupsGroupParamDetailOutput
}

GetRdsParameterGroupsGroupParamDetailInput is an input type that accepts GetRdsParameterGroupsGroupParamDetailArgs and GetRdsParameterGroupsGroupParamDetailOutput values. You can construct a concrete instance of `GetRdsParameterGroupsGroupParamDetailInput` via:

GetRdsParameterGroupsGroupParamDetailArgs{...}

type GetRdsParameterGroupsGroupParamDetailOutput

type GetRdsParameterGroupsGroupParamDetailOutput struct{ *pulumi.OutputState }

func (GetRdsParameterGroupsGroupParamDetailOutput) ElementType

func (GetRdsParameterGroupsGroupParamDetailOutput) ParamName

func (GetRdsParameterGroupsGroupParamDetailOutput) ParamValue

func (GetRdsParameterGroupsGroupParamDetailOutput) ToGetRdsParameterGroupsGroupParamDetailOutput

func (o GetRdsParameterGroupsGroupParamDetailOutput) ToGetRdsParameterGroupsGroupParamDetailOutput() GetRdsParameterGroupsGroupParamDetailOutput

func (GetRdsParameterGroupsGroupParamDetailOutput) ToGetRdsParameterGroupsGroupParamDetailOutputWithContext

func (o GetRdsParameterGroupsGroupParamDetailOutput) ToGetRdsParameterGroupsGroupParamDetailOutputWithContext(ctx context.Context) GetRdsParameterGroupsGroupParamDetailOutput

type GetRdsParameterGroupsOutputArgs added in v3.9.0

type GetRdsParameterGroupsOutputArgs struct {
	EnableDetails pulumi.BoolPtrInput     `pulumi:"enableDetails"`
	Ids           pulumi.StringArrayInput `pulumi:"ids"`
	NameRegex     pulumi.StringPtrInput   `pulumi:"nameRegex"`
	OutputFile    pulumi.StringPtrInput   `pulumi:"outputFile"`
}

A collection of arguments for invoking getRdsParameterGroups.

func (GetRdsParameterGroupsOutputArgs) ElementType added in v3.9.0

type GetRdsParameterGroupsResult

type GetRdsParameterGroupsResult struct {
	EnableDetails *bool                        `pulumi:"enableDetails"`
	Groups        []GetRdsParameterGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getRdsParameterGroups.

type GetRdsParameterGroupsResultOutput added in v3.9.0

type GetRdsParameterGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRdsParameterGroups.

func GetRdsParameterGroupsOutput added in v3.9.0

func (GetRdsParameterGroupsResultOutput) ElementType added in v3.9.0

func (GetRdsParameterGroupsResultOutput) EnableDetails added in v3.9.0

func (GetRdsParameterGroupsResultOutput) Groups added in v3.9.0

func (GetRdsParameterGroupsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetRdsParameterGroupsResultOutput) Ids added in v3.9.0

func (GetRdsParameterGroupsResultOutput) NameRegex added in v3.9.0

func (GetRdsParameterGroupsResultOutput) Names added in v3.9.0

func (GetRdsParameterGroupsResultOutput) OutputFile added in v3.9.0

func (GetRdsParameterGroupsResultOutput) ToGetRdsParameterGroupsResultOutput added in v3.9.0

func (o GetRdsParameterGroupsResultOutput) ToGetRdsParameterGroupsResultOutput() GetRdsParameterGroupsResultOutput

func (GetRdsParameterGroupsResultOutput) ToGetRdsParameterGroupsResultOutputWithContext added in v3.9.0

func (o GetRdsParameterGroupsResultOutput) ToGetRdsParameterGroupsResultOutputWithContext(ctx context.Context) GetRdsParameterGroupsResultOutput

type GetZonesArgs

type GetZonesArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category        *string `pulumi:"category"`
	DbInstanceClass *string `pulumi:"dbInstanceClass"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine *string `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion *string `pulumi:"engineVersion"`
	// Filter the results by a specific instance charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType *string `pulumi:"instanceChargeType"`
	// It has been deprecated from version 1.137.0 and using `multiZone` instead.
	Multi *bool `pulumi:"multi"`
	// Indicate whether the zones can be used in a multi AZ configuration. Default to `false`. Multi AZ is usually used to launch RDS instances.
	MultiZone  *bool   `pulumi:"multiZone"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

type GetZonesOutputArgs added in v3.9.0

type GetZonesOutputArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category        pulumi.StringPtrInput `pulumi:"category"`
	DbInstanceClass pulumi.StringPtrInput `pulumi:"dbInstanceClass"`
	// The DB instance storage space required by the user. Valid values: "cloudSsd", "localSsd", "cloudEssd", "cloudEssd2", "cloudEssd3".
	DbInstanceStorageType pulumi.StringPtrInput `pulumi:"dbInstanceStorageType"`
	// Database type. Valid values: "MySQL", "SQLServer", "PostgreSQL", "PPAS", "MariaDB". If not set, it will match all of engines.
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// Filter the results by a specific instance charge type. Valid values: `PrePaid` and `PostPaid`. Default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput `pulumi:"instanceChargeType"`
	// It has been deprecated from version 1.137.0 and using `multiZone` instead.
	Multi pulumi.BoolPtrInput `pulumi:"multi"`
	// Indicate whether the zones can be used in a multi AZ configuration. Default to `false`. Multi AZ is usually used to launch RDS instances.
	MultiZone  pulumi.BoolPtrInput   `pulumi:"multiZone"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

func (GetZonesOutputArgs) ElementType added in v3.9.0

func (GetZonesOutputArgs) ElementType() reflect.Type

type GetZonesResult

type GetZonesResult struct {
	Category              *string `pulumi:"category"`
	DbInstanceClass       *string `pulumi:"dbInstanceClass"`
	DbInstanceStorageType *string `pulumi:"dbInstanceStorageType"`
	Engine                *string `pulumi:"engine"`
	EngineVersion         *string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of zone IDs.
	Ids                []string `pulumi:"ids"`
	InstanceChargeType *string  `pulumi:"instanceChargeType"`
	Multi              *bool    `pulumi:"multi"`
	MultiZone          *bool    `pulumi:"multiZone"`
	OutputFile         *string  `pulumi:"outputFile"`
	// A list of availability zones. Each element contains the following attributes:
	Zones []GetZonesZone `pulumi:"zones"`
}

A collection of values returned by getZones.

func GetZones

func GetZones(ctx *pulumi.Context, args *GetZonesArgs, opts ...pulumi.InvokeOption) (*GetZonesResult, error)

This data source provides availability zones for RDS that can be accessed by an Alibaba Cloud account within the region configured in the provider.

> **NOTE:** Available in v1.73.0+.

type GetZonesResultOutput added in v3.9.0

type GetZonesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getZones.

func GetZonesOutput added in v3.9.0

func GetZonesOutput(ctx *pulumi.Context, args GetZonesOutputArgs, opts ...pulumi.InvokeOption) GetZonesResultOutput

func (GetZonesResultOutput) Category added in v3.9.0

func (GetZonesResultOutput) DbInstanceClass added in v3.9.0

func (o GetZonesResultOutput) DbInstanceClass() pulumi.StringPtrOutput

func (GetZonesResultOutput) DbInstanceStorageType added in v3.9.0

func (o GetZonesResultOutput) DbInstanceStorageType() pulumi.StringPtrOutput

func (GetZonesResultOutput) ElementType added in v3.9.0

func (GetZonesResultOutput) ElementType() reflect.Type

func (GetZonesResultOutput) Engine added in v3.9.0

func (GetZonesResultOutput) EngineVersion added in v3.9.0

func (o GetZonesResultOutput) EngineVersion() pulumi.StringPtrOutput

func (GetZonesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetZonesResultOutput) Ids added in v3.9.0

A list of zone IDs.

func (GetZonesResultOutput) InstanceChargeType added in v3.9.0

func (o GetZonesResultOutput) InstanceChargeType() pulumi.StringPtrOutput

func (GetZonesResultOutput) Multi added in v3.9.0

func (GetZonesResultOutput) MultiZone added in v3.9.0

func (GetZonesResultOutput) OutputFile added in v3.9.0

func (GetZonesResultOutput) ToGetZonesResultOutput added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutput() GetZonesResultOutput

func (GetZonesResultOutput) ToGetZonesResultOutputWithContext added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutputWithContext(ctx context.Context) GetZonesResultOutput

func (GetZonesResultOutput) Zones added in v3.9.0

A list of availability zones. Each element contains the following attributes:

type GetZonesZone

type GetZonesZone struct {
	// ID of the zone.
	Id string `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds []string `pulumi:"multiZoneIds"`
}

type GetZonesZoneArgs

type GetZonesZoneArgs struct {
	// ID of the zone.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds pulumi.StringArrayInput `pulumi:"multiZoneIds"`
}

func (GetZonesZoneArgs) ElementType

func (GetZonesZoneArgs) ElementType() reflect.Type

func (GetZonesZoneArgs) ToGetZonesZoneOutput

func (i GetZonesZoneArgs) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneArgs) ToGetZonesZoneOutputWithContext

func (i GetZonesZoneArgs) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type GetZonesZoneArray

type GetZonesZoneArray []GetZonesZoneInput

func (GetZonesZoneArray) ElementType

func (GetZonesZoneArray) ElementType() reflect.Type

func (GetZonesZoneArray) ToGetZonesZoneArrayOutput

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneArrayInput

type GetZonesZoneArrayInput interface {
	pulumi.Input

	ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput
	ToGetZonesZoneArrayOutputWithContext(context.Context) GetZonesZoneArrayOutput
}

GetZonesZoneArrayInput is an input type that accepts GetZonesZoneArray and GetZonesZoneArrayOutput values. You can construct a concrete instance of `GetZonesZoneArrayInput` via:

GetZonesZoneArray{ GetZonesZoneArgs{...} }

type GetZonesZoneArrayOutput

type GetZonesZoneArrayOutput struct{ *pulumi.OutputState }

func (GetZonesZoneArrayOutput) ElementType

func (GetZonesZoneArrayOutput) ElementType() reflect.Type

func (GetZonesZoneArrayOutput) Index

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneInput

type GetZonesZoneInput interface {
	pulumi.Input

	ToGetZonesZoneOutput() GetZonesZoneOutput
	ToGetZonesZoneOutputWithContext(context.Context) GetZonesZoneOutput
}

GetZonesZoneInput is an input type that accepts GetZonesZoneArgs and GetZonesZoneOutput values. You can construct a concrete instance of `GetZonesZoneInput` via:

GetZonesZoneArgs{...}

type GetZonesZoneOutput

type GetZonesZoneOutput struct{ *pulumi.OutputState }

func (GetZonesZoneOutput) ElementType

func (GetZonesZoneOutput) ElementType() reflect.Type

func (GetZonesZoneOutput) Id

ID of the zone.

func (GetZonesZoneOutput) MultiZoneIds

func (o GetZonesZoneOutput) MultiZoneIds() pulumi.StringArrayOutput

A list of zone ids in which the multi zone.

func (GetZonesZoneOutput) ToGetZonesZoneOutput

func (o GetZonesZoneOutput) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneOutput) ToGetZonesZoneOutputWithContext

func (o GetZonesZoneOutput) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringOutput `pulumi:"acl"`
	// Whether to renewal a DB instance automatically or not. It is valid when instanceChargeType is `PrePaid`. Default to `false`.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// Auto-renewal period of an instance, in the unit of the month. It is valid when instanceChargeType is `PrePaid`. Valid value:[1~12], Default to 1.
	AutoRenewPeriod pulumi.IntPtrOutput `pulumi:"autoRenewPeriod"`
	// The upgrade method to use. Valid values:
	// - Auto: Instances are automatically upgraded to a higher minor version.
	// - Manual: Instances are forcibly upgraded to a higher minor version when the current version is unpublished.
	AutoUpgradeMinorVersion pulumi.StringOutput `pulumi:"autoUpgradeMinorVersion"`
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringOutput `pulumi:"caType"`
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter.
	ClientCaCert pulumi.StringPtrOutput `pulumi:"clientCaCert"`
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrOutput `pulumi:"clientCaEnabled"`
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter.
	ClientCertRevocationList pulumi.StringPtrOutput `pulumi:"clientCertRevocationList"`
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled pulumi.IntPtrOutput `pulumi:"clientCrlEnabled"`
	// RDS database connection string.
	ConnectionString       pulumi.StringOutput    `pulumi:"connectionString"`
	ConnectionStringPrefix pulumi.StringPtrOutput `pulumi:"connectionStringPrefix"`
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	DbInstanceIpArrayAttribute pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayAttribute"`
	// The name of the IP address whitelist. Default value: Default.
	DbInstanceIpArrayName pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayName"`
	// The storage type of the instance. Valid values:
	// - local_ssd: specifies to use local SSDs. This value is recommended.
	// - cloud_ssd: specifies to use standard SSDs.
	// - cloud_essd: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd2: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd3: specifies to use enhanced SSDs (ESSDs).
	DbInstanceStorageType pulumi.StringOutput `pulumi:"dbInstanceStorageType"`
	// The time zone of the instance. This parameter takes effect only when you set the `Engine` parameter to MySQL or PostgreSQL.
	// - If you set the `Engine` parameter to MySQL.
	// - This time zone of the instance is in UTC. Valid values: -12:59 to +13:00.
	// - You can specify this parameter when the instance is equipped with local SSDs. For example, you can specify the time zone to Asia/Hong_Kong. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - If you set the `Engine` parameter to PostgreSQL.
	// - This time zone of the instance is not in UTC. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - You can specify this parameter only when the instance is equipped with standard SSDs or ESSDs.
	DbTimeZone pulumi.StringOutput `pulumi:"dbTimeZone"`
	// The key id of the KMS. Used for encrypting a disk if not null. Only for PostgreSQL, MySQL and SQLServer.
	EncryptionKey pulumi.StringPtrOutput `pulumi:"encryptionKey"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrOutput `pulumi:"forceRestart"`
	// The read-only instances to which you want to synchronize the IP address whitelist.
	// * If the instance is attached with a read-only instance, you can use this parameter to synchronize the IP address whitelist to the read-only instance. If the instance is attached with multiple read-only instances, the read-only instances must be separated by commas (,).
	// * If the instance is not attached with a read-only instance, this parameter is empty.
	FreshWhiteListReadins pulumi.StringPtrOutput `pulumi:"freshWhiteListReadins"`
	// The primary/secondary switchover mode of the instance. Default value: Auto. Valid values:
	// - Auto: The system automatically switches over services from the primary to secondary instances in the event of a fault.
	// - Manual: You must manually switch over services from the primary to secondary instances in the event of a fault.
	HaConfig pulumi.StringOutput `pulumi:"haConfig"`
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// User-defined DB instance storage space. Value range:
	// - [5, 2000] for MySQL/PostgreSQL/PPAS HA dual node edition;
	// - [20,1000] for MySQL 5.7 basic single node edition;
	// - [10, 2000] for SQL Server 2008R2;
	// - [20,2000] for SQL Server 2012 basic single node edition
	//   Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	//   Note: There is extra 5 GB storage for SQL Server Instance and it is not in specified `instanceStorage`.
	InstanceStorage pulumi.IntOutput `pulumi:"instanceStorage"`
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringOutput `pulumi:"maintainTime"`
	// The time after when you want to enable automatic primary/secondary switchover. At most, you can set this parameter to 23:59:59 seven days later. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	ManualHaTime pulumi.StringPtrOutput `pulumi:"manualHaTime"`
	// The method that is used to modify the IP address whitelist. Default value: Cover. Valid values:
	// - Cover: Use the value of the SecurityIps parameter to overwrite the existing entries in the IP address whitelist.
	// - Append: Add the IP addresses and CIDR blocks that are specified in the SecurityIps parameter to the IP address whitelist.
	// - Delete: Delete IP addresses and CIDR blocks that are specified in the SecurityIps parameter from the IP address whitelist. You must retain at least one IP address or CIDR block.
	ModifyMode pulumi.StringPtrOutput `pulumi:"modifyMode"`
	// The monitoring frequency in seconds. Valid values are 5, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntOutput `pulumi:"monitoringPeriod"`
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm) .
	Parameters InstanceParameterArrayOutput `pulumi:"parameters"`
	Period     pulumi.IntPtrOutput          `pulumi:"period"`
	Port       pulumi.StringOutput          `pulumi:"port"`
	// The private IP address of the instance. The private IP address must be within the Classless Inter-Domain Routing (CIDR) block of the vSwitch that is specified by the VSwitchId parameter.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// The policy based on which ApsaraDB RDS retains archived backup files after the instance is released. Valid values:
	// - None: No archived backup files are retained.
	// - Lastest: Only the last archived backup file is retained.
	// - All: All the archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringPtrOutput `pulumi:"releasedKeepPolicy"`
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	ReplicationAcl pulumi.StringOutput `pulumi:"replicationAcl"`
	// The ID of resource group which the DB instance belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `security_group_id` has been deprecated from 1.69.0 and use `security_group_ids` instead.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// , Available in 1.69.0+) The list IDs to join ECS Security Group. At most supports three security groups.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// Valid values are `normal`, `safety`, Default to `normal`. support `safety` switch to high security access mode.
	SecurityIpMode pulumi.StringPtrOutput `pulumi:"securityIpMode"`
	// The type of IP address in the IP address whitelist.
	SecurityIpType pulumi.StringPtrOutput `pulumi:"securityIpType"`
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayOutput `pulumi:"securityIps"`
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerCert pulumi.StringOutput `pulumi:"serverCert"`
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerKey pulumi.StringOutput `pulumi:"serverKey"`
	// The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.
	SqlCollectorConfigValue pulumi.IntPtrOutput `pulumi:"sqlCollectorConfigValue"`
	// The sql collector status of the instance. Valid values are `Enabled`, `Disabled`, Default to `Disabled`.
	SqlCollectorStatus pulumi.StringOutput `pulumi:"sqlCollectorStatus"`
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26254.htm).
	SslAction pulumi.StringOutput `pulumi:"sslAction"`
	// Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.
	SslStatus pulumi.StringOutput `pulumi:"sslStatus"`
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	StorageAutoScale pulumi.StringPtrOutput `pulumi:"storageAutoScale"`
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	StorageThreshold pulumi.IntPtrOutput `pulumi:"storageThreshold"`
	// The upper limit of the total storage space for automatic expansion of the storage space, that is, automatic expansion will not cause the total storage space of the instance to exceed this value. Unit: GB. The value must be ≥0.
	StorageUpperBound pulumi.IntPtrOutput `pulumi:"storageUpperBound"`
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrOutput `pulumi:"switchTime"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringOutput `pulumi:"targetMinorVersion"`
	// The TDE(Transparent Data Encryption) status. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).
	TdeStatus pulumi.StringPtrOutput `pulumi:"tdeStatus"`
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrOutput `pulumi:"upgradeDbInstanceKernelVersion"`
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrOutput `pulumi:"upgradeTime"`
	// The virtual switch ID to launch DB instances in one VPC. If there are multiple vswitches, separate them with commas.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The network type of the IP address whitelist. Default value: MIX. Valid values:
	// - Classic: classic network in enhanced whitelist mode
	// - VPC: virtual private cloud (VPC) in enhanced whitelist mode
	// - MIX: standard whitelist mode
	WhitelistNetworkType pulumi.StringPtrOutput `pulumi:"whitelistNetworkType"`
	// The Zone to launch the DB instance. From version 1.8.1, it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in the one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
	// The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveA pulumi.StringOutput `pulumi:"zoneIdSlaveA"`
	// The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveB pulumi.StringPtrOutput `pulumi:"zoneIdSlaveB"`
}

Provides an RDS instance resource. A DB instance is an isolated database environment in the cloud. A DB instance can contain multiple user-created databases.

For information about RDS and how to use it, see [What is ApsaraDB for RDS](https://www.alibabacloud.com/help/en/doc-detail/26092.htm).

## Example Usage ### Create a RDS MySQL instance

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-testaccdbinstance"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		opt0 := creation
		exampleZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "exampleNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "exampleSwitch", &vpc.SwitchArgs{
			VpcId:     exampleNetwork.ID(),
			CidrBlock: pulumi.String("172.16.0.0/24"),
			ZoneId:    pulumi.String(exampleZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			Engine:             pulumi.String("MySQL"),
			EngineVersion:      pulumi.String("5.6"),
			InstanceType:       pulumi.String("rds.mysql.s2.large"),
			InstanceStorage:    pulumi.Int(30),
			InstanceChargeType: pulumi.String("Postpaid"),
			InstanceName:       pulumi.String(name),
			VswitchId:          exampleSwitch.ID(),
			MonitoringPeriod:   pulumi.Int(60),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/instance:Instance example rm-abc12345678

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance

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

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToInstancePtrOutput

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringPtrInput
	// Whether to renewal a DB instance automatically or not. It is valid when instanceChargeType is `PrePaid`. Default to `false`.
	AutoRenew pulumi.BoolPtrInput
	// Auto-renewal period of an instance, in the unit of the month. It is valid when instanceChargeType is `PrePaid`. Valid value:[1~12], Default to 1.
	AutoRenewPeriod pulumi.IntPtrInput
	// The upgrade method to use. Valid values:
	// - Auto: Instances are automatically upgraded to a higher minor version.
	// - Manual: Instances are forcibly upgraded to a higher minor version when the current version is unpublished.
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringPtrInput
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter.
	ClientCaCert pulumi.StringPtrInput
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrInput
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter.
	ClientCertRevocationList pulumi.StringPtrInput
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled       pulumi.IntPtrInput
	ConnectionStringPrefix pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	DbInstanceIpArrayName pulumi.StringPtrInput
	// The storage type of the instance. Valid values:
	// - local_ssd: specifies to use local SSDs. This value is recommended.
	// - cloud_ssd: specifies to use standard SSDs.
	// - cloud_essd: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd2: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd3: specifies to use enhanced SSDs (ESSDs).
	DbInstanceStorageType pulumi.StringPtrInput
	// The time zone of the instance. This parameter takes effect only when you set the `Engine` parameter to MySQL or PostgreSQL.
	// - If you set the `Engine` parameter to MySQL.
	// - This time zone of the instance is in UTC. Valid values: -12:59 to +13:00.
	// - You can specify this parameter when the instance is equipped with local SSDs. For example, you can specify the time zone to Asia/Hong_Kong. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - If you set the `Engine` parameter to PostgreSQL.
	// - This time zone of the instance is not in UTC. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - You can specify this parameter only when the instance is equipped with standard SSDs or ESSDs.
	DbTimeZone pulumi.StringPtrInput
	// The key id of the KMS. Used for encrypting a disk if not null. Only for PostgreSQL, MySQL and SQLServer.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The read-only instances to which you want to synchronize the IP address whitelist.
	// * If the instance is attached with a read-only instance, you can use this parameter to synchronize the IP address whitelist to the read-only instance. If the instance is attached with multiple read-only instances, the read-only instances must be separated by commas (,).
	// * If the instance is not attached with a read-only instance, this parameter is empty.
	FreshWhiteListReadins pulumi.StringPtrInput
	// The primary/secondary switchover mode of the instance. Default value: Auto. Valid values:
	// - Auto: The system automatically switches over services from the primary to secondary instances in the event of a fault.
	// - Manual: You must manually switch over services from the primary to secondary instances in the event of a fault.
	HaConfig pulumi.StringPtrInput
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid.
	InstanceChargeType pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// User-defined DB instance storage space. Value range:
	// - [5, 2000] for MySQL/PostgreSQL/PPAS HA dual node edition;
	// - [20,1000] for MySQL 5.7 basic single node edition;
	// - [10, 2000] for SQL Server 2008R2;
	// - [20,2000] for SQL Server 2012 basic single node edition
	//   Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	//   Note: There is extra 5 GB storage for SQL Server Instance and it is not in specified `instanceStorage`.
	InstanceStorage pulumi.IntInput
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringInput
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringPtrInput
	// The time after when you want to enable automatic primary/secondary switchover. At most, you can set this parameter to 23:59:59 seven days later. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	ManualHaTime pulumi.StringPtrInput
	// The method that is used to modify the IP address whitelist. Default value: Cover. Valid values:
	// - Cover: Use the value of the SecurityIps parameter to overwrite the existing entries in the IP address whitelist.
	// - Append: Add the IP addresses and CIDR blocks that are specified in the SecurityIps parameter to the IP address whitelist.
	// - Delete: Delete IP addresses and CIDR blocks that are specified in the SecurityIps parameter from the IP address whitelist. You must retain at least one IP address or CIDR block.
	ModifyMode pulumi.StringPtrInput
	// The monitoring frequency in seconds. Valid values are 5, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntPtrInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm) .
	Parameters InstanceParameterArrayInput
	Period     pulumi.IntPtrInput
	Port       pulumi.StringPtrInput
	// The private IP address of the instance. The private IP address must be within the Classless Inter-Domain Routing (CIDR) block of the vSwitch that is specified by the VSwitchId parameter.
	PrivateIpAddress pulumi.StringPtrInput
	// The policy based on which ApsaraDB RDS retains archived backup files after the instance is released. Valid values:
	// - None: No archived backup files are retained.
	// - Lastest: Only the last archived backup file is retained.
	// - All: All the archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	ReplicationAcl pulumi.StringPtrInput
	// The ID of resource group which the DB instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `security_group_id` has been deprecated from 1.69.0 and use `security_group_ids` instead.
	SecurityGroupId pulumi.StringPtrInput
	// , Available in 1.69.0+) The list IDs to join ECS Security Group. At most supports three security groups.
	SecurityGroupIds pulumi.StringArrayInput
	// Valid values are `normal`, `safety`, Default to `normal`. support `safety` switch to high security access mode.
	SecurityIpMode pulumi.StringPtrInput
	// The type of IP address in the IP address whitelist.
	SecurityIpType pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayInput
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerCert pulumi.StringPtrInput
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerKey pulumi.StringPtrInput
	// The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.
	SqlCollectorConfigValue pulumi.IntPtrInput
	// The sql collector status of the instance. Valid values are `Enabled`, `Disabled`, Default to `Disabled`.
	SqlCollectorStatus pulumi.StringPtrInput
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26254.htm).
	SslAction pulumi.StringPtrInput
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	StorageAutoScale pulumi.StringPtrInput
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	StorageThreshold pulumi.IntPtrInput
	// The upper limit of the total storage space for automatic expansion of the storage space, that is, automatic expansion will not cause the total storage space of the instance to exceed this value. Unit: GB. The value must be ≥0.
	StorageUpperBound pulumi.IntPtrInput
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringPtrInput
	// The TDE(Transparent Data Encryption) status. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).
	TdeStatus pulumi.StringPtrInput
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC. If there are multiple vswitches, separate them with commas.
	VswitchId pulumi.StringPtrInput
	// The network type of the IP address whitelist. Default value: MIX. Valid values:
	// - Classic: classic network in enhanced whitelist mode
	// - VPC: virtual private cloud (VPC) in enhanced whitelist mode
	// - MIX: standard whitelist mode
	WhitelistNetworkType pulumi.StringPtrInput
	// The Zone to launch the DB instance. From version 1.8.1, it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in the one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringPtrInput
	// The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveA pulumi.StringPtrInput
	// The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveB pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToInstancePtrOutput

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceParameter

type InstanceParameter struct {
	Name  string `pulumi:"name"`
	Value string `pulumi:"value"`
}

type InstanceParameterArgs

type InstanceParameterArgs struct {
	Name  pulumi.StringInput `pulumi:"name"`
	Value pulumi.StringInput `pulumi:"value"`
}

func (InstanceParameterArgs) ElementType

func (InstanceParameterArgs) ElementType() reflect.Type

func (InstanceParameterArgs) ToInstanceParameterOutput

func (i InstanceParameterArgs) ToInstanceParameterOutput() InstanceParameterOutput

func (InstanceParameterArgs) ToInstanceParameterOutputWithContext

func (i InstanceParameterArgs) ToInstanceParameterOutputWithContext(ctx context.Context) InstanceParameterOutput

type InstanceParameterArray

type InstanceParameterArray []InstanceParameterInput

func (InstanceParameterArray) ElementType

func (InstanceParameterArray) ElementType() reflect.Type

func (InstanceParameterArray) ToInstanceParameterArrayOutput

func (i InstanceParameterArray) ToInstanceParameterArrayOutput() InstanceParameterArrayOutput

func (InstanceParameterArray) ToInstanceParameterArrayOutputWithContext

func (i InstanceParameterArray) ToInstanceParameterArrayOutputWithContext(ctx context.Context) InstanceParameterArrayOutput

type InstanceParameterArrayInput

type InstanceParameterArrayInput interface {
	pulumi.Input

	ToInstanceParameterArrayOutput() InstanceParameterArrayOutput
	ToInstanceParameterArrayOutputWithContext(context.Context) InstanceParameterArrayOutput
}

InstanceParameterArrayInput is an input type that accepts InstanceParameterArray and InstanceParameterArrayOutput values. You can construct a concrete instance of `InstanceParameterArrayInput` via:

InstanceParameterArray{ InstanceParameterArgs{...} }

type InstanceParameterArrayOutput

type InstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (InstanceParameterArrayOutput) ElementType

func (InstanceParameterArrayOutput) Index

func (InstanceParameterArrayOutput) ToInstanceParameterArrayOutput

func (o InstanceParameterArrayOutput) ToInstanceParameterArrayOutput() InstanceParameterArrayOutput

func (InstanceParameterArrayOutput) ToInstanceParameterArrayOutputWithContext

func (o InstanceParameterArrayOutput) ToInstanceParameterArrayOutputWithContext(ctx context.Context) InstanceParameterArrayOutput

type InstanceParameterInput

type InstanceParameterInput interface {
	pulumi.Input

	ToInstanceParameterOutput() InstanceParameterOutput
	ToInstanceParameterOutputWithContext(context.Context) InstanceParameterOutput
}

InstanceParameterInput is an input type that accepts InstanceParameterArgs and InstanceParameterOutput values. You can construct a concrete instance of `InstanceParameterInput` via:

InstanceParameterArgs{...}

type InstanceParameterOutput

type InstanceParameterOutput struct{ *pulumi.OutputState }

func (InstanceParameterOutput) ElementType

func (InstanceParameterOutput) ElementType() reflect.Type

func (InstanceParameterOutput) Name

func (InstanceParameterOutput) ToInstanceParameterOutput

func (o InstanceParameterOutput) ToInstanceParameterOutput() InstanceParameterOutput

func (InstanceParameterOutput) ToInstanceParameterOutputWithContext

func (o InstanceParameterOutput) ToInstanceParameterOutputWithContext(ctx context.Context) InstanceParameterOutput

func (InstanceParameterOutput) Value

type InstancePtrInput

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput

type InstancePtrOutput struct{ *pulumi.OutputState }

func (InstancePtrOutput) Elem added in v3.9.0

func (InstancePtrOutput) ElementType

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceState

type InstanceState struct {
	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringPtrInput
	// Whether to renewal a DB instance automatically or not. It is valid when instanceChargeType is `PrePaid`. Default to `false`.
	AutoRenew pulumi.BoolPtrInput
	// Auto-renewal period of an instance, in the unit of the month. It is valid when instanceChargeType is `PrePaid`. Valid value:[1~12], Default to 1.
	AutoRenewPeriod pulumi.IntPtrInput
	// The upgrade method to use. Valid values:
	// - Auto: Instances are automatically upgraded to a higher minor version.
	// - Manual: Instances are forcibly upgraded to a higher minor version when the current version is unpublished.
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringPtrInput
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter.
	ClientCaCert pulumi.StringPtrInput
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrInput
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter.
	ClientCertRevocationList pulumi.StringPtrInput
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled pulumi.IntPtrInput
	// RDS database connection string.
	ConnectionString       pulumi.StringPtrInput
	ConnectionStringPrefix pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	DbInstanceIpArrayName pulumi.StringPtrInput
	// The storage type of the instance. Valid values:
	// - local_ssd: specifies to use local SSDs. This value is recommended.
	// - cloud_ssd: specifies to use standard SSDs.
	// - cloud_essd: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd2: specifies to use enhanced SSDs (ESSDs).
	// - cloud_essd3: specifies to use enhanced SSDs (ESSDs).
	DbInstanceStorageType pulumi.StringPtrInput
	// The time zone of the instance. This parameter takes effect only when you set the `Engine` parameter to MySQL or PostgreSQL.
	// - If you set the `Engine` parameter to MySQL.
	// - This time zone of the instance is in UTC. Valid values: -12:59 to +13:00.
	// - You can specify this parameter when the instance is equipped with local SSDs. For example, you can specify the time zone to Asia/Hong_Kong. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - If you set the `Engine` parameter to PostgreSQL.
	// - This time zone of the instance is not in UTC. For more information about time zones, see [Time zones](https://www.alibabacloud.com/help/doc-detail/297356.htm).
	// - You can specify this parameter only when the instance is equipped with standard SSDs or ESSDs.
	DbTimeZone pulumi.StringPtrInput
	// The key id of the KMS. Used for encrypting a disk if not null. Only for PostgreSQL, MySQL and SQLServer.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The read-only instances to which you want to synchronize the IP address whitelist.
	// * If the instance is attached with a read-only instance, you can use this parameter to synchronize the IP address whitelist to the read-only instance. If the instance is attached with multiple read-only instances, the read-only instances must be separated by commas (,).
	// * If the instance is not attached with a read-only instance, this parameter is empty.
	FreshWhiteListReadins pulumi.StringPtrInput
	// The primary/secondary switchover mode of the instance. Default value: Auto. Valid values:
	// - Auto: The system automatically switches over services from the primary to secondary instances in the event of a fault.
	// - Manual: You must manually switch over services from the primary to secondary instances in the event of a fault.
	HaConfig pulumi.StringPtrInput
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid.
	InstanceChargeType pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// User-defined DB instance storage space. Value range:
	// - [5, 2000] for MySQL/PostgreSQL/PPAS HA dual node edition;
	// - [20,1000] for MySQL 5.7 basic single node edition;
	// - [10, 2000] for SQL Server 2008R2;
	// - [20,2000] for SQL Server 2012 basic single node edition
	//   Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	//   Note: There is extra 5 GB storage for SQL Server Instance and it is not in specified `instanceStorage`.
	InstanceStorage pulumi.IntPtrInput
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringPtrInput
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringPtrInput
	// The time after when you want to enable automatic primary/secondary switchover. At most, you can set this parameter to 23:59:59 seven days later. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	ManualHaTime pulumi.StringPtrInput
	// The method that is used to modify the IP address whitelist. Default value: Cover. Valid values:
	// - Cover: Use the value of the SecurityIps parameter to overwrite the existing entries in the IP address whitelist.
	// - Append: Add the IP addresses and CIDR blocks that are specified in the SecurityIps parameter to the IP address whitelist.
	// - Delete: Delete IP addresses and CIDR blocks that are specified in the SecurityIps parameter from the IP address whitelist. You must retain at least one IP address or CIDR block.
	ModifyMode pulumi.StringPtrInput
	// The monitoring frequency in seconds. Valid values are 5, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntPtrInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm) .
	Parameters InstanceParameterArrayInput
	Period     pulumi.IntPtrInput
	Port       pulumi.StringPtrInput
	// The private IP address of the instance. The private IP address must be within the Classless Inter-Domain Routing (CIDR) block of the vSwitch that is specified by the VSwitchId parameter.
	PrivateIpAddress pulumi.StringPtrInput
	// The policy based on which ApsaraDB RDS retains archived backup files after the instance is released. Valid values:
	// - None: No archived backup files are retained.
	// - Lastest: Only the last archived backup file is retained.
	// - All: All the archived backup files are retained.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	ReplicationAcl pulumi.StringPtrInput
	// The ID of resource group which the DB instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `security_group_id` has been deprecated from 1.69.0 and use `security_group_ids` instead.
	SecurityGroupId pulumi.StringPtrInput
	// , Available in 1.69.0+) The list IDs to join ECS Security Group. At most supports three security groups.
	SecurityGroupIds pulumi.StringArrayInput
	// Valid values are `normal`, `safety`, Default to `normal`. support `safety` switch to high security access mode.
	SecurityIpMode pulumi.StringPtrInput
	// The type of IP address in the IP address whitelist.
	SecurityIpType pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayInput
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerCert pulumi.StringPtrInput
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter.
	ServerKey pulumi.StringPtrInput
	// The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.
	SqlCollectorConfigValue pulumi.IntPtrInput
	// The sql collector status of the instance. Valid values are `Enabled`, `Disabled`, Default to `Disabled`.
	SqlCollectorStatus pulumi.StringPtrInput
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26254.htm).
	SslAction pulumi.StringPtrInput
	// Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.
	SslStatus pulumi.StringPtrInput
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	StorageAutoScale pulumi.StringPtrInput
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	StorageThreshold pulumi.IntPtrInput
	// The upper limit of the total storage space for automatic expansion of the storage space, that is, automatic expansion will not cause the total storage space of the instance to exceed this value. Unit: GB. The value must be ≥0.
	StorageUpperBound pulumi.IntPtrInput
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringPtrInput
	// The TDE(Transparent Data Encryption) status. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).
	TdeStatus pulumi.StringPtrInput
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC. If there are multiple vswitches, separate them with commas.
	VswitchId pulumi.StringPtrInput
	// The network type of the IP address whitelist. Default value: MIX. Valid values:
	// - Classic: classic network in enhanced whitelist mode
	// - VPC: virtual private cloud (VPC) in enhanced whitelist mode
	// - MIX: standard whitelist mode
	WhitelistNetworkType pulumi.StringPtrInput
	// The Zone to launch the DB instance. From version 1.8.1, it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in the one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringPtrInput
	// The region ID of the secondary instance if you create a secondary instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveA pulumi.StringPtrInput
	// The region ID of the log instance if you create a log instance. If you set this parameter to the same value as the ZoneId parameter, the instance is deployed in a single zone. Otherwise, the instance is deployed in multiple zones.
	ZoneIdSlaveB pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type RdsAccount

type RdsAccount struct {
	pulumi.CustomResourceState

	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringOutput `pulumi:"accountDescription"`
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and end with letters or numbers, The length must be 2-63 characters for PostgreSQL, otherwise the length must be 2-32 characters.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	AccountPassword pulumi.StringOutput `pulumi:"accountPassword"`
	// Privilege type of account. Default to `Normal`.
	// `Normal`: Common privilege.
	// `Super`: High privilege.
	AccountType pulumi.StringOutput `pulumi:"accountType"`
	// The Id of instance in which account belongs.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringOutput `pulumi:"description"`
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringOutput `pulumi:"password"`
	// The status of the resource. Valid values: `Available`, `Unavailable`.
	Status pulumi.StringOutput `pulumi:"status"`
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a RDS Account resource.

For information about RDS Account and how to use it, see [What is Account](https://www.alibabacloud.com/help/en/doc-detail/26263.htm).

> **NOTE:** Available in v1.120.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbaccountmysql"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		instance, err := rds.NewInstance(ctx, "instance", &rds.InstanceArgs{
			Engine:          pulumi.String("MySQL"),
			EngineVersion:   pulumi.String("5.6"),
			InstanceType:    pulumi.String("rds.mysql.s1.small"),
			InstanceStorage: pulumi.Int(10),
			VswitchId:       defaultSwitch.ID(),
			InstanceName:    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsAccount(ctx, "account", &rds.RdsAccountArgs{
			InstanceId:      instance.ID(),
			AccountPassword: pulumi.String("Test12345"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Account can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/rdsAccount:RdsAccount example <db_instance_id>:<account_name>

```

func GetRdsAccount

func GetRdsAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsAccountState, opts ...pulumi.ResourceOption) (*RdsAccount, error)

GetRdsAccount gets an existing RdsAccount resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRdsAccount

func NewRdsAccount(ctx *pulumi.Context,
	name string, args *RdsAccountArgs, opts ...pulumi.ResourceOption) (*RdsAccount, error)

NewRdsAccount registers a new resource with the given unique name, arguments, and options.

func (*RdsAccount) ElementType

func (*RdsAccount) ElementType() reflect.Type

func (*RdsAccount) ToRdsAccountOutput

func (i *RdsAccount) ToRdsAccountOutput() RdsAccountOutput

func (*RdsAccount) ToRdsAccountOutputWithContext

func (i *RdsAccount) ToRdsAccountOutputWithContext(ctx context.Context) RdsAccountOutput

func (*RdsAccount) ToRdsAccountPtrOutput

func (i *RdsAccount) ToRdsAccountPtrOutput() RdsAccountPtrOutput

func (*RdsAccount) ToRdsAccountPtrOutputWithContext

func (i *RdsAccount) ToRdsAccountPtrOutputWithContext(ctx context.Context) RdsAccountPtrOutput

type RdsAccountArgs

type RdsAccountArgs struct {
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringPtrInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and end with letters or numbers, The length must be 2-63 characters for PostgreSQL, otherwise the length must be 2-32 characters.
	AccountName pulumi.StringPtrInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	AccountPassword pulumi.StringPtrInput
	// Privilege type of account. Default to `Normal`.
	// `Normal`: Common privilege.
	// `Super`: High privilege.
	AccountType pulumi.StringPtrInput
	// The Id of instance in which account belongs.
	DbInstanceId pulumi.StringPtrInput
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringPtrInput
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a RdsAccount resource.

func (RdsAccountArgs) ElementType

func (RdsAccountArgs) ElementType() reflect.Type

type RdsAccountArray

type RdsAccountArray []RdsAccountInput

func (RdsAccountArray) ElementType

func (RdsAccountArray) ElementType() reflect.Type

func (RdsAccountArray) ToRdsAccountArrayOutput

func (i RdsAccountArray) ToRdsAccountArrayOutput() RdsAccountArrayOutput

func (RdsAccountArray) ToRdsAccountArrayOutputWithContext

func (i RdsAccountArray) ToRdsAccountArrayOutputWithContext(ctx context.Context) RdsAccountArrayOutput

type RdsAccountArrayInput

type RdsAccountArrayInput interface {
	pulumi.Input

	ToRdsAccountArrayOutput() RdsAccountArrayOutput
	ToRdsAccountArrayOutputWithContext(context.Context) RdsAccountArrayOutput
}

RdsAccountArrayInput is an input type that accepts RdsAccountArray and RdsAccountArrayOutput values. You can construct a concrete instance of `RdsAccountArrayInput` via:

RdsAccountArray{ RdsAccountArgs{...} }

type RdsAccountArrayOutput

type RdsAccountArrayOutput struct{ *pulumi.OutputState }

func (RdsAccountArrayOutput) ElementType

func (RdsAccountArrayOutput) ElementType() reflect.Type

func (RdsAccountArrayOutput) Index

func (RdsAccountArrayOutput) ToRdsAccountArrayOutput

func (o RdsAccountArrayOutput) ToRdsAccountArrayOutput() RdsAccountArrayOutput

func (RdsAccountArrayOutput) ToRdsAccountArrayOutputWithContext

func (o RdsAccountArrayOutput) ToRdsAccountArrayOutputWithContext(ctx context.Context) RdsAccountArrayOutput

type RdsAccountInput

type RdsAccountInput interface {
	pulumi.Input

	ToRdsAccountOutput() RdsAccountOutput
	ToRdsAccountOutputWithContext(ctx context.Context) RdsAccountOutput
}

type RdsAccountMap

type RdsAccountMap map[string]RdsAccountInput

func (RdsAccountMap) ElementType

func (RdsAccountMap) ElementType() reflect.Type

func (RdsAccountMap) ToRdsAccountMapOutput

func (i RdsAccountMap) ToRdsAccountMapOutput() RdsAccountMapOutput

func (RdsAccountMap) ToRdsAccountMapOutputWithContext

func (i RdsAccountMap) ToRdsAccountMapOutputWithContext(ctx context.Context) RdsAccountMapOutput

type RdsAccountMapInput

type RdsAccountMapInput interface {
	pulumi.Input

	ToRdsAccountMapOutput() RdsAccountMapOutput
	ToRdsAccountMapOutputWithContext(context.Context) RdsAccountMapOutput
}

RdsAccountMapInput is an input type that accepts RdsAccountMap and RdsAccountMapOutput values. You can construct a concrete instance of `RdsAccountMapInput` via:

RdsAccountMap{ "key": RdsAccountArgs{...} }

type RdsAccountMapOutput

type RdsAccountMapOutput struct{ *pulumi.OutputState }

func (RdsAccountMapOutput) ElementType

func (RdsAccountMapOutput) ElementType() reflect.Type

func (RdsAccountMapOutput) MapIndex

func (RdsAccountMapOutput) ToRdsAccountMapOutput

func (o RdsAccountMapOutput) ToRdsAccountMapOutput() RdsAccountMapOutput

func (RdsAccountMapOutput) ToRdsAccountMapOutputWithContext

func (o RdsAccountMapOutput) ToRdsAccountMapOutputWithContext(ctx context.Context) RdsAccountMapOutput

type RdsAccountOutput

type RdsAccountOutput struct{ *pulumi.OutputState }

func (RdsAccountOutput) ElementType

func (RdsAccountOutput) ElementType() reflect.Type

func (RdsAccountOutput) ToRdsAccountOutput

func (o RdsAccountOutput) ToRdsAccountOutput() RdsAccountOutput

func (RdsAccountOutput) ToRdsAccountOutputWithContext

func (o RdsAccountOutput) ToRdsAccountOutputWithContext(ctx context.Context) RdsAccountOutput

func (RdsAccountOutput) ToRdsAccountPtrOutput

func (o RdsAccountOutput) ToRdsAccountPtrOutput() RdsAccountPtrOutput

func (RdsAccountOutput) ToRdsAccountPtrOutputWithContext

func (o RdsAccountOutput) ToRdsAccountPtrOutputWithContext(ctx context.Context) RdsAccountPtrOutput

type RdsAccountPtrInput

type RdsAccountPtrInput interface {
	pulumi.Input

	ToRdsAccountPtrOutput() RdsAccountPtrOutput
	ToRdsAccountPtrOutputWithContext(ctx context.Context) RdsAccountPtrOutput
}

type RdsAccountPtrOutput

type RdsAccountPtrOutput struct{ *pulumi.OutputState }

func (RdsAccountPtrOutput) Elem added in v3.9.0

func (RdsAccountPtrOutput) ElementType

func (RdsAccountPtrOutput) ElementType() reflect.Type

func (RdsAccountPtrOutput) ToRdsAccountPtrOutput

func (o RdsAccountPtrOutput) ToRdsAccountPtrOutput() RdsAccountPtrOutput

func (RdsAccountPtrOutput) ToRdsAccountPtrOutputWithContext

func (o RdsAccountPtrOutput) ToRdsAccountPtrOutputWithContext(ctx context.Context) RdsAccountPtrOutput

type RdsAccountState

type RdsAccountState struct {
	// Database description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringPtrInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and end with letters or numbers, The length must be 2-63 characters for PostgreSQL, otherwise the length must be 2-32 characters.
	AccountName pulumi.StringPtrInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters. You have to specify one of `password` and `kmsEncryptedPassword` fields.
	AccountPassword pulumi.StringPtrInput
	// Privilege type of account. Default to `Normal`.
	// `Normal`: Common privilege.
	// `Super`: High privilege.
	AccountType pulumi.StringPtrInput
	// The Id of instance in which account belongs.
	DbInstanceId pulumi.StringPtrInput
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.
	InstanceId pulumi.StringPtrInput
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	// The status of the resource. Valid values: `Available`, `Unavailable`.
	Status pulumi.StringPtrInput
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringPtrInput
}

func (RdsAccountState) ElementType

func (RdsAccountState) ElementType() reflect.Type

type RdsBackup added in v3.13.0

type RdsBackup struct {
	pulumi.CustomResourceState

	// The backup id.
	BackupId pulumi.StringOutput `pulumi:"backupId"`
	// The type of backup that you want to perform. Default value: `Physical`. Valid values: `Logical`, `Physical` and `Snapshot`.
	BackupMethod pulumi.StringOutput `pulumi:"backupMethod"`
	// The policy that you want to use for the backup task. Valid values:
	// * **db**: specifies to perform a database-level backup.
	// * **instance**: specifies to perform an instance-level backup.
	BackupStrategy pulumi.StringPtrOutput `pulumi:"backupStrategy"`
	// The method that you want to use for the backup task. Default value: `Auto`. Valid values:
	// * **Auto**: specifies to automatically perform a full or incremental backup.
	// * **FullBackup**: specifies to perform a full backup.
	BackupType pulumi.StringOutput `pulumi:"backupType"`
	// The db instance id.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The names of the databases whose data you want to back up. Separate the names of the databases with commas (,).
	DbName pulumi.StringPtrOutput `pulumi:"dbName"`
	// Remove form state when resource cannot be deleted. Valid values: `true` and `false`.
	RemoveFromState pulumi.BoolPtrOutput `pulumi:"removeFromState"`
	// Indicates whether the data backup file can be deleted. Valid values: `Enabled` and `Disabled`.
	StoreStatus pulumi.StringOutput `pulumi:"storeStatus"`
}

Provides a RDS Backup resource.

For information about RDS Backup and how to use it, see [What is Backup](https://www.alibabacloud.com/help/doc-detail/26272.htm).

> **NOTE:** Available in v1.149.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleInstance, err := rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("5.6"),
			InstanceType:          pulumi.String("rds.mysql.t1.small"),
			InstanceStorage:       pulumi.Int(30),
			InstanceChargeType:    pulumi.String("Postpaid"),
			DbInstanceStorageType: pulumi.String("local_ssd"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsBackup(ctx, "exampleRdsBackup", &rds.RdsBackupArgs{
			DbInstanceId: exampleInstance.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Backup can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/rdsBackup:RdsBackup example <db_instance_id>:<backup_id>

```

func GetRdsBackup added in v3.13.0

func GetRdsBackup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsBackupState, opts ...pulumi.ResourceOption) (*RdsBackup, error)

GetRdsBackup gets an existing RdsBackup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRdsBackup added in v3.13.0

func NewRdsBackup(ctx *pulumi.Context,
	name string, args *RdsBackupArgs, opts ...pulumi.ResourceOption) (*RdsBackup, error)

NewRdsBackup registers a new resource with the given unique name, arguments, and options.

func (*RdsBackup) ElementType added in v3.13.0

func (*RdsBackup) ElementType() reflect.Type

func (*RdsBackup) ToRdsBackupOutput added in v3.13.0

func (i *RdsBackup) ToRdsBackupOutput() RdsBackupOutput

func (*RdsBackup) ToRdsBackupOutputWithContext added in v3.13.0

func (i *RdsBackup) ToRdsBackupOutputWithContext(ctx context.Context) RdsBackupOutput

func (*RdsBackup) ToRdsBackupPtrOutput added in v3.13.0

func (i *RdsBackup) ToRdsBackupPtrOutput() RdsBackupPtrOutput

func (*RdsBackup) ToRdsBackupPtrOutputWithContext added in v3.13.0

func (i *RdsBackup) ToRdsBackupPtrOutputWithContext(ctx context.Context) RdsBackupPtrOutput

type RdsBackupArgs added in v3.13.0

type RdsBackupArgs struct {
	// The type of backup that you want to perform. Default value: `Physical`. Valid values: `Logical`, `Physical` and `Snapshot`.
	BackupMethod pulumi.StringPtrInput
	// The policy that you want to use for the backup task. Valid values:
	// * **db**: specifies to perform a database-level backup.
	// * **instance**: specifies to perform an instance-level backup.
	BackupStrategy pulumi.StringPtrInput
	// The method that you want to use for the backup task. Default value: `Auto`. Valid values:
	// * **Auto**: specifies to automatically perform a full or incremental backup.
	// * **FullBackup**: specifies to perform a full backup.
	BackupType pulumi.StringPtrInput
	// The db instance id.
	DbInstanceId pulumi.StringInput
	// The names of the databases whose data you want to back up. Separate the names of the databases with commas (,).
	DbName pulumi.StringPtrInput
	// Remove form state when resource cannot be deleted. Valid values: `true` and `false`.
	RemoveFromState pulumi.BoolPtrInput
}

The set of arguments for constructing a RdsBackup resource.

func (RdsBackupArgs) ElementType added in v3.13.0

func (RdsBackupArgs) ElementType() reflect.Type

type RdsBackupArray added in v3.13.0

type RdsBackupArray []RdsBackupInput

func (RdsBackupArray) ElementType added in v3.13.0

func (RdsBackupArray) ElementType() reflect.Type

func (RdsBackupArray) ToRdsBackupArrayOutput added in v3.13.0

func (i RdsBackupArray) ToRdsBackupArrayOutput() RdsBackupArrayOutput

func (RdsBackupArray) ToRdsBackupArrayOutputWithContext added in v3.13.0

func (i RdsBackupArray) ToRdsBackupArrayOutputWithContext(ctx context.Context) RdsBackupArrayOutput

type RdsBackupArrayInput added in v3.13.0

type RdsBackupArrayInput interface {
	pulumi.Input

	ToRdsBackupArrayOutput() RdsBackupArrayOutput
	ToRdsBackupArrayOutputWithContext(context.Context) RdsBackupArrayOutput
}

RdsBackupArrayInput is an input type that accepts RdsBackupArray and RdsBackupArrayOutput values. You can construct a concrete instance of `RdsBackupArrayInput` via:

RdsBackupArray{ RdsBackupArgs{...} }

type RdsBackupArrayOutput added in v3.13.0

type RdsBackupArrayOutput struct{ *pulumi.OutputState }

func (RdsBackupArrayOutput) ElementType added in v3.13.0

func (RdsBackupArrayOutput) ElementType() reflect.Type

func (RdsBackupArrayOutput) Index added in v3.13.0

func (RdsBackupArrayOutput) ToRdsBackupArrayOutput added in v3.13.0

func (o RdsBackupArrayOutput) ToRdsBackupArrayOutput() RdsBackupArrayOutput

func (RdsBackupArrayOutput) ToRdsBackupArrayOutputWithContext added in v3.13.0

func (o RdsBackupArrayOutput) ToRdsBackupArrayOutputWithContext(ctx context.Context) RdsBackupArrayOutput

type RdsBackupInput added in v3.13.0

type RdsBackupInput interface {
	pulumi.Input

	ToRdsBackupOutput() RdsBackupOutput
	ToRdsBackupOutputWithContext(ctx context.Context) RdsBackupOutput
}

type RdsBackupMap added in v3.13.0

type RdsBackupMap map[string]RdsBackupInput

func (RdsBackupMap) ElementType added in v3.13.0

func (RdsBackupMap) ElementType() reflect.Type

func (RdsBackupMap) ToRdsBackupMapOutput added in v3.13.0

func (i RdsBackupMap) ToRdsBackupMapOutput() RdsBackupMapOutput

func (RdsBackupMap) ToRdsBackupMapOutputWithContext added in v3.13.0

func (i RdsBackupMap) ToRdsBackupMapOutputWithContext(ctx context.Context) RdsBackupMapOutput

type RdsBackupMapInput added in v3.13.0

type RdsBackupMapInput interface {
	pulumi.Input

	ToRdsBackupMapOutput() RdsBackupMapOutput
	ToRdsBackupMapOutputWithContext(context.Context) RdsBackupMapOutput
}

RdsBackupMapInput is an input type that accepts RdsBackupMap and RdsBackupMapOutput values. You can construct a concrete instance of `RdsBackupMapInput` via:

RdsBackupMap{ "key": RdsBackupArgs{...} }

type RdsBackupMapOutput added in v3.13.0

type RdsBackupMapOutput struct{ *pulumi.OutputState }

func (RdsBackupMapOutput) ElementType added in v3.13.0

func (RdsBackupMapOutput) ElementType() reflect.Type

func (RdsBackupMapOutput) MapIndex added in v3.13.0

func (RdsBackupMapOutput) ToRdsBackupMapOutput added in v3.13.0

func (o RdsBackupMapOutput) ToRdsBackupMapOutput() RdsBackupMapOutput

func (RdsBackupMapOutput) ToRdsBackupMapOutputWithContext added in v3.13.0

func (o RdsBackupMapOutput) ToRdsBackupMapOutputWithContext(ctx context.Context) RdsBackupMapOutput

type RdsBackupOutput added in v3.13.0

type RdsBackupOutput struct{ *pulumi.OutputState }

func (RdsBackupOutput) ElementType added in v3.13.0

func (RdsBackupOutput) ElementType() reflect.Type

func (RdsBackupOutput) ToRdsBackupOutput added in v3.13.0

func (o RdsBackupOutput) ToRdsBackupOutput() RdsBackupOutput

func (RdsBackupOutput) ToRdsBackupOutputWithContext added in v3.13.0

func (o RdsBackupOutput) ToRdsBackupOutputWithContext(ctx context.Context) RdsBackupOutput

func (RdsBackupOutput) ToRdsBackupPtrOutput added in v3.13.0

func (o RdsBackupOutput) ToRdsBackupPtrOutput() RdsBackupPtrOutput

func (RdsBackupOutput) ToRdsBackupPtrOutputWithContext added in v3.13.0

func (o RdsBackupOutput) ToRdsBackupPtrOutputWithContext(ctx context.Context) RdsBackupPtrOutput

type RdsBackupPtrInput added in v3.13.0

type RdsBackupPtrInput interface {
	pulumi.Input

	ToRdsBackupPtrOutput() RdsBackupPtrOutput
	ToRdsBackupPtrOutputWithContext(ctx context.Context) RdsBackupPtrOutput
}

type RdsBackupPtrOutput added in v3.13.0

type RdsBackupPtrOutput struct{ *pulumi.OutputState }

func (RdsBackupPtrOutput) Elem added in v3.13.0

func (RdsBackupPtrOutput) ElementType added in v3.13.0

func (RdsBackupPtrOutput) ElementType() reflect.Type

func (RdsBackupPtrOutput) ToRdsBackupPtrOutput added in v3.13.0

func (o RdsBackupPtrOutput) ToRdsBackupPtrOutput() RdsBackupPtrOutput

func (RdsBackupPtrOutput) ToRdsBackupPtrOutputWithContext added in v3.13.0

func (o RdsBackupPtrOutput) ToRdsBackupPtrOutputWithContext(ctx context.Context) RdsBackupPtrOutput

type RdsBackupState added in v3.13.0

type RdsBackupState struct {
	// The backup id.
	BackupId pulumi.StringPtrInput
	// The type of backup that you want to perform. Default value: `Physical`. Valid values: `Logical`, `Physical` and `Snapshot`.
	BackupMethod pulumi.StringPtrInput
	// The policy that you want to use for the backup task. Valid values:
	// * **db**: specifies to perform a database-level backup.
	// * **instance**: specifies to perform an instance-level backup.
	BackupStrategy pulumi.StringPtrInput
	// The method that you want to use for the backup task. Default value: `Auto`. Valid values:
	// * **Auto**: specifies to automatically perform a full or incremental backup.
	// * **FullBackup**: specifies to perform a full backup.
	BackupType pulumi.StringPtrInput
	// The db instance id.
	DbInstanceId pulumi.StringPtrInput
	// The names of the databases whose data you want to back up. Separate the names of the databases with commas (,).
	DbName pulumi.StringPtrInput
	// Remove form state when resource cannot be deleted. Valid values: `true` and `false`.
	RemoveFromState pulumi.BoolPtrInput
	// Indicates whether the data backup file can be deleted. Valid values: `Enabled` and `Disabled`.
	StoreStatus pulumi.StringPtrInput
}

func (RdsBackupState) ElementType added in v3.13.0

func (RdsBackupState) ElementType() reflect.Type

type RdsCloneDbInstance added in v3.13.0

type RdsCloneDbInstance struct {
	pulumi.CustomResourceState

	// This parameter is only supported by the RDS PostgreSQL cloud disk version. This parameter indicates the authentication method. It is allowed only when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	Acl pulumi.StringOutput `pulumi:"acl"`
	// How to upgrade the minor version of the instance. Valid values:
	// * **Auto**: automatically upgrade the minor version.
	// * **Manual**: It is not automatically upgraded. It is only mandatory when the current version is offline.
	AutoUpgradeMinorVersion pulumi.StringOutput `pulumi:"autoUpgradeMinorVersion"`
	// The ID of the data backup file you want to use. You can call the DescribeBackups operation to query the most recent data backup file list.
	BackupId pulumi.StringPtrOutput `pulumi:"backupId"`
	// The type of backup that is used to restore the data of the original instance. Valid values:
	// * **FullBackup**: full backup
	// * **IncrementalBackup**: incremental backup
	BackupType pulumi.StringPtrOutput `pulumi:"backupType"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the certificate type. When the value of sslAction is Open, the default value of this parameter is aliyun. Value range:
	// * **aliyun**: using cloud certificates
	// * **custom**: use a custom certificate. Valid values: `aliyun`, `custom`.
	CaType pulumi.StringOutput `pulumi:"caType"`
	// Instance series. Valid values:
	// * **Basic**: Basic Edition
	// * **HighAvailability**: High availability
	// * **AlwaysOn**: Cluster Edition
	// * **Finance**: Three-node Enterprise Edition.
	Category pulumi.StringOutput `pulumi:"category"`
	// The file that contains the certificate used for TDE.
	Certificate pulumi.StringPtrOutput `pulumi:"certificate"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the public key of the client certification authority. If the value of clientCaEnabled is 1, this parameter must be configured.
	ClientCaCert pulumi.StringPtrOutput `pulumi:"clientCaCert"`
	// The client ca enabled.
	ClientCaEnabled pulumi.IntPtrOutput `pulumi:"clientCaEnabled"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, which indicates that the client revokes the certificate file. If the value of clientCrlEnabled is 1, this parameter must be configured.
	ClientCertRevocationList pulumi.StringPtrOutput `pulumi:"clientCertRevocationList"`
	// The client crl enabled.
	ClientCrlEnabled pulumi.IntPtrOutput `pulumi:"clientCrlEnabled"`
	// The database connection address.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The connection string prefix.
	ConnectionStringPrefix pulumi.StringPtrOutput `pulumi:"connectionStringPrefix"`
	// The instance type of the new instance. For information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceClass pulumi.StringOutput `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrOutput `pulumi:"dbInstanceDescription"`
	// The storage capacity of the new instance. Unit: GB. The storage capacity increases in increments of 5 GB. For more information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceStorage pulumi.IntOutput `pulumi:"dbInstanceStorage"`
	// The type of storage media that is used for the new instance. Valid values:
	// * **local_ssd**: local SSDs
	// * **cloud_ssd**: standard SSDs
	// * **cloud_essd**: enhanced SSDs (ESSDs) of performance level 1 (PL1)
	// * **cloud_essd2**: ESSDs of PL2
	// * **cloud_essd3**: ESSDs of PL3
	DbInstanceStorageType pulumi.StringOutput `pulumi:"dbInstanceStorageType"`
	// The name of the database for which you want to enable TDE. Up to 50 names can be entered in a single request. If you specify multiple names, separate these names with commas (,).
	DbName pulumi.StringPtrOutput `pulumi:"dbName"`
	// The names of the databases that you want to create on the new instance.
	DbNames pulumi.StringPtrOutput `pulumi:"dbNames"`
	// The ID of the dedicated cluster to which the new instance belongs. This parameter takes effect only when you create the new instance in a dedicated cluster.
	DedicatedHostGroupId pulumi.StringPtrOutput `pulumi:"dedicatedHostGroupId"`
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrOutput `pulumi:"direction"`
	// The effective time.
	EffectiveTime pulumi.StringPtrOutput `pulumi:"effectiveTime"`
	// The ID of the private key.
	EncryptionKey pulumi.StringPtrOutput `pulumi:"encryptionKey"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database version. Value:
	// * MySQL:**5.5/5.6/5.7/8.0**
	// * SQL Server:**2008r2/08r2_ent_ha/2012/2012_ent_ha/2012_std_ha/2012_web/2014_std_ha/2016_ent_ha/2016_std_ha/2016_web/2017_std_ha/2017_ent/2019_std_ha/2019_ent**
	// * PostgreSQL:**9.4/10.0/11.0/12.0/13.0**
	// * PPAS:**9.3/10.0**
	// * MariaDB:**10.3**.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrOutput `pulumi:"forceRestart"`
	// The high availability mode. Valid values:
	// * **RPO**: Data persistence is preferred. The instance preferentially ensures data reliability to minimize data loss. Use this mode if you have higher requirements on data consistency.
	// * **RTO**: Instance availability is preferred. The instance restores services as soon as possible to ensure availability. Use this mode if you have higher requirements on service availability.
	HaMode pulumi.StringOutput `pulumi:"haMode"`
	// The network type of the instance. Valid values:
	// * **Classic**: Classic Network
	// * **VPC**: VPC.
	InstanceNetworkType pulumi.StringOutput `pulumi:"instanceNetworkType"`
	// The maintainable time period of the instance. Format: <I> HH:mm</I> Z-<I> HH:mm</I> Z(UTC time).
	MaintainTime pulumi.StringOutput `pulumi:"maintainTime"`
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters RdsCloneDbInstanceParameterArrayOutput `pulumi:"parameters"`
	// The password of the certificate.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The period. Valid values: `Month`, `Year`.
	Period pulumi.StringPtrOutput `pulumi:"period"`
	// The port.
	Port pulumi.StringOutput `pulumi:"port"`
	// The intranet IP address of the new instance must be within the specified vSwitch IP address range. By default, the system automatically allocates by using **VPCId** and **VSwitchId**.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// The file that contains the private key used for TDE.
	PrivateKey pulumi.StringPtrOutput `pulumi:"privateKey"`
	// The released keep policy.
	ReleasedKeepPolicy pulumi.StringPtrOutput `pulumi:"releasedKeepPolicy"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, indicating the authentication method of the replication permission. It is only allowed when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	ReplicationAcl pulumi.StringOutput `pulumi:"replicationAcl"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrOutput `pulumi:"resourceGroupId"`
	// Specifies whether to restore only the databases and tables that you specify. The value 1 specifies to restore only the specified databases and tables. If you do not want to restore only the specified databases or tables, you can choose not to specify this parameter.
	RestoreTable pulumi.StringPtrOutput `pulumi:"restoreTable"`
	// The point in time to which you want to restore the data of the original instance. The point in time must fall within the specified log backup retention period. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrOutput `pulumi:"restoreTime"`
	// The Alibaba Cloud Resource Name (ARN) of a RAM role. A RAM role is a virtual RAM identity that you can create within your Alibaba Cloud account. For more information, see [RAM role overview](https://www.alibabacloud.com/doc-detail/93689.htm).
	RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"`
	// The IP address whitelist of the instance. Separate multiple IP addresses with commas (,) and cannot be repeated. The following two formats are supported:
	// * IP address form, for example: 10.23.12.24.
	// * CIDR format, for example, 10.23.12.0/24 (no Inter-Domain Routing, 24 indicates the length of the prefix in the address, ranging from 1 to 32).
	SecurityIps pulumi.StringArrayOutput `pulumi:"securityIps"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the content of the server certificate. If the CAType value is custom, this parameter must be configured.
	ServerCert pulumi.StringOutput `pulumi:"serverCert"`
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the private key of the server certificate. If the value of CAType is custom, this parameter must be configured.
	ServerKey pulumi.StringOutput `pulumi:"serverKey"`
	// The source biz.
	SourceBiz pulumi.StringPtrOutput `pulumi:"sourceBiz"`
	// The source db instance id.
	SourceDbInstanceId pulumi.StringOutput `pulumi:"sourceDbInstanceId"`
	// Enable or disable SSL. Valid values: `0` and `1`.
	SslEnabled pulumi.IntOutput `pulumi:"sslEnabled"`
	// The time at which you want to apply the specification changes. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrOutput `pulumi:"switchTime"`
	// [The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values:
	// * **Sync**: strong synchronization
	// * **Semi-sync**: Semi-synchronous
	// * **Async**: asynchronous
	SyncMode pulumi.StringOutput `pulumi:"syncMode"`
	// The information about the databases and tables that you want to restore. Format:
	// [{"type":"db","name":"The original name of Database 1","newname":"The new name of Database 1","tables":[{"type":"table","name":"The original name of Table 1 in Database 1","newname":"The new name of Table 1 in Database 1"},{"type":"table","name":"The original name of Table 2 in Database 1","newname":"The new name of Table 2 in Database 1"}]},{"type":"db","name":"The original name of Database 2","newname":"The new name of Database 2","tables":[{"type":"table","name":"The original name of Table 1 in Database 2","newname":"The new name of Table 1 in Database 2"},{"type":"table","name":"The original name of Table 2 in Database 2","newname":"The new name of Table 2 in Database 2"}]}]
	TableMeta pulumi.StringPtrOutput `pulumi:"tableMeta"`
	// Specifies whether to enable TDE. Valid values:
	// * Enabled
	// * Disabled
	TdeStatus pulumi.StringPtrOutput `pulumi:"tdeStatus"`
	// The subscription period of the new instance. This parameter takes effect only when you select the subscription billing method for the new instance. Valid values:
	// * If you set the `Period` parameter to Year, the value of the UsedTime parameter ranges from 1 to 3.
	// * If you set the `Period` parameter to Month, the value of the UsedTime parameter ranges from 1 to 9.
	UsedTime pulumi.IntPtrOutput `pulumi:"usedTime"`
	// The ID of the VPC to which the new instance belongs.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The ID of the vSwitch associated with the specified VPC.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/doc-detail/26243.htm) operation to query the most recent region list.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a RDS Clone DB Instance resource.

For information about RDS Clone DB Instance and how to use it, see [What is ApsaraDB for RDS](https://www.alibabacloud.com/help/en/doc-detail/26092.htm).

> **NOTE:** Available in v1.149.0+.

## Example Usage ### Create a RDS MySQL clone instance

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf-testaccdbinstance"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		opt0 := creation
		exampleZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "exampleNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "exampleSwitch", &vpc.SwitchArgs{
			VpcId:     exampleNetwork.ID(),
			CidrBlock: pulumi.String("172.16.0.0/24"),
			ZoneId:    pulumi.String(exampleZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "exampleInstance", &rds.InstanceArgs{
			Engine:             pulumi.String("MySQL"),
			EngineVersion:      pulumi.String("5.6"),
			InstanceType:       pulumi.String("rds.mysql.s2.large"),
			InstanceStorage:    pulumi.Int(30),
			InstanceChargeType: pulumi.String("Postpaid"),
			InstanceName:       pulumi.String(name),
			VswitchId:          exampleSwitch.ID(),
			MonitoringPeriod:   pulumi.Int(60),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsCloneDbInstance(ctx, "exampleRdsCloneDbInstance", &rds.RdsCloneDbInstanceArgs{
			SourceDbInstanceId:    exampleInstance.ID(),
			DbInstanceStorageType: pulumi.String("local_ssd"),
			PaymentType:           pulumi.String("PayAsYouGo"),
			RestoreTime:           pulumi.String("2021-11-24T11:25:00Z"),
			DbInstanceStorage:     pulumi.Int(30),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Clone DB Instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/rdsCloneDbInstance:RdsCloneDbInstance example <id>

```

func GetRdsCloneDbInstance added in v3.13.0

func GetRdsCloneDbInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsCloneDbInstanceState, opts ...pulumi.ResourceOption) (*RdsCloneDbInstance, error)

GetRdsCloneDbInstance gets an existing RdsCloneDbInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRdsCloneDbInstance added in v3.13.0

func NewRdsCloneDbInstance(ctx *pulumi.Context,
	name string, args *RdsCloneDbInstanceArgs, opts ...pulumi.ResourceOption) (*RdsCloneDbInstance, error)

NewRdsCloneDbInstance registers a new resource with the given unique name, arguments, and options.

func (*RdsCloneDbInstance) ElementType added in v3.13.0

func (*RdsCloneDbInstance) ElementType() reflect.Type

func (*RdsCloneDbInstance) ToRdsCloneDbInstanceOutput added in v3.13.0

func (i *RdsCloneDbInstance) ToRdsCloneDbInstanceOutput() RdsCloneDbInstanceOutput

func (*RdsCloneDbInstance) ToRdsCloneDbInstanceOutputWithContext added in v3.13.0

func (i *RdsCloneDbInstance) ToRdsCloneDbInstanceOutputWithContext(ctx context.Context) RdsCloneDbInstanceOutput

func (*RdsCloneDbInstance) ToRdsCloneDbInstancePtrOutput added in v3.13.0

func (i *RdsCloneDbInstance) ToRdsCloneDbInstancePtrOutput() RdsCloneDbInstancePtrOutput

func (*RdsCloneDbInstance) ToRdsCloneDbInstancePtrOutputWithContext added in v3.13.0

func (i *RdsCloneDbInstance) ToRdsCloneDbInstancePtrOutputWithContext(ctx context.Context) RdsCloneDbInstancePtrOutput

type RdsCloneDbInstanceArgs added in v3.13.0

type RdsCloneDbInstanceArgs struct {
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. This parameter indicates the authentication method. It is allowed only when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	Acl pulumi.StringPtrInput
	// How to upgrade the minor version of the instance. Valid values:
	// * **Auto**: automatically upgrade the minor version.
	// * **Manual**: It is not automatically upgraded. It is only mandatory when the current version is offline.
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The ID of the data backup file you want to use. You can call the DescribeBackups operation to query the most recent data backup file list.
	BackupId pulumi.StringPtrInput
	// The type of backup that is used to restore the data of the original instance. Valid values:
	// * **FullBackup**: full backup
	// * **IncrementalBackup**: incremental backup
	BackupType pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the certificate type. When the value of sslAction is Open, the default value of this parameter is aliyun. Value range:
	// * **aliyun**: using cloud certificates
	// * **custom**: use a custom certificate. Valid values: `aliyun`, `custom`.
	CaType pulumi.StringPtrInput
	// Instance series. Valid values:
	// * **Basic**: Basic Edition
	// * **HighAvailability**: High availability
	// * **AlwaysOn**: Cluster Edition
	// * **Finance**: Three-node Enterprise Edition.
	Category pulumi.StringPtrInput
	// The file that contains the certificate used for TDE.
	Certificate pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the public key of the client certification authority. If the value of clientCaEnabled is 1, this parameter must be configured.
	ClientCaCert pulumi.StringPtrInput
	// The client ca enabled.
	ClientCaEnabled pulumi.IntPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, which indicates that the client revokes the certificate file. If the value of clientCrlEnabled is 1, this parameter must be configured.
	ClientCertRevocationList pulumi.StringPtrInput
	// The client crl enabled.
	ClientCrlEnabled pulumi.IntPtrInput
	// The connection string prefix.
	ConnectionStringPrefix pulumi.StringPtrInput
	// The instance type of the new instance. For information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceClass pulumi.StringPtrInput
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrInput
	// The storage capacity of the new instance. Unit: GB. The storage capacity increases in increments of 5 GB. For more information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceStorage pulumi.IntPtrInput
	// The type of storage media that is used for the new instance. Valid values:
	// * **local_ssd**: local SSDs
	// * **cloud_ssd**: standard SSDs
	// * **cloud_essd**: enhanced SSDs (ESSDs) of performance level 1 (PL1)
	// * **cloud_essd2**: ESSDs of PL2
	// * **cloud_essd3**: ESSDs of PL3
	DbInstanceStorageType pulumi.StringInput
	// The name of the database for which you want to enable TDE. Up to 50 names can be entered in a single request. If you specify multiple names, separate these names with commas (,).
	DbName pulumi.StringPtrInput
	// The names of the databases that you want to create on the new instance.
	DbNames pulumi.StringPtrInput
	// The ID of the dedicated cluster to which the new instance belongs. This parameter takes effect only when you create the new instance in a dedicated cluster.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringPtrInput
	// Database version. Value:
	// * MySQL:**5.5/5.6/5.7/8.0**
	// * SQL Server:**2008r2/08r2_ent_ha/2012/2012_ent_ha/2012_std_ha/2012_web/2014_std_ha/2016_ent_ha/2016_std_ha/2016_web/2017_std_ha/2017_ent/2019_std_ha/2019_ent**
	// * PostgreSQL:**9.4/10.0/11.0/12.0/13.0**
	// * PPAS:**9.3/10.0**
	// * MariaDB:**10.3**.
	EngineVersion pulumi.StringPtrInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The high availability mode. Valid values:
	// * **RPO**: Data persistence is preferred. The instance preferentially ensures data reliability to minimize data loss. Use this mode if you have higher requirements on data consistency.
	// * **RTO**: Instance availability is preferred. The instance restores services as soon as possible to ensure availability. Use this mode if you have higher requirements on service availability.
	HaMode pulumi.StringPtrInput
	// The network type of the instance. Valid values:
	// * **Classic**: Classic Network
	// * **VPC**: VPC.
	InstanceNetworkType pulumi.StringPtrInput
	// The maintainable time period of the instance. Format: <I> HH:mm</I> Z-<I> HH:mm</I> Z(UTC time).
	MaintainTime pulumi.StringPtrInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters RdsCloneDbInstanceParameterArrayInput
	// The password of the certificate.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringInput
	// The period. Valid values: `Month`, `Year`.
	Period pulumi.StringPtrInput
	// The port.
	Port pulumi.StringPtrInput
	// The intranet IP address of the new instance must be within the specified vSwitch IP address range. By default, the system automatically allocates by using **VPCId** and **VSwitchId**.
	PrivateIpAddress pulumi.StringPtrInput
	// The file that contains the private key used for TDE.
	PrivateKey pulumi.StringPtrInput
	// The released keep policy.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, indicating the authentication method of the replication permission. It is only allowed when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	ReplicationAcl pulumi.StringPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// Specifies whether to restore only the databases and tables that you specify. The value 1 specifies to restore only the specified databases and tables. If you do not want to restore only the specified databases or tables, you can choose not to specify this parameter.
	RestoreTable pulumi.StringPtrInput
	// The point in time to which you want to restore the data of the original instance. The point in time must fall within the specified log backup retention period. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrInput
	// The Alibaba Cloud Resource Name (ARN) of a RAM role. A RAM role is a virtual RAM identity that you can create within your Alibaba Cloud account. For more information, see [RAM role overview](https://www.alibabacloud.com/doc-detail/93689.htm).
	RoleArn pulumi.StringPtrInput
	// The IP address whitelist of the instance. Separate multiple IP addresses with commas (,) and cannot be repeated. The following two formats are supported:
	// * IP address form, for example: 10.23.12.24.
	// * CIDR format, for example, 10.23.12.0/24 (no Inter-Domain Routing, 24 indicates the length of the prefix in the address, ranging from 1 to 32).
	SecurityIps pulumi.StringArrayInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the content of the server certificate. If the CAType value is custom, this parameter must be configured.
	ServerCert pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the private key of the server certificate. If the value of CAType is custom, this parameter must be configured.
	ServerKey pulumi.StringPtrInput
	// The source biz.
	SourceBiz pulumi.StringPtrInput
	// The source db instance id.
	SourceDbInstanceId pulumi.StringInput
	// Enable or disable SSL. Valid values: `0` and `1`.
	SslEnabled pulumi.IntPtrInput
	// The time at which you want to apply the specification changes. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// [The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values:
	// * **Sync**: strong synchronization
	// * **Semi-sync**: Semi-synchronous
	// * **Async**: asynchronous
	SyncMode pulumi.StringPtrInput
	// The information about the databases and tables that you want to restore. Format:
	// [{"type":"db","name":"The original name of Database 1","newname":"The new name of Database 1","tables":[{"type":"table","name":"The original name of Table 1 in Database 1","newname":"The new name of Table 1 in Database 1"},{"type":"table","name":"The original name of Table 2 in Database 1","newname":"The new name of Table 2 in Database 1"}]},{"type":"db","name":"The original name of Database 2","newname":"The new name of Database 2","tables":[{"type":"table","name":"The original name of Table 1 in Database 2","newname":"The new name of Table 1 in Database 2"},{"type":"table","name":"The original name of Table 2 in Database 2","newname":"The new name of Table 2 in Database 2"}]}]
	TableMeta pulumi.StringPtrInput
	// Specifies whether to enable TDE. Valid values:
	// * Enabled
	// * Disabled
	TdeStatus pulumi.StringPtrInput
	// The subscription period of the new instance. This parameter takes effect only when you select the subscription billing method for the new instance. Valid values:
	// * If you set the `Period` parameter to Year, the value of the UsedTime parameter ranges from 1 to 3.
	// * If you set the `Period` parameter to Month, the value of the UsedTime parameter ranges from 1 to 9.
	UsedTime pulumi.IntPtrInput
	// The ID of the VPC to which the new instance belongs.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/doc-detail/26243.htm) operation to query the most recent region list.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a RdsCloneDbInstance resource.

func (RdsCloneDbInstanceArgs) ElementType added in v3.13.0

func (RdsCloneDbInstanceArgs) ElementType() reflect.Type

type RdsCloneDbInstanceArray added in v3.13.0

type RdsCloneDbInstanceArray []RdsCloneDbInstanceInput

func (RdsCloneDbInstanceArray) ElementType added in v3.13.0

func (RdsCloneDbInstanceArray) ElementType() reflect.Type

func (RdsCloneDbInstanceArray) ToRdsCloneDbInstanceArrayOutput added in v3.13.0

func (i RdsCloneDbInstanceArray) ToRdsCloneDbInstanceArrayOutput() RdsCloneDbInstanceArrayOutput

func (RdsCloneDbInstanceArray) ToRdsCloneDbInstanceArrayOutputWithContext added in v3.13.0

func (i RdsCloneDbInstanceArray) ToRdsCloneDbInstanceArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceArrayOutput

type RdsCloneDbInstanceArrayInput added in v3.13.0

type RdsCloneDbInstanceArrayInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceArrayOutput() RdsCloneDbInstanceArrayOutput
	ToRdsCloneDbInstanceArrayOutputWithContext(context.Context) RdsCloneDbInstanceArrayOutput
}

RdsCloneDbInstanceArrayInput is an input type that accepts RdsCloneDbInstanceArray and RdsCloneDbInstanceArrayOutput values. You can construct a concrete instance of `RdsCloneDbInstanceArrayInput` via:

RdsCloneDbInstanceArray{ RdsCloneDbInstanceArgs{...} }

type RdsCloneDbInstanceArrayOutput added in v3.13.0

type RdsCloneDbInstanceArrayOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceArrayOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceArrayOutput) Index added in v3.13.0

func (RdsCloneDbInstanceArrayOutput) ToRdsCloneDbInstanceArrayOutput added in v3.13.0

func (o RdsCloneDbInstanceArrayOutput) ToRdsCloneDbInstanceArrayOutput() RdsCloneDbInstanceArrayOutput

func (RdsCloneDbInstanceArrayOutput) ToRdsCloneDbInstanceArrayOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceArrayOutput) ToRdsCloneDbInstanceArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceArrayOutput

type RdsCloneDbInstanceInput added in v3.13.0

type RdsCloneDbInstanceInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceOutput() RdsCloneDbInstanceOutput
	ToRdsCloneDbInstanceOutputWithContext(ctx context.Context) RdsCloneDbInstanceOutput
}

type RdsCloneDbInstanceMap added in v3.13.0

type RdsCloneDbInstanceMap map[string]RdsCloneDbInstanceInput

func (RdsCloneDbInstanceMap) ElementType added in v3.13.0

func (RdsCloneDbInstanceMap) ElementType() reflect.Type

func (RdsCloneDbInstanceMap) ToRdsCloneDbInstanceMapOutput added in v3.13.0

func (i RdsCloneDbInstanceMap) ToRdsCloneDbInstanceMapOutput() RdsCloneDbInstanceMapOutput

func (RdsCloneDbInstanceMap) ToRdsCloneDbInstanceMapOutputWithContext added in v3.13.0

func (i RdsCloneDbInstanceMap) ToRdsCloneDbInstanceMapOutputWithContext(ctx context.Context) RdsCloneDbInstanceMapOutput

type RdsCloneDbInstanceMapInput added in v3.13.0

type RdsCloneDbInstanceMapInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceMapOutput() RdsCloneDbInstanceMapOutput
	ToRdsCloneDbInstanceMapOutputWithContext(context.Context) RdsCloneDbInstanceMapOutput
}

RdsCloneDbInstanceMapInput is an input type that accepts RdsCloneDbInstanceMap and RdsCloneDbInstanceMapOutput values. You can construct a concrete instance of `RdsCloneDbInstanceMapInput` via:

RdsCloneDbInstanceMap{ "key": RdsCloneDbInstanceArgs{...} }

type RdsCloneDbInstanceMapOutput added in v3.13.0

type RdsCloneDbInstanceMapOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceMapOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceMapOutput) MapIndex added in v3.13.0

func (RdsCloneDbInstanceMapOutput) ToRdsCloneDbInstanceMapOutput added in v3.13.0

func (o RdsCloneDbInstanceMapOutput) ToRdsCloneDbInstanceMapOutput() RdsCloneDbInstanceMapOutput

func (RdsCloneDbInstanceMapOutput) ToRdsCloneDbInstanceMapOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceMapOutput) ToRdsCloneDbInstanceMapOutputWithContext(ctx context.Context) RdsCloneDbInstanceMapOutput

type RdsCloneDbInstanceOutput added in v3.13.0

type RdsCloneDbInstanceOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceOutput) ElementType() reflect.Type

func (RdsCloneDbInstanceOutput) ToRdsCloneDbInstanceOutput added in v3.13.0

func (o RdsCloneDbInstanceOutput) ToRdsCloneDbInstanceOutput() RdsCloneDbInstanceOutput

func (RdsCloneDbInstanceOutput) ToRdsCloneDbInstanceOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceOutput) ToRdsCloneDbInstanceOutputWithContext(ctx context.Context) RdsCloneDbInstanceOutput

func (RdsCloneDbInstanceOutput) ToRdsCloneDbInstancePtrOutput added in v3.13.0

func (o RdsCloneDbInstanceOutput) ToRdsCloneDbInstancePtrOutput() RdsCloneDbInstancePtrOutput

func (RdsCloneDbInstanceOutput) ToRdsCloneDbInstancePtrOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceOutput) ToRdsCloneDbInstancePtrOutputWithContext(ctx context.Context) RdsCloneDbInstancePtrOutput

type RdsCloneDbInstanceParameter added in v3.13.0

type RdsCloneDbInstanceParameter struct {
	Name  string `pulumi:"name"`
	Value string `pulumi:"value"`
}

type RdsCloneDbInstanceParameterArgs added in v3.13.0

type RdsCloneDbInstanceParameterArgs struct {
	Name  pulumi.StringInput `pulumi:"name"`
	Value pulumi.StringInput `pulumi:"value"`
}

func (RdsCloneDbInstanceParameterArgs) ElementType added in v3.13.0

func (RdsCloneDbInstanceParameterArgs) ToRdsCloneDbInstanceParameterOutput added in v3.13.0

func (i RdsCloneDbInstanceParameterArgs) ToRdsCloneDbInstanceParameterOutput() RdsCloneDbInstanceParameterOutput

func (RdsCloneDbInstanceParameterArgs) ToRdsCloneDbInstanceParameterOutputWithContext added in v3.13.0

func (i RdsCloneDbInstanceParameterArgs) ToRdsCloneDbInstanceParameterOutputWithContext(ctx context.Context) RdsCloneDbInstanceParameterOutput

type RdsCloneDbInstanceParameterArray added in v3.13.0

type RdsCloneDbInstanceParameterArray []RdsCloneDbInstanceParameterInput

func (RdsCloneDbInstanceParameterArray) ElementType added in v3.13.0

func (RdsCloneDbInstanceParameterArray) ToRdsCloneDbInstanceParameterArrayOutput added in v3.13.0

func (i RdsCloneDbInstanceParameterArray) ToRdsCloneDbInstanceParameterArrayOutput() RdsCloneDbInstanceParameterArrayOutput

func (RdsCloneDbInstanceParameterArray) ToRdsCloneDbInstanceParameterArrayOutputWithContext added in v3.13.0

func (i RdsCloneDbInstanceParameterArray) ToRdsCloneDbInstanceParameterArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceParameterArrayOutput

type RdsCloneDbInstanceParameterArrayInput added in v3.13.0

type RdsCloneDbInstanceParameterArrayInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceParameterArrayOutput() RdsCloneDbInstanceParameterArrayOutput
	ToRdsCloneDbInstanceParameterArrayOutputWithContext(context.Context) RdsCloneDbInstanceParameterArrayOutput
}

RdsCloneDbInstanceParameterArrayInput is an input type that accepts RdsCloneDbInstanceParameterArray and RdsCloneDbInstanceParameterArrayOutput values. You can construct a concrete instance of `RdsCloneDbInstanceParameterArrayInput` via:

RdsCloneDbInstanceParameterArray{ RdsCloneDbInstanceParameterArgs{...} }

type RdsCloneDbInstanceParameterArrayOutput added in v3.13.0

type RdsCloneDbInstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceParameterArrayOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceParameterArrayOutput) Index added in v3.13.0

func (RdsCloneDbInstanceParameterArrayOutput) ToRdsCloneDbInstanceParameterArrayOutput added in v3.13.0

func (o RdsCloneDbInstanceParameterArrayOutput) ToRdsCloneDbInstanceParameterArrayOutput() RdsCloneDbInstanceParameterArrayOutput

func (RdsCloneDbInstanceParameterArrayOutput) ToRdsCloneDbInstanceParameterArrayOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceParameterArrayOutput) ToRdsCloneDbInstanceParameterArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceParameterArrayOutput

type RdsCloneDbInstanceParameterInput added in v3.13.0

type RdsCloneDbInstanceParameterInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceParameterOutput() RdsCloneDbInstanceParameterOutput
	ToRdsCloneDbInstanceParameterOutputWithContext(context.Context) RdsCloneDbInstanceParameterOutput
}

RdsCloneDbInstanceParameterInput is an input type that accepts RdsCloneDbInstanceParameterArgs and RdsCloneDbInstanceParameterOutput values. You can construct a concrete instance of `RdsCloneDbInstanceParameterInput` via:

RdsCloneDbInstanceParameterArgs{...}

type RdsCloneDbInstanceParameterOutput added in v3.13.0

type RdsCloneDbInstanceParameterOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceParameterOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceParameterOutput) Name added in v3.13.0

func (RdsCloneDbInstanceParameterOutput) ToRdsCloneDbInstanceParameterOutput added in v3.13.0

func (o RdsCloneDbInstanceParameterOutput) ToRdsCloneDbInstanceParameterOutput() RdsCloneDbInstanceParameterOutput

func (RdsCloneDbInstanceParameterOutput) ToRdsCloneDbInstanceParameterOutputWithContext added in v3.13.0

func (o RdsCloneDbInstanceParameterOutput) ToRdsCloneDbInstanceParameterOutputWithContext(ctx context.Context) RdsCloneDbInstanceParameterOutput

func (RdsCloneDbInstanceParameterOutput) Value added in v3.13.0

type RdsCloneDbInstancePtrInput added in v3.13.0

type RdsCloneDbInstancePtrInput interface {
	pulumi.Input

	ToRdsCloneDbInstancePtrOutput() RdsCloneDbInstancePtrOutput
	ToRdsCloneDbInstancePtrOutputWithContext(ctx context.Context) RdsCloneDbInstancePtrOutput
}

type RdsCloneDbInstancePtrOutput added in v3.13.0

type RdsCloneDbInstancePtrOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstancePtrOutput) Elem added in v3.13.0

func (RdsCloneDbInstancePtrOutput) ElementType added in v3.13.0

func (RdsCloneDbInstancePtrOutput) ToRdsCloneDbInstancePtrOutput added in v3.13.0

func (o RdsCloneDbInstancePtrOutput) ToRdsCloneDbInstancePtrOutput() RdsCloneDbInstancePtrOutput

func (RdsCloneDbInstancePtrOutput) ToRdsCloneDbInstancePtrOutputWithContext added in v3.13.0

func (o RdsCloneDbInstancePtrOutput) ToRdsCloneDbInstancePtrOutputWithContext(ctx context.Context) RdsCloneDbInstancePtrOutput

type RdsCloneDbInstanceState added in v3.13.0

type RdsCloneDbInstanceState struct {
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. This parameter indicates the authentication method. It is allowed only when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	Acl pulumi.StringPtrInput
	// How to upgrade the minor version of the instance. Valid values:
	// * **Auto**: automatically upgrade the minor version.
	// * **Manual**: It is not automatically upgraded. It is only mandatory when the current version is offline.
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The ID of the data backup file you want to use. You can call the DescribeBackups operation to query the most recent data backup file list.
	BackupId pulumi.StringPtrInput
	// The type of backup that is used to restore the data of the original instance. Valid values:
	// * **FullBackup**: full backup
	// * **IncrementalBackup**: incremental backup
	BackupType pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the certificate type. When the value of sslAction is Open, the default value of this parameter is aliyun. Value range:
	// * **aliyun**: using cloud certificates
	// * **custom**: use a custom certificate. Valid values: `aliyun`, `custom`.
	CaType pulumi.StringPtrInput
	// Instance series. Valid values:
	// * **Basic**: Basic Edition
	// * **HighAvailability**: High availability
	// * **AlwaysOn**: Cluster Edition
	// * **Finance**: Three-node Enterprise Edition.
	Category pulumi.StringPtrInput
	// The file that contains the certificate used for TDE.
	Certificate pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the public key of the client certification authority. If the value of clientCaEnabled is 1, this parameter must be configured.
	ClientCaCert pulumi.StringPtrInput
	// The client ca enabled.
	ClientCaEnabled pulumi.IntPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, which indicates that the client revokes the certificate file. If the value of clientCrlEnabled is 1, this parameter must be configured.
	ClientCertRevocationList pulumi.StringPtrInput
	// The client crl enabled.
	ClientCrlEnabled pulumi.IntPtrInput
	// The database connection address.
	ConnectionString pulumi.StringPtrInput
	// The connection string prefix.
	ConnectionStringPrefix pulumi.StringPtrInput
	// The instance type of the new instance. For information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceClass pulumi.StringPtrInput
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrInput
	// The storage capacity of the new instance. Unit: GB. The storage capacity increases in increments of 5 GB. For more information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/doc-detail/26312.htm).
	DbInstanceStorage pulumi.IntPtrInput
	// The type of storage media that is used for the new instance. Valid values:
	// * **local_ssd**: local SSDs
	// * **cloud_ssd**: standard SSDs
	// * **cloud_essd**: enhanced SSDs (ESSDs) of performance level 1 (PL1)
	// * **cloud_essd2**: ESSDs of PL2
	// * **cloud_essd3**: ESSDs of PL3
	DbInstanceStorageType pulumi.StringPtrInput
	// The name of the database for which you want to enable TDE. Up to 50 names can be entered in a single request. If you specify multiple names, separate these names with commas (,).
	DbName pulumi.StringPtrInput
	// The names of the databases that you want to create on the new instance.
	DbNames pulumi.StringPtrInput
	// The ID of the dedicated cluster to which the new instance belongs. This parameter takes effect only when you create the new instance in a dedicated cluster.
	DedicatedHostGroupId pulumi.StringPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, and PPAS.
	Engine pulumi.StringPtrInput
	// Database version. Value:
	// * MySQL:**5.5/5.6/5.7/8.0**
	// * SQL Server:**2008r2/08r2_ent_ha/2012/2012_ent_ha/2012_std_ha/2012_web/2014_std_ha/2016_ent_ha/2016_std_ha/2016_web/2017_std_ha/2017_ent/2019_std_ha/2019_ent**
	// * PostgreSQL:**9.4/10.0/11.0/12.0/13.0**
	// * PPAS:**9.3/10.0**
	// * MariaDB:**10.3**.
	EngineVersion pulumi.StringPtrInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The high availability mode. Valid values:
	// * **RPO**: Data persistence is preferred. The instance preferentially ensures data reliability to minimize data loss. Use this mode if you have higher requirements on data consistency.
	// * **RTO**: Instance availability is preferred. The instance restores services as soon as possible to ensure availability. Use this mode if you have higher requirements on service availability.
	HaMode pulumi.StringPtrInput
	// The network type of the instance. Valid values:
	// * **Classic**: Classic Network
	// * **VPC**: VPC.
	InstanceNetworkType pulumi.StringPtrInput
	// The maintainable time period of the instance. Format: <I> HH:mm</I> Z-<I> HH:mm</I> Z(UTC time).
	MaintainTime pulumi.StringPtrInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters RdsCloneDbInstanceParameterArrayInput
	// The password of the certificate.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringPtrInput
	// The period. Valid values: `Month`, `Year`.
	Period pulumi.StringPtrInput
	// The port.
	Port pulumi.StringPtrInput
	// The intranet IP address of the new instance must be within the specified vSwitch IP address range. By default, the system automatically allocates by using **VPCId** and **VSwitchId**.
	PrivateIpAddress pulumi.StringPtrInput
	// The file that contains the private key used for TDE.
	PrivateKey pulumi.StringPtrInput
	// The released keep policy.
	ReleasedKeepPolicy pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version, indicating the authentication method of the replication permission. It is only allowed when the public key of the client certificate authority is enabled. Valid values: `cert` and `perfer` and `verify-ca` and `verify-full (supported by RDS PostgreSQL above 12)`.
	ReplicationAcl pulumi.StringPtrInput
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput
	// Specifies whether to restore only the databases and tables that you specify. The value 1 specifies to restore only the specified databases and tables. If you do not want to restore only the specified databases or tables, you can choose not to specify this parameter.
	RestoreTable pulumi.StringPtrInput
	// The point in time to which you want to restore the data of the original instance. The point in time must fall within the specified log backup retention period. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrInput
	// The Alibaba Cloud Resource Name (ARN) of a RAM role. A RAM role is a virtual RAM identity that you can create within your Alibaba Cloud account. For more information, see [RAM role overview](https://www.alibabacloud.com/doc-detail/93689.htm).
	RoleArn pulumi.StringPtrInput
	// The IP address whitelist of the instance. Separate multiple IP addresses with commas (,) and cannot be repeated. The following two formats are supported:
	// * IP address form, for example: 10.23.12.24.
	// * CIDR format, for example, 10.23.12.0/24 (no Inter-Domain Routing, 24 indicates the length of the prefix in the address, ranging from 1 to 32).
	SecurityIps pulumi.StringArrayInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the content of the server certificate. If the CAType value is custom, this parameter must be configured.
	ServerCert pulumi.StringPtrInput
	// This parameter is only supported by the RDS PostgreSQL cloud disk version. It indicates the private key of the server certificate. If the value of CAType is custom, this parameter must be configured.
	ServerKey pulumi.StringPtrInput
	// The source biz.
	SourceBiz pulumi.StringPtrInput
	// The source db instance id.
	SourceDbInstanceId pulumi.StringPtrInput
	// Enable or disable SSL. Valid values: `0` and `1`.
	SslEnabled pulumi.IntPtrInput
	// The time at which you want to apply the specification changes. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// [The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values:
	// * **Sync**: strong synchronization
	// * **Semi-sync**: Semi-synchronous
	// * **Async**: asynchronous
	SyncMode pulumi.StringPtrInput
	// The information about the databases and tables that you want to restore. Format:
	// [{"type":"db","name":"The original name of Database 1","newname":"The new name of Database 1","tables":[{"type":"table","name":"The original name of Table 1 in Database 1","newname":"The new name of Table 1 in Database 1"},{"type":"table","name":"The original name of Table 2 in Database 1","newname":"The new name of Table 2 in Database 1"}]},{"type":"db","name":"The original name of Database 2","newname":"The new name of Database 2","tables":[{"type":"table","name":"The original name of Table 1 in Database 2","newname":"The new name of Table 1 in Database 2"},{"type":"table","name":"The original name of Table 2 in Database 2","newname":"The new name of Table 2 in Database 2"}]}]
	TableMeta pulumi.StringPtrInput
	// Specifies whether to enable TDE. Valid values:
	// * Enabled
	// * Disabled
	TdeStatus pulumi.StringPtrInput
	// The subscription period of the new instance. This parameter takes effect only when you select the subscription billing method for the new instance. Valid values:
	// * If you set the `Period` parameter to Year, the value of the UsedTime parameter ranges from 1 to 3.
	// * If you set the `Period` parameter to Month, the value of the UsedTime parameter ranges from 1 to 9.
	UsedTime pulumi.IntPtrInput
	// The ID of the VPC to which the new instance belongs.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/doc-detail/26243.htm) operation to query the most recent region list.
	ZoneId pulumi.StringPtrInput
}

func (RdsCloneDbInstanceState) ElementType added in v3.13.0

func (RdsCloneDbInstanceState) ElementType() reflect.Type

type RdsParameterGroup

type RdsParameterGroup struct {
	pulumi.CustomResourceState

	// The database engine. Valid values: `mysql`, `mariadb`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// The version of the database engine. Valid values: mysql: `5.1`, `5.5`, `5.6`, `5.7`, `8.0`; mariadb: `10.3`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Parameter list.
	ParamDetails RdsParameterGroupParamDetailArrayOutput `pulumi:"paramDetails"`
	// The description of the parameter template.
	ParameterGroupDesc pulumi.StringPtrOutput `pulumi:"parameterGroupDesc"`
	// The name of the parameter template.
	ParameterGroupName pulumi.StringOutput `pulumi:"parameterGroupName"`
}

Provides a RDS Parameter Group resource.

For information about RDS Parameter Group and how to use it, see [What is Parameter Group](https://www.alibabacloud.com/help/en/doc-detail/144839.htm).

> **NOTE:** Available in v1.119.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rds.NewRdsParameterGroup(ctx, "_default", &rds.RdsParameterGroupArgs{
			Engine:        pulumi.String("mysql"),
			EngineVersion: pulumi.String("5.7"),
			ParamDetails: rds.RdsParameterGroupParamDetailArray{
				&rds.RdsParameterGroupParamDetailArgs{
					ParamName:  pulumi.String("back_log"),
					ParamValue: pulumi.String("4000"),
				},
				&rds.RdsParameterGroupParamDetailArgs{
					ParamName:  pulumi.String("wait_timeout"),
					ParamValue: pulumi.String("86460"),
				},
			},
			ParameterGroupDesc: pulumi.String("test"),
			ParameterGroupName: pulumi.String("test1234"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Parameter Group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/rdsParameterGroup:RdsParameterGroup example <id>

```

func GetRdsParameterGroup

func GetRdsParameterGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsParameterGroupState, opts ...pulumi.ResourceOption) (*RdsParameterGroup, error)

GetRdsParameterGroup gets an existing RdsParameterGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRdsParameterGroup

func NewRdsParameterGroup(ctx *pulumi.Context,
	name string, args *RdsParameterGroupArgs, opts ...pulumi.ResourceOption) (*RdsParameterGroup, error)

NewRdsParameterGroup registers a new resource with the given unique name, arguments, and options.

func (*RdsParameterGroup) ElementType

func (*RdsParameterGroup) ElementType() reflect.Type

func (*RdsParameterGroup) ToRdsParameterGroupOutput

func (i *RdsParameterGroup) ToRdsParameterGroupOutput() RdsParameterGroupOutput

func (*RdsParameterGroup) ToRdsParameterGroupOutputWithContext

func (i *RdsParameterGroup) ToRdsParameterGroupOutputWithContext(ctx context.Context) RdsParameterGroupOutput

func (*RdsParameterGroup) ToRdsParameterGroupPtrOutput

func (i *RdsParameterGroup) ToRdsParameterGroupPtrOutput() RdsParameterGroupPtrOutput

func (*RdsParameterGroup) ToRdsParameterGroupPtrOutputWithContext

func (i *RdsParameterGroup) ToRdsParameterGroupPtrOutputWithContext(ctx context.Context) RdsParameterGroupPtrOutput

type RdsParameterGroupArgs

type RdsParameterGroupArgs struct {
	// The database engine. Valid values: `mysql`, `mariadb`.
	Engine pulumi.StringInput
	// The version of the database engine. Valid values: mysql: `5.1`, `5.5`, `5.6`, `5.7`, `8.0`; mariadb: `10.3`.
	EngineVersion pulumi.StringInput
	// Parameter list.
	ParamDetails RdsParameterGroupParamDetailArrayInput
	// The description of the parameter template.
	ParameterGroupDesc pulumi.StringPtrInput
	// The name of the parameter template.
	ParameterGroupName pulumi.StringInput
}

The set of arguments for constructing a RdsParameterGroup resource.

func (RdsParameterGroupArgs) ElementType

func (RdsParameterGroupArgs) ElementType() reflect.Type

type RdsParameterGroupArray

type RdsParameterGroupArray []RdsParameterGroupInput

func (RdsParameterGroupArray) ElementType

func (RdsParameterGroupArray) ElementType() reflect.Type

func (RdsParameterGroupArray) ToRdsParameterGroupArrayOutput

func (i RdsParameterGroupArray) ToRdsParameterGroupArrayOutput() RdsParameterGroupArrayOutput

func (RdsParameterGroupArray) ToRdsParameterGroupArrayOutputWithContext

func (i RdsParameterGroupArray) ToRdsParameterGroupArrayOutputWithContext(ctx context.Context) RdsParameterGroupArrayOutput

type RdsParameterGroupArrayInput

type RdsParameterGroupArrayInput interface {
	pulumi.Input

	ToRdsParameterGroupArrayOutput() RdsParameterGroupArrayOutput
	ToRdsParameterGroupArrayOutputWithContext(context.Context) RdsParameterGroupArrayOutput
}

RdsParameterGroupArrayInput is an input type that accepts RdsParameterGroupArray and RdsParameterGroupArrayOutput values. You can construct a concrete instance of `RdsParameterGroupArrayInput` via:

RdsParameterGroupArray{ RdsParameterGroupArgs{...} }

type RdsParameterGroupArrayOutput

type RdsParameterGroupArrayOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupArrayOutput) ElementType

func (RdsParameterGroupArrayOutput) Index

func (RdsParameterGroupArrayOutput) ToRdsParameterGroupArrayOutput

func (o RdsParameterGroupArrayOutput) ToRdsParameterGroupArrayOutput() RdsParameterGroupArrayOutput

func (RdsParameterGroupArrayOutput) ToRdsParameterGroupArrayOutputWithContext

func (o RdsParameterGroupArrayOutput) ToRdsParameterGroupArrayOutputWithContext(ctx context.Context) RdsParameterGroupArrayOutput

type RdsParameterGroupInput

type RdsParameterGroupInput interface {
	pulumi.Input

	ToRdsParameterGroupOutput() RdsParameterGroupOutput
	ToRdsParameterGroupOutputWithContext(ctx context.Context) RdsParameterGroupOutput
}

type RdsParameterGroupMap

type RdsParameterGroupMap map[string]RdsParameterGroupInput

func (RdsParameterGroupMap) ElementType

func (RdsParameterGroupMap) ElementType() reflect.Type

func (RdsParameterGroupMap) ToRdsParameterGroupMapOutput

func (i RdsParameterGroupMap) ToRdsParameterGroupMapOutput() RdsParameterGroupMapOutput

func (RdsParameterGroupMap) ToRdsParameterGroupMapOutputWithContext

func (i RdsParameterGroupMap) ToRdsParameterGroupMapOutputWithContext(ctx context.Context) RdsParameterGroupMapOutput

type RdsParameterGroupMapInput

type RdsParameterGroupMapInput interface {
	pulumi.Input

	ToRdsParameterGroupMapOutput() RdsParameterGroupMapOutput
	ToRdsParameterGroupMapOutputWithContext(context.Context) RdsParameterGroupMapOutput
}

RdsParameterGroupMapInput is an input type that accepts RdsParameterGroupMap and RdsParameterGroupMapOutput values. You can construct a concrete instance of `RdsParameterGroupMapInput` via:

RdsParameterGroupMap{ "key": RdsParameterGroupArgs{...} }

type RdsParameterGroupMapOutput

type RdsParameterGroupMapOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupMapOutput) ElementType

func (RdsParameterGroupMapOutput) ElementType() reflect.Type

func (RdsParameterGroupMapOutput) MapIndex

func (RdsParameterGroupMapOutput) ToRdsParameterGroupMapOutput

func (o RdsParameterGroupMapOutput) ToRdsParameterGroupMapOutput() RdsParameterGroupMapOutput

func (RdsParameterGroupMapOutput) ToRdsParameterGroupMapOutputWithContext

func (o RdsParameterGroupMapOutput) ToRdsParameterGroupMapOutputWithContext(ctx context.Context) RdsParameterGroupMapOutput

type RdsParameterGroupOutput

type RdsParameterGroupOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupOutput) ElementType

func (RdsParameterGroupOutput) ElementType() reflect.Type

func (RdsParameterGroupOutput) ToRdsParameterGroupOutput

func (o RdsParameterGroupOutput) ToRdsParameterGroupOutput() RdsParameterGroupOutput

func (RdsParameterGroupOutput) ToRdsParameterGroupOutputWithContext

func (o RdsParameterGroupOutput) ToRdsParameterGroupOutputWithContext(ctx context.Context) RdsParameterGroupOutput

func (RdsParameterGroupOutput) ToRdsParameterGroupPtrOutput

func (o RdsParameterGroupOutput) ToRdsParameterGroupPtrOutput() RdsParameterGroupPtrOutput

func (RdsParameterGroupOutput) ToRdsParameterGroupPtrOutputWithContext

func (o RdsParameterGroupOutput) ToRdsParameterGroupPtrOutputWithContext(ctx context.Context) RdsParameterGroupPtrOutput

type RdsParameterGroupParamDetail

type RdsParameterGroupParamDetail struct {
	// The name of a parameter.
	ParamName string `pulumi:"paramName"`
	// The value of a parameter.
	ParamValue string `pulumi:"paramValue"`
}

type RdsParameterGroupParamDetailArgs

type RdsParameterGroupParamDetailArgs struct {
	// The name of a parameter.
	ParamName pulumi.StringInput `pulumi:"paramName"`
	// The value of a parameter.
	ParamValue pulumi.StringInput `pulumi:"paramValue"`
}

func (RdsParameterGroupParamDetailArgs) ElementType

func (RdsParameterGroupParamDetailArgs) ToRdsParameterGroupParamDetailOutput

func (i RdsParameterGroupParamDetailArgs) ToRdsParameterGroupParamDetailOutput() RdsParameterGroupParamDetailOutput

func (RdsParameterGroupParamDetailArgs) ToRdsParameterGroupParamDetailOutputWithContext

func (i RdsParameterGroupParamDetailArgs) ToRdsParameterGroupParamDetailOutputWithContext(ctx context.Context) RdsParameterGroupParamDetailOutput

type RdsParameterGroupParamDetailArray

type RdsParameterGroupParamDetailArray []RdsParameterGroupParamDetailInput

func (RdsParameterGroupParamDetailArray) ElementType

func (RdsParameterGroupParamDetailArray) ToRdsParameterGroupParamDetailArrayOutput

func (i RdsParameterGroupParamDetailArray) ToRdsParameterGroupParamDetailArrayOutput() RdsParameterGroupParamDetailArrayOutput

func (RdsParameterGroupParamDetailArray) ToRdsParameterGroupParamDetailArrayOutputWithContext

func (i RdsParameterGroupParamDetailArray) ToRdsParameterGroupParamDetailArrayOutputWithContext(ctx context.Context) RdsParameterGroupParamDetailArrayOutput

type RdsParameterGroupParamDetailArrayInput

type RdsParameterGroupParamDetailArrayInput interface {
	pulumi.Input

	ToRdsParameterGroupParamDetailArrayOutput() RdsParameterGroupParamDetailArrayOutput
	ToRdsParameterGroupParamDetailArrayOutputWithContext(context.Context) RdsParameterGroupParamDetailArrayOutput
}

RdsParameterGroupParamDetailArrayInput is an input type that accepts RdsParameterGroupParamDetailArray and RdsParameterGroupParamDetailArrayOutput values. You can construct a concrete instance of `RdsParameterGroupParamDetailArrayInput` via:

RdsParameterGroupParamDetailArray{ RdsParameterGroupParamDetailArgs{...} }

type RdsParameterGroupParamDetailArrayOutput

type RdsParameterGroupParamDetailArrayOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupParamDetailArrayOutput) ElementType

func (RdsParameterGroupParamDetailArrayOutput) Index

func (RdsParameterGroupParamDetailArrayOutput) ToRdsParameterGroupParamDetailArrayOutput

func (o RdsParameterGroupParamDetailArrayOutput) ToRdsParameterGroupParamDetailArrayOutput() RdsParameterGroupParamDetailArrayOutput

func (RdsParameterGroupParamDetailArrayOutput) ToRdsParameterGroupParamDetailArrayOutputWithContext

func (o RdsParameterGroupParamDetailArrayOutput) ToRdsParameterGroupParamDetailArrayOutputWithContext(ctx context.Context) RdsParameterGroupParamDetailArrayOutput

type RdsParameterGroupParamDetailInput

type RdsParameterGroupParamDetailInput interface {
	pulumi.Input

	ToRdsParameterGroupParamDetailOutput() RdsParameterGroupParamDetailOutput
	ToRdsParameterGroupParamDetailOutputWithContext(context.Context) RdsParameterGroupParamDetailOutput
}

RdsParameterGroupParamDetailInput is an input type that accepts RdsParameterGroupParamDetailArgs and RdsParameterGroupParamDetailOutput values. You can construct a concrete instance of `RdsParameterGroupParamDetailInput` via:

RdsParameterGroupParamDetailArgs{...}

type RdsParameterGroupParamDetailOutput

type RdsParameterGroupParamDetailOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupParamDetailOutput) ElementType

func (RdsParameterGroupParamDetailOutput) ParamName

The name of a parameter.

func (RdsParameterGroupParamDetailOutput) ParamValue

The value of a parameter.

func (RdsParameterGroupParamDetailOutput) ToRdsParameterGroupParamDetailOutput

func (o RdsParameterGroupParamDetailOutput) ToRdsParameterGroupParamDetailOutput() RdsParameterGroupParamDetailOutput

func (RdsParameterGroupParamDetailOutput) ToRdsParameterGroupParamDetailOutputWithContext

func (o RdsParameterGroupParamDetailOutput) ToRdsParameterGroupParamDetailOutputWithContext(ctx context.Context) RdsParameterGroupParamDetailOutput

type RdsParameterGroupPtrInput

type RdsParameterGroupPtrInput interface {
	pulumi.Input

	ToRdsParameterGroupPtrOutput() RdsParameterGroupPtrOutput
	ToRdsParameterGroupPtrOutputWithContext(ctx context.Context) RdsParameterGroupPtrOutput
}

type RdsParameterGroupPtrOutput

type RdsParameterGroupPtrOutput struct{ *pulumi.OutputState }

func (RdsParameterGroupPtrOutput) Elem added in v3.9.0

func (RdsParameterGroupPtrOutput) ElementType

func (RdsParameterGroupPtrOutput) ElementType() reflect.Type

func (RdsParameterGroupPtrOutput) ToRdsParameterGroupPtrOutput

func (o RdsParameterGroupPtrOutput) ToRdsParameterGroupPtrOutput() RdsParameterGroupPtrOutput

func (RdsParameterGroupPtrOutput) ToRdsParameterGroupPtrOutputWithContext

func (o RdsParameterGroupPtrOutput) ToRdsParameterGroupPtrOutputWithContext(ctx context.Context) RdsParameterGroupPtrOutput

type RdsParameterGroupState

type RdsParameterGroupState struct {
	// The database engine. Valid values: `mysql`, `mariadb`.
	Engine pulumi.StringPtrInput
	// The version of the database engine. Valid values: mysql: `5.1`, `5.5`, `5.6`, `5.7`, `8.0`; mariadb: `10.3`.
	EngineVersion pulumi.StringPtrInput
	// Parameter list.
	ParamDetails RdsParameterGroupParamDetailArrayInput
	// The description of the parameter template.
	ParameterGroupDesc pulumi.StringPtrInput
	// The name of the parameter template.
	ParameterGroupName pulumi.StringPtrInput
}

func (RdsParameterGroupState) ElementType

func (RdsParameterGroupState) ElementType() reflect.Type

type ReadOnlyInstance

type ReadOnlyInstance struct {
	pulumi.CustomResourceState

	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringOutput `pulumi:"acl"`
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. It is valid only when `sslEnabled  = 1`. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringOutput `pulumi:"caType"`
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCaCert pulumi.StringPtrOutput `pulumi:"clientCaCert"`
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrOutput `pulumi:"clientCaEnabled"`
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCertRevocationList pulumi.StringPtrOutput `pulumi:"clientCertRevocationList"`
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled pulumi.IntPtrOutput `pulumi:"clientCrlEnabled"`
	// RDS database connection string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// Database type.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrOutput `pulumi:"forceRestart"`
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// User-defined DB instance storage space. Value range: [5, 2000] for MySQL/SQL Server HA dual node edition. Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceStorage pulumi.IntOutput `pulumi:"instanceStorage"`
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// ID of the master instance.
	MasterDbInstanceId pulumi.StringOutput `pulumi:"masterDbInstanceId"`
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters ReadOnlyInstanceParameterArrayOutput `pulumi:"parameters"`
	// RDS database connection port.
	Port pulumi.StringOutput `pulumi:"port"`
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	// > **NOTE:** Because of data backup and migration, change DB instance type and storage would cost 15~20 minutes. Please make full preparation before changing them.
	ReplicationAcl pulumi.StringOutput `pulumi:"replicationAcl"`
	// The ID of resource group which the DB read-only instance belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerCert pulumi.StringOutput `pulumi:"serverCert"`
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerKey pulumi.StringOutput `pulumi:"serverKey"`
	// Specifies whether to enable or disable SSL encryption. Valid values:
	// - 1: enables SSL encryption
	// - 0: disables SSL encryption
	SslEnabled pulumi.IntOutput `pulumi:"sslEnabled"`
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrOutput `pulumi:"switchTime"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringOutput `pulumi:"targetMinorVersion"`
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrOutput `pulumi:"upgradeDbInstanceKernelVersion"`
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrOutput `pulumi:"upgradeTime"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides an RDS readonly instance resource.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbInstancevpc"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "defaultInstance", &rds.InstanceArgs{
			Engine:             pulumi.String("MySQL"),
			EngineVersion:      pulumi.String("5.6"),
			InstanceType:       pulumi.String("rds.mysql.t1.small"),
			InstanceStorage:    pulumi.Int(20),
			InstanceChargeType: pulumi.String("Postpaid"),
			InstanceName:       pulumi.String(name),
			VswitchId:          defaultSwitch.ID(),
			SecurityIps: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewReadOnlyInstance(ctx, "defaultReadOnlyInstance", &rds.ReadOnlyInstanceArgs{
			MasterDbInstanceId: defaultInstance.ID(),
			ZoneId:             defaultInstance.ZoneId,
			EngineVersion:      defaultInstance.EngineVersion,
			InstanceType:       defaultInstance.InstanceType,
			InstanceStorage:    pulumi.Int(30),
			InstanceName:       pulumi.String(fmt.Sprintf("%v%v", name, "ro")),
			VswitchId:          defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS readonly instance can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/readOnlyInstance:ReadOnlyInstance example rm-abc12345678

```

func GetReadOnlyInstance

func GetReadOnlyInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReadOnlyInstanceState, opts ...pulumi.ResourceOption) (*ReadOnlyInstance, error)

GetReadOnlyInstance gets an existing ReadOnlyInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewReadOnlyInstance

func NewReadOnlyInstance(ctx *pulumi.Context,
	name string, args *ReadOnlyInstanceArgs, opts ...pulumi.ResourceOption) (*ReadOnlyInstance, error)

NewReadOnlyInstance registers a new resource with the given unique name, arguments, and options.

func (*ReadOnlyInstance) ElementType

func (*ReadOnlyInstance) ElementType() reflect.Type

func (*ReadOnlyInstance) ToReadOnlyInstanceOutput

func (i *ReadOnlyInstance) ToReadOnlyInstanceOutput() ReadOnlyInstanceOutput

func (*ReadOnlyInstance) ToReadOnlyInstanceOutputWithContext

func (i *ReadOnlyInstance) ToReadOnlyInstanceOutputWithContext(ctx context.Context) ReadOnlyInstanceOutput

func (*ReadOnlyInstance) ToReadOnlyInstancePtrOutput

func (i *ReadOnlyInstance) ToReadOnlyInstancePtrOutput() ReadOnlyInstancePtrOutput

func (*ReadOnlyInstance) ToReadOnlyInstancePtrOutputWithContext

func (i *ReadOnlyInstance) ToReadOnlyInstancePtrOutputWithContext(ctx context.Context) ReadOnlyInstancePtrOutput

type ReadOnlyInstanceArgs

type ReadOnlyInstanceArgs struct {
	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringPtrInput
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. It is valid only when `sslEnabled  = 1`. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringPtrInput
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCaCert pulumi.StringPtrInput
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrInput
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCertRevocationList pulumi.StringPtrInput
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled pulumi.IntPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// User-defined DB instance storage space. Value range: [5, 2000] for MySQL/SQL Server HA dual node edition. Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceStorage pulumi.IntInput
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringInput
	// ID of the master instance.
	MasterDbInstanceId pulumi.StringInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters ReadOnlyInstanceParameterArrayInput
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	// > **NOTE:** Because of data backup and migration, change DB instance type and storage would cost 15~20 minutes. Please make full preparation before changing them.
	ReplicationAcl pulumi.StringPtrInput
	// The ID of resource group which the DB read-only instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerCert pulumi.StringPtrInput
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerKey pulumi.StringPtrInput
	// Specifies whether to enable or disable SSL encryption. Valid values:
	// - 1: enables SSL encryption
	// - 0: disables SSL encryption
	SslEnabled pulumi.IntPtrInput
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringPtrInput
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a ReadOnlyInstance resource.

func (ReadOnlyInstanceArgs) ElementType

func (ReadOnlyInstanceArgs) ElementType() reflect.Type

type ReadOnlyInstanceArray

type ReadOnlyInstanceArray []ReadOnlyInstanceInput

func (ReadOnlyInstanceArray) ElementType

func (ReadOnlyInstanceArray) ElementType() reflect.Type

func (ReadOnlyInstanceArray) ToReadOnlyInstanceArrayOutput

func (i ReadOnlyInstanceArray) ToReadOnlyInstanceArrayOutput() ReadOnlyInstanceArrayOutput

func (ReadOnlyInstanceArray) ToReadOnlyInstanceArrayOutputWithContext

func (i ReadOnlyInstanceArray) ToReadOnlyInstanceArrayOutputWithContext(ctx context.Context) ReadOnlyInstanceArrayOutput

type ReadOnlyInstanceArrayInput

type ReadOnlyInstanceArrayInput interface {
	pulumi.Input

	ToReadOnlyInstanceArrayOutput() ReadOnlyInstanceArrayOutput
	ToReadOnlyInstanceArrayOutputWithContext(context.Context) ReadOnlyInstanceArrayOutput
}

ReadOnlyInstanceArrayInput is an input type that accepts ReadOnlyInstanceArray and ReadOnlyInstanceArrayOutput values. You can construct a concrete instance of `ReadOnlyInstanceArrayInput` via:

ReadOnlyInstanceArray{ ReadOnlyInstanceArgs{...} }

type ReadOnlyInstanceArrayOutput

type ReadOnlyInstanceArrayOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstanceArrayOutput) ElementType

func (ReadOnlyInstanceArrayOutput) Index

func (ReadOnlyInstanceArrayOutput) ToReadOnlyInstanceArrayOutput

func (o ReadOnlyInstanceArrayOutput) ToReadOnlyInstanceArrayOutput() ReadOnlyInstanceArrayOutput

func (ReadOnlyInstanceArrayOutput) ToReadOnlyInstanceArrayOutputWithContext

func (o ReadOnlyInstanceArrayOutput) ToReadOnlyInstanceArrayOutputWithContext(ctx context.Context) ReadOnlyInstanceArrayOutput

type ReadOnlyInstanceInput

type ReadOnlyInstanceInput interface {
	pulumi.Input

	ToReadOnlyInstanceOutput() ReadOnlyInstanceOutput
	ToReadOnlyInstanceOutputWithContext(ctx context.Context) ReadOnlyInstanceOutput
}

type ReadOnlyInstanceMap

type ReadOnlyInstanceMap map[string]ReadOnlyInstanceInput

func (ReadOnlyInstanceMap) ElementType

func (ReadOnlyInstanceMap) ElementType() reflect.Type

func (ReadOnlyInstanceMap) ToReadOnlyInstanceMapOutput

func (i ReadOnlyInstanceMap) ToReadOnlyInstanceMapOutput() ReadOnlyInstanceMapOutput

func (ReadOnlyInstanceMap) ToReadOnlyInstanceMapOutputWithContext

func (i ReadOnlyInstanceMap) ToReadOnlyInstanceMapOutputWithContext(ctx context.Context) ReadOnlyInstanceMapOutput

type ReadOnlyInstanceMapInput

type ReadOnlyInstanceMapInput interface {
	pulumi.Input

	ToReadOnlyInstanceMapOutput() ReadOnlyInstanceMapOutput
	ToReadOnlyInstanceMapOutputWithContext(context.Context) ReadOnlyInstanceMapOutput
}

ReadOnlyInstanceMapInput is an input type that accepts ReadOnlyInstanceMap and ReadOnlyInstanceMapOutput values. You can construct a concrete instance of `ReadOnlyInstanceMapInput` via:

ReadOnlyInstanceMap{ "key": ReadOnlyInstanceArgs{...} }

type ReadOnlyInstanceMapOutput

type ReadOnlyInstanceMapOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstanceMapOutput) ElementType

func (ReadOnlyInstanceMapOutput) ElementType() reflect.Type

func (ReadOnlyInstanceMapOutput) MapIndex

func (ReadOnlyInstanceMapOutput) ToReadOnlyInstanceMapOutput

func (o ReadOnlyInstanceMapOutput) ToReadOnlyInstanceMapOutput() ReadOnlyInstanceMapOutput

func (ReadOnlyInstanceMapOutput) ToReadOnlyInstanceMapOutputWithContext

func (o ReadOnlyInstanceMapOutput) ToReadOnlyInstanceMapOutputWithContext(ctx context.Context) ReadOnlyInstanceMapOutput

type ReadOnlyInstanceOutput

type ReadOnlyInstanceOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstanceOutput) ElementType

func (ReadOnlyInstanceOutput) ElementType() reflect.Type

func (ReadOnlyInstanceOutput) ToReadOnlyInstanceOutput

func (o ReadOnlyInstanceOutput) ToReadOnlyInstanceOutput() ReadOnlyInstanceOutput

func (ReadOnlyInstanceOutput) ToReadOnlyInstanceOutputWithContext

func (o ReadOnlyInstanceOutput) ToReadOnlyInstanceOutputWithContext(ctx context.Context) ReadOnlyInstanceOutput

func (ReadOnlyInstanceOutput) ToReadOnlyInstancePtrOutput

func (o ReadOnlyInstanceOutput) ToReadOnlyInstancePtrOutput() ReadOnlyInstancePtrOutput

func (ReadOnlyInstanceOutput) ToReadOnlyInstancePtrOutputWithContext

func (o ReadOnlyInstanceOutput) ToReadOnlyInstancePtrOutputWithContext(ctx context.Context) ReadOnlyInstancePtrOutput

type ReadOnlyInstanceParameter

type ReadOnlyInstanceParameter struct {
	Name  string `pulumi:"name"`
	Value string `pulumi:"value"`
}

type ReadOnlyInstanceParameterArgs

type ReadOnlyInstanceParameterArgs struct {
	Name  pulumi.StringInput `pulumi:"name"`
	Value pulumi.StringInput `pulumi:"value"`
}

func (ReadOnlyInstanceParameterArgs) ElementType

func (ReadOnlyInstanceParameterArgs) ToReadOnlyInstanceParameterOutput

func (i ReadOnlyInstanceParameterArgs) ToReadOnlyInstanceParameterOutput() ReadOnlyInstanceParameterOutput

func (ReadOnlyInstanceParameterArgs) ToReadOnlyInstanceParameterOutputWithContext

func (i ReadOnlyInstanceParameterArgs) ToReadOnlyInstanceParameterOutputWithContext(ctx context.Context) ReadOnlyInstanceParameterOutput

type ReadOnlyInstanceParameterArray

type ReadOnlyInstanceParameterArray []ReadOnlyInstanceParameterInput

func (ReadOnlyInstanceParameterArray) ElementType

func (ReadOnlyInstanceParameterArray) ToReadOnlyInstanceParameterArrayOutput

func (i ReadOnlyInstanceParameterArray) ToReadOnlyInstanceParameterArrayOutput() ReadOnlyInstanceParameterArrayOutput

func (ReadOnlyInstanceParameterArray) ToReadOnlyInstanceParameterArrayOutputWithContext

func (i ReadOnlyInstanceParameterArray) ToReadOnlyInstanceParameterArrayOutputWithContext(ctx context.Context) ReadOnlyInstanceParameterArrayOutput

type ReadOnlyInstanceParameterArrayInput

type ReadOnlyInstanceParameterArrayInput interface {
	pulumi.Input

	ToReadOnlyInstanceParameterArrayOutput() ReadOnlyInstanceParameterArrayOutput
	ToReadOnlyInstanceParameterArrayOutputWithContext(context.Context) ReadOnlyInstanceParameterArrayOutput
}

ReadOnlyInstanceParameterArrayInput is an input type that accepts ReadOnlyInstanceParameterArray and ReadOnlyInstanceParameterArrayOutput values. You can construct a concrete instance of `ReadOnlyInstanceParameterArrayInput` via:

ReadOnlyInstanceParameterArray{ ReadOnlyInstanceParameterArgs{...} }

type ReadOnlyInstanceParameterArrayOutput

type ReadOnlyInstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstanceParameterArrayOutput) ElementType

func (ReadOnlyInstanceParameterArrayOutput) Index

func (ReadOnlyInstanceParameterArrayOutput) ToReadOnlyInstanceParameterArrayOutput

func (o ReadOnlyInstanceParameterArrayOutput) ToReadOnlyInstanceParameterArrayOutput() ReadOnlyInstanceParameterArrayOutput

func (ReadOnlyInstanceParameterArrayOutput) ToReadOnlyInstanceParameterArrayOutputWithContext

func (o ReadOnlyInstanceParameterArrayOutput) ToReadOnlyInstanceParameterArrayOutputWithContext(ctx context.Context) ReadOnlyInstanceParameterArrayOutput

type ReadOnlyInstanceParameterInput

type ReadOnlyInstanceParameterInput interface {
	pulumi.Input

	ToReadOnlyInstanceParameterOutput() ReadOnlyInstanceParameterOutput
	ToReadOnlyInstanceParameterOutputWithContext(context.Context) ReadOnlyInstanceParameterOutput
}

ReadOnlyInstanceParameterInput is an input type that accepts ReadOnlyInstanceParameterArgs and ReadOnlyInstanceParameterOutput values. You can construct a concrete instance of `ReadOnlyInstanceParameterInput` via:

ReadOnlyInstanceParameterArgs{...}

type ReadOnlyInstanceParameterOutput

type ReadOnlyInstanceParameterOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstanceParameterOutput) ElementType

func (ReadOnlyInstanceParameterOutput) Name

func (ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutput

func (o ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutput() ReadOnlyInstanceParameterOutput

func (ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutputWithContext

func (o ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutputWithContext(ctx context.Context) ReadOnlyInstanceParameterOutput

func (ReadOnlyInstanceParameterOutput) Value

type ReadOnlyInstancePtrInput

type ReadOnlyInstancePtrInput interface {
	pulumi.Input

	ToReadOnlyInstancePtrOutput() ReadOnlyInstancePtrOutput
	ToReadOnlyInstancePtrOutputWithContext(ctx context.Context) ReadOnlyInstancePtrOutput
}

type ReadOnlyInstancePtrOutput

type ReadOnlyInstancePtrOutput struct{ *pulumi.OutputState }

func (ReadOnlyInstancePtrOutput) Elem added in v3.9.0

func (ReadOnlyInstancePtrOutput) ElementType

func (ReadOnlyInstancePtrOutput) ElementType() reflect.Type

func (ReadOnlyInstancePtrOutput) ToReadOnlyInstancePtrOutput

func (o ReadOnlyInstancePtrOutput) ToReadOnlyInstancePtrOutput() ReadOnlyInstancePtrOutput

func (ReadOnlyInstancePtrOutput) ToReadOnlyInstancePtrOutputWithContext

func (o ReadOnlyInstancePtrOutput) ToReadOnlyInstancePtrOutputWithContext(ctx context.Context) ReadOnlyInstancePtrOutput

type ReadOnlyInstanceState

type ReadOnlyInstanceState struct {
	// The method that is used to verify the identities of clients. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	Acl pulumi.StringPtrInput
	// The type of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the SSLEnabled parameter to 1, the default value of this parameter is aliyun. It is valid only when `sslEnabled  = 1`. Value range:
	// - aliyun: a cloud certificate
	// - custom: a custom certificate
	CaType pulumi.StringPtrInput
	// The public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCAEbabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCaCert pulumi.StringPtrInput
	// Specifies whether to enable the public key of the CA that issues client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the public key
	// - 0: disables the public key
	ClientCaEnabled pulumi.IntPtrInput
	// The CRL that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the ClientCrlEnabled parameter to 1, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ClientCertRevocationList pulumi.StringPtrInput
	// Specifies whether to enable a certificate revocation list (CRL) that contains revoked client certificates. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - 1: enables the CRL
	// - 0: disables the CRL
	ClientCrlEnabled pulumi.IntPtrInput
	// RDS database connection string.
	ConnectionString pulumi.StringPtrInput
	// Database type.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// User-defined DB instance storage space. Value range: [5, 2000] for MySQL/SQL Server HA dual node edition. Increase progressively at a rate of 5 GB. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceStorage pulumi.IntPtrInput
	// DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).
	InstanceType pulumi.StringPtrInput
	// ID of the master instance.
	MasterDbInstanceId pulumi.StringPtrInput
	// Set of parameters needs to be set after DB instance was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/26284.htm).
	Parameters ReadOnlyInstanceParameterArrayInput
	// RDS database connection port.
	Port pulumi.StringPtrInput
	// The method that is used to verify the replication permission. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. In addition, this parameter is available only when the public key of the CA that issues client certificates is enabled. It is valid only when `sslEnabled  = 1`. Valid values:
	// - cert
	// - perfer
	// - verify-ca
	// - verify-full (supported only when the instance runs PostgreSQL 12 or later)
	// > **NOTE:** Because of data backup and migration, change DB instance type and storage would cost 15~20 minutes. Please make full preparation before changing them.
	ReplicationAcl pulumi.StringPtrInput
	// The ID of resource group which the DB read-only instance belongs.
	ResourceGroupId pulumi.StringPtrInput
	// The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerCert pulumi.StringPtrInput
	// The private key of the server certificate. This parameter is supported only when the instance runs PostgreSQL with standard or enhanced SSDs. If you set the CAType parameter to custom, you must also specify this parameter. It is valid only when `sslEnabled  = 1`.
	ServerKey pulumi.StringPtrInput
	// Specifies whether to enable or disable SSL encryption. Valid values:
	// - 1: enables SSL encryption
	// - 0: disables SSL encryption
	SslEnabled pulumi.IntPtrInput
	// The specific point in time when you want to perform the update. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. It is valid only when `upgradeDbInstanceKernelVersion = true`. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The minor engine version to which you want to update the instance. If you do not specify this parameter, the instance is updated to the latest minor engine version. It is valid only when `upgradeDbInstanceKernelVersion = true`. You must specify the minor engine version in one of the following formats:
	// - PostgreSQL: rds_postgres_<Major engine version>00_<Minor engine version>. Example: rds_postgres_1200_20200830.
	// - MySQL: <RDS edition>_<Minor engine version>. Examples: rds_20200229, xcluster_20200229, and xcluster80_20200229. The following RDS editions are supported:
	// - rds: The instance runs RDS Basic or High-availability Edition.
	// - xcluster: The instance runs MySQL 5.7 on RDS Enterprise Edition.
	// - xcluster80: The instance runs MySQL 8.0 on RDS Enterprise Edition.
	// - SQLServer: <Minor engine version>. Example: 15.0.4073.23.
	TargetMinorVersion pulumi.StringPtrInput
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `upgradeDbInstanceKernelVersion = true`. Valid values:
	// - Immediate: The minor engine version is immediately updated.
	// - MaintainTime: The minor engine version is updated during the maintenance window. For more information about how to change the maintenance window, see ModifyDBInstanceMaintainTime.
	// - SpecifyTime: The minor engine version is updated at the point in time you specify.
	UpgradeTime pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringPtrInput
}

func (ReadOnlyInstanceState) ElementType

func (ReadOnlyInstanceState) ElementType() reflect.Type

type ReadWriteSplittingConnection

type ReadWriteSplittingConnection struct {
	pulumi.CustomResourceState

	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + 'rw'.
	ConnectionPrefix pulumi.StringPtrOutput `pulumi:"connectionPrefix"`
	// Connection instance string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// Read weight distribution mode. Values are as follows: `Standard` indicates automatic weight distribution based on types, `Custom` indicates custom weight distribution.
	DistributionType pulumi.StringOutput `pulumi:"distributionType"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Delay threshold, in seconds. The value range is 0 to 7200. Default to 30. Read requests are not routed to the read-only instances with a delay greater than the threshold.
	MaxDelayTime pulumi.IntOutput `pulumi:"maxDelayTime"`
	// Intranet connection port. Valid value: [3001-3999]. Default to 3306.
	Port pulumi.IntOutput `pulumi:"port"`
	// Read weight distribution. Read weights increase at a step of 100 up to 10,000. Enter weights in the following format: {"Instanceid":"Weight","Instanceid":"Weight"}. This parameter must be set when distributionType is set to Custom.
	Weight pulumi.MapOutput `pulumi:"weight"`
}

Provides an RDS read write splitting connection resource to allocate an Intranet connection string for RDS instance.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Rds"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbInstancevpc"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "defaultInstance", &rds.InstanceArgs{
			Engine:             pulumi.String("MySQL"),
			EngineVersion:      pulumi.String("5.6"),
			InstanceType:       pulumi.String("rds.mysql.t1.small"),
			InstanceStorage:    pulumi.Int(20),
			InstanceChargeType: pulumi.String("Postpaid"),
			InstanceName:       pulumi.String(name),
			VswitchId:          defaultSwitch.ID(),
			SecurityIps: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
		})
		if err != nil {
			return err
		}
		defaultReadOnlyInstance, err := rds.NewReadOnlyInstance(ctx, "defaultReadOnlyInstance", &rds.ReadOnlyInstanceArgs{
			MasterDbInstanceId: defaultInstance.ID(),
			ZoneId:             defaultInstance.ZoneId,
			EngineVersion:      defaultInstance.EngineVersion,
			InstanceType:       defaultInstance.InstanceType,
			InstanceStorage:    pulumi.Int(30),
			InstanceName:       pulumi.String(fmt.Sprintf("%v%v", name, "ro")),
			VswitchId:          defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewReadWriteSplittingConnection(ctx, "defaultReadWriteSplittingConnection", &rds.ReadWriteSplittingConnectionArgs{
			InstanceId:       defaultInstance.ID(),
			ConnectionPrefix: pulumi.String("t-con-123"),
			DistributionType: pulumi.String("Standard"),
		}, pulumi.DependsOn([]pulumi.Resource{
			defaultReadOnlyInstance,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE:** Resource `rds.ReadWriteSplittingConnection` should be created after `rds.ReadOnlyInstance`, so the `dependsOn` statement is necessary.

## Import

RDS read write splitting connection can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rds/readWriteSplittingConnection:ReadWriteSplittingConnection example abc12345678

```

func GetReadWriteSplittingConnection

func GetReadWriteSplittingConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReadWriteSplittingConnectionState, opts ...pulumi.ResourceOption) (*ReadWriteSplittingConnection, error)

GetReadWriteSplittingConnection gets an existing ReadWriteSplittingConnection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewReadWriteSplittingConnection

func NewReadWriteSplittingConnection(ctx *pulumi.Context,
	name string, args *ReadWriteSplittingConnectionArgs, opts ...pulumi.ResourceOption) (*ReadWriteSplittingConnection, error)

NewReadWriteSplittingConnection registers a new resource with the given unique name, arguments, and options.

func (*ReadWriteSplittingConnection) ElementType

func (*ReadWriteSplittingConnection) ElementType() reflect.Type

func (*ReadWriteSplittingConnection) ToReadWriteSplittingConnectionOutput

func (i *ReadWriteSplittingConnection) ToReadWriteSplittingConnectionOutput() ReadWriteSplittingConnectionOutput

func (*ReadWriteSplittingConnection) ToReadWriteSplittingConnectionOutputWithContext

func (i *ReadWriteSplittingConnection) ToReadWriteSplittingConnectionOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionOutput

func (*ReadWriteSplittingConnection) ToReadWriteSplittingConnectionPtrOutput

func (i *ReadWriteSplittingConnection) ToReadWriteSplittingConnectionPtrOutput() ReadWriteSplittingConnectionPtrOutput

func (*ReadWriteSplittingConnection) ToReadWriteSplittingConnectionPtrOutputWithContext

func (i *ReadWriteSplittingConnection) ToReadWriteSplittingConnectionPtrOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionPtrOutput

type ReadWriteSplittingConnectionArgs

type ReadWriteSplittingConnectionArgs struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + 'rw'.
	ConnectionPrefix pulumi.StringPtrInput
	// Read weight distribution mode. Values are as follows: `Standard` indicates automatic weight distribution based on types, `Custom` indicates custom weight distribution.
	DistributionType pulumi.StringInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// Delay threshold, in seconds. The value range is 0 to 7200. Default to 30. Read requests are not routed to the read-only instances with a delay greater than the threshold.
	MaxDelayTime pulumi.IntPtrInput
	// Intranet connection port. Valid value: [3001-3999]. Default to 3306.
	Port pulumi.IntPtrInput
	// Read weight distribution. Read weights increase at a step of 100 up to 10,000. Enter weights in the following format: {"Instanceid":"Weight","Instanceid":"Weight"}. This parameter must be set when distributionType is set to Custom.
	Weight pulumi.MapInput
}

The set of arguments for constructing a ReadWriteSplittingConnection resource.

func (ReadWriteSplittingConnectionArgs) ElementType

type ReadWriteSplittingConnectionArray

type ReadWriteSplittingConnectionArray []ReadWriteSplittingConnectionInput

func (ReadWriteSplittingConnectionArray) ElementType

func (ReadWriteSplittingConnectionArray) ToReadWriteSplittingConnectionArrayOutput

func (i ReadWriteSplittingConnectionArray) ToReadWriteSplittingConnectionArrayOutput() ReadWriteSplittingConnectionArrayOutput

func (ReadWriteSplittingConnectionArray) ToReadWriteSplittingConnectionArrayOutputWithContext

func (i ReadWriteSplittingConnectionArray) ToReadWriteSplittingConnectionArrayOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionArrayOutput

type ReadWriteSplittingConnectionArrayInput

type ReadWriteSplittingConnectionArrayInput interface {
	pulumi.Input

	ToReadWriteSplittingConnectionArrayOutput() ReadWriteSplittingConnectionArrayOutput
	ToReadWriteSplittingConnectionArrayOutputWithContext(context.Context) ReadWriteSplittingConnectionArrayOutput
}

ReadWriteSplittingConnectionArrayInput is an input type that accepts ReadWriteSplittingConnectionArray and ReadWriteSplittingConnectionArrayOutput values. You can construct a concrete instance of `ReadWriteSplittingConnectionArrayInput` via:

ReadWriteSplittingConnectionArray{ ReadWriteSplittingConnectionArgs{...} }

type ReadWriteSplittingConnectionArrayOutput

type ReadWriteSplittingConnectionArrayOutput struct{ *pulumi.OutputState }

func (ReadWriteSplittingConnectionArrayOutput) ElementType

func (ReadWriteSplittingConnectionArrayOutput) Index

func (ReadWriteSplittingConnectionArrayOutput) ToReadWriteSplittingConnectionArrayOutput

func (o ReadWriteSplittingConnectionArrayOutput) ToReadWriteSplittingConnectionArrayOutput() ReadWriteSplittingConnectionArrayOutput

func (ReadWriteSplittingConnectionArrayOutput) ToReadWriteSplittingConnectionArrayOutputWithContext

func (o ReadWriteSplittingConnectionArrayOutput) ToReadWriteSplittingConnectionArrayOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionArrayOutput

type ReadWriteSplittingConnectionInput

type ReadWriteSplittingConnectionInput interface {
	pulumi.Input

	ToReadWriteSplittingConnectionOutput() ReadWriteSplittingConnectionOutput
	ToReadWriteSplittingConnectionOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionOutput
}

type ReadWriteSplittingConnectionMap

type ReadWriteSplittingConnectionMap map[string]ReadWriteSplittingConnectionInput

func (ReadWriteSplittingConnectionMap) ElementType

func (ReadWriteSplittingConnectionMap) ToReadWriteSplittingConnectionMapOutput

func (i ReadWriteSplittingConnectionMap) ToReadWriteSplittingConnectionMapOutput() ReadWriteSplittingConnectionMapOutput

func (ReadWriteSplittingConnectionMap) ToReadWriteSplittingConnectionMapOutputWithContext

func (i ReadWriteSplittingConnectionMap) ToReadWriteSplittingConnectionMapOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionMapOutput

type ReadWriteSplittingConnectionMapInput

type ReadWriteSplittingConnectionMapInput interface {
	pulumi.Input

	ToReadWriteSplittingConnectionMapOutput() ReadWriteSplittingConnectionMapOutput
	ToReadWriteSplittingConnectionMapOutputWithContext(context.Context) ReadWriteSplittingConnectionMapOutput
}

ReadWriteSplittingConnectionMapInput is an input type that accepts ReadWriteSplittingConnectionMap and ReadWriteSplittingConnectionMapOutput values. You can construct a concrete instance of `ReadWriteSplittingConnectionMapInput` via:

ReadWriteSplittingConnectionMap{ "key": ReadWriteSplittingConnectionArgs{...} }

type ReadWriteSplittingConnectionMapOutput

type ReadWriteSplittingConnectionMapOutput struct{ *pulumi.OutputState }

func (ReadWriteSplittingConnectionMapOutput) ElementType

func (ReadWriteSplittingConnectionMapOutput) MapIndex

func (ReadWriteSplittingConnectionMapOutput) ToReadWriteSplittingConnectionMapOutput

func (o ReadWriteSplittingConnectionMapOutput) ToReadWriteSplittingConnectionMapOutput() ReadWriteSplittingConnectionMapOutput

func (ReadWriteSplittingConnectionMapOutput) ToReadWriteSplittingConnectionMapOutputWithContext

func (o ReadWriteSplittingConnectionMapOutput) ToReadWriteSplittingConnectionMapOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionMapOutput

type ReadWriteSplittingConnectionOutput

type ReadWriteSplittingConnectionOutput struct{ *pulumi.OutputState }

func (ReadWriteSplittingConnectionOutput) ElementType

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutput

func (o ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutput() ReadWriteSplittingConnectionOutput

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutputWithContext

func (o ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionOutput

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionPtrOutput

func (o ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionPtrOutput() ReadWriteSplittingConnectionPtrOutput

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionPtrOutputWithContext

func (o ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionPtrOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionPtrOutput

type ReadWriteSplittingConnectionPtrInput

type ReadWriteSplittingConnectionPtrInput interface {
	pulumi.Input

	ToReadWriteSplittingConnectionPtrOutput() ReadWriteSplittingConnectionPtrOutput
	ToReadWriteSplittingConnectionPtrOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionPtrOutput
}

type ReadWriteSplittingConnectionPtrOutput

type ReadWriteSplittingConnectionPtrOutput struct{ *pulumi.OutputState }

func (ReadWriteSplittingConnectionPtrOutput) Elem added in v3.9.0

func (ReadWriteSplittingConnectionPtrOutput) ElementType

func (ReadWriteSplittingConnectionPtrOutput) ToReadWriteSplittingConnectionPtrOutput

func (o ReadWriteSplittingConnectionPtrOutput) ToReadWriteSplittingConnectionPtrOutput() ReadWriteSplittingConnectionPtrOutput

func (ReadWriteSplittingConnectionPtrOutput) ToReadWriteSplittingConnectionPtrOutputWithContext

func (o ReadWriteSplittingConnectionPtrOutput) ToReadWriteSplittingConnectionPtrOutputWithContext(ctx context.Context) ReadWriteSplittingConnectionPtrOutput

type ReadWriteSplittingConnectionState

type ReadWriteSplittingConnectionState struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + 'rw'.
	ConnectionPrefix pulumi.StringPtrInput
	// Connection instance string.
	ConnectionString pulumi.StringPtrInput
	// Read weight distribution mode. Values are as follows: `Standard` indicates automatic weight distribution based on types, `Custom` indicates custom weight distribution.
	DistributionType pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// Delay threshold, in seconds. The value range is 0 to 7200. Default to 30. Read requests are not routed to the read-only instances with a delay greater than the threshold.
	MaxDelayTime pulumi.IntPtrInput
	// Intranet connection port. Valid value: [3001-3999]. Default to 3306.
	Port pulumi.IntPtrInput
	// Read weight distribution. Read weights increase at a step of 100 up to 10,000. Enter weights in the following format: {"Instanceid":"Weight","Instanceid":"Weight"}. This parameter must be set when distributionType is set to Custom.
	Weight pulumi.MapInput
}

func (ReadWriteSplittingConnectionState) ElementType

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL