rds

package
v3.54.0 Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2024 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"`
	ResetPermissionFlag pulumi.BoolPtrOutput `pulumi:"resetPermissionFlag"`
	Status              pulumi.StringOutput  `pulumi:"status"`
	// Privilege type of account. The SQLServer engine does not support create high privilege accounts.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Default to Normal.
	//
	// Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides an RDS account resource and used to manage databases.

> **DEPRECATED:** This resource has been deprecated from version `1.120.0`. Please use new resource alicloud_rds_account.

## 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 := "dbaccountmysql"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: pulumi.StringRef(creation),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.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.NewAccount(ctx, "account", &rds.AccountArgs{
			InstanceId: instance.ID(),
			Name:       pulumi.String("tftestnormal"),
			Password:   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/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

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
	ResetPermissionFlag pulumi.BoolPtrInput
	// Privilege type of account. The SQLServer engine does not support create high privilege accounts.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Default to Normal.
	//
	// 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) AccountDescription added in v3.27.0

func (o AccountOutput) AccountDescription() pulumi.StringOutput

func (AccountOutput) AccountName added in v3.27.0

func (o AccountOutput) AccountName() pulumi.StringOutput

func (AccountOutput) AccountPassword added in v3.27.0

func (o AccountOutput) AccountPassword() pulumi.StringOutput

func (AccountOutput) AccountType added in v3.27.0

func (o AccountOutput) AccountType() pulumi.StringOutput

func (AccountOutput) DbInstanceId added in v3.27.0

func (o AccountOutput) DbInstanceId() pulumi.StringOutput

func (AccountOutput) Description deprecated added in v3.27.0

func (o AccountOutput) Description() pulumi.StringOutput

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.

func (AccountOutput) ElementType

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) InstanceId deprecated added in v3.27.0

func (o AccountOutput) InstanceId() pulumi.StringOutput

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.

func (AccountOutput) KmsEncryptedPassword added in v3.27.0

func (o AccountOutput) KmsEncryptedPassword() pulumi.StringPtrOutput

An KMS encrypts password used to a db account. If the `password` is filled in, this field will be ignored.

func (AccountOutput) KmsEncryptionContext added in v3.27.0

func (o AccountOutput) KmsEncryptionContext() pulumi.MapOutput

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.

func (AccountOutput) Name deprecated added in v3.27.0

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.

func (AccountOutput) Password deprecated added in v3.27.0

func (o AccountOutput) Password() pulumi.StringOutput

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.

func (AccountOutput) ResetPermissionFlag added in v3.31.0

func (o AccountOutput) ResetPermissionFlag() pulumi.BoolPtrOutput

func (AccountOutput) Status added in v3.27.0

func (o AccountOutput) Status() pulumi.StringOutput

func (AccountOutput) ToAccountOutput

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext

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

func (AccountOutput) Type deprecated added in v3.27.0

Privilege type of account. The SQLServer engine does not support create high privilege accounts. - Normal: Common privilege. - Super: High privilege.

Default to Normal.

Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.

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.
	//   Default to "ReadOnly".
	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, see [What is DB Account Privilege](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-grantaccountprivilege).

> **NOTE:** At present, a database can only have one database owner.

> **NOTE:** Available since v1.5.0.

## Example Usage

```go package main

import (

"fmt"

"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_example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.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
		}
		var db []*rds.Database
		for index := 0; index < 2; index++ {
			key0 := index
			val0 := index
			__res, err := rds.NewDatabase(ctx, fmt.Sprintf("db-%v", key0), &rds.DatabaseArgs{
				InstanceId:  instance.ID(),
				Name:        pulumi.String(fmt.Sprintf("%v_%v", name, val0)),
				Description: pulumi.String("from terraform"),
			})
			if err != nil {
				return err
			}
			db = append(db, __res)
		}
		account, err := rds.NewAccount(ctx, "account", &rds.AccountArgs{
			DbInstanceId:       instance.ID(),
			AccountName:        pulumi.String("tfexample"),
			AccountPassword:    pulumi.String("Example12345"),
			AccountDescription: pulumi.String("from terraform"),
		})
		if err != nil {
			return err
		}
		var splat0 pulumi.StringArray
		for _, val0 := range db {
			splat0 = append(splat0, val0.Name)
		}
		_, err = rds.NewAccountPrivilege(ctx, "privilege", &rds.AccountPrivilegeArgs{
			InstanceId:  instance.ID(),
			AccountName: account.Name,
			Privilege:   pulumi.String("ReadOnly"),
			DbNames:     splat0,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## 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

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.
	//   Default to "ReadOnly".
	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) AccountName added in v3.27.0

func (o AccountPrivilegeOutput) AccountName() pulumi.StringOutput

A specified account name.

func (AccountPrivilegeOutput) DbNames added in v3.27.0

List of specified database name.

func (AccountPrivilegeOutput) ElementType

func (AccountPrivilegeOutput) ElementType() reflect.Type

func (AccountPrivilegeOutput) InstanceId added in v3.27.0

The Id of instance in which account belongs.

func (AccountPrivilegeOutput) Privilege added in v3.27.0

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. Default to "ReadOnly".

func (AccountPrivilegeOutput) ToAccountPrivilegeOutput

func (o AccountPrivilegeOutput) ToAccountPrivilegeOutput() AccountPrivilegeOutput

func (AccountPrivilegeOutput) ToAccountPrivilegeOutputWithContext

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

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.
	//   Default to "ReadOnly".
	Privilege pulumi.StringPtrInput
}

func (AccountPrivilegeState) ElementType

func (AccountPrivilegeState) ElementType() reflect.Type

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
	ResetPermissionFlag pulumi.BoolPtrInput
	Status              pulumi.StringPtrInput
	// Privilege type of account. The SQLServer engine does not support create high privilege accounts.
	// - Normal: Common privilege.
	// - Super: High privilege.
	//
	// Default to Normal.
	//
	// 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`, `ByWeek`, `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"`
	// The frequency at which you want to perform a snapshot backup on the instance. Valid values:
	// - -1: No backup frequencies are specified.
	// - 30: A snapshot backup is performed once every 30 minutes.
	// - 60: A snapshot backup is performed once every 60 minutes.
	// - 120: A snapshot backup is performed once every 120 minutes.
	// - 240: A snapshot backup is performed once every 240 minutes.
	// - 360: A snapshot backup is performed once every 360 minutes.
	// - 480: A snapshot backup is performed once every 480 minutes.
	// - 720: A snapshot backup is performed once every 720 minutes.
	//
	// > **NOTE:** Currently, the SQLServer instance does not support to modify `logBackupRetentionPeriod`.
	BackupInterval pulumi.StringOutput `pulumi:"backupInterval"`
	// 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 `preferredBackupPeriod` 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 `preferredBackupTime` instead
	BackupTime pulumi.StringOutput `pulumi:"backupTime"`
	// Whether to enable second level backup.Valid values are `Flash`, `Standard`, Note:It only takes effect when the BackupPolicyMode parameter is DataBackupPolicy.
	// > **NOTE:** You can configure a backup policy by using this parameter and the PreferredBackupPeriod parameter. For example, if you set the PreferredBackupPeriod parameter to Saturday,Sunday and the BackupInterval parameter to -1, a snapshot backup is performed on every Saturday and Sunday.If the instance runs PostgreSQL, the BackupInterval parameter is supported only when the instance is equipped with standard SSDs or enhanced SSDs (ESSDs).This parameter takes effect only when you set the BackupPolicyMode parameter to DataBackupPolicy.
	Category pulumi.StringOutput `pulumi:"category"`
	// 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 `enableBackupLog` 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 `logBackupRetentionPeriod` 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].
	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 `backupRetentionPeriod` instead
	RetentionPeriod pulumi.IntOutput `pulumi:"retentionPeriod"`
}

Provides an RDS instance backup policy resource and used to configure instance backup policy, see [What is DB Backup Policy](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-modifybackuppolicy).

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

> **NOTE:** Available since v1.5.0.

## Example Usage

```go package main

import (

"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.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

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`, `ByWeek`, `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
	// The frequency at which you want to perform a snapshot backup on the instance. Valid values:
	// - -1: No backup frequencies are specified.
	// - 30: A snapshot backup is performed once every 30 minutes.
	// - 60: A snapshot backup is performed once every 60 minutes.
	// - 120: A snapshot backup is performed once every 120 minutes.
	// - 240: A snapshot backup is performed once every 240 minutes.
	// - 360: A snapshot backup is performed once every 360 minutes.
	// - 480: A snapshot backup is performed once every 480 minutes.
	// - 720: A snapshot backup is performed once every 720 minutes.
	//
	// > **NOTE:** Currently, the SQLServer instance does not support to modify `logBackupRetentionPeriod`.
	BackupInterval pulumi.StringPtrInput
	// 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 `preferredBackupPeriod` 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 `preferredBackupTime` instead
	BackupTime pulumi.StringPtrInput
	// Whether to enable second level backup.Valid values are `Flash`, `Standard`, Note:It only takes effect when the BackupPolicyMode parameter is DataBackupPolicy.
	// > **NOTE:** You can configure a backup policy by using this parameter and the PreferredBackupPeriod parameter. For example, if you set the PreferredBackupPeriod parameter to Saturday,Sunday and the BackupInterval parameter to -1, a snapshot backup is performed on every Saturday and Sunday.If the instance runs PostgreSQL, the BackupInterval parameter is supported only when the instance is equipped with standard SSDs or enhanced SSDs (ESSDs).This parameter takes effect only when you set the BackupPolicyMode parameter to DataBackupPolicy.
	Category 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 `enableBackupLog` 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 `logBackupRetentionPeriod` 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].
	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 `backupRetentionPeriod` 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) ArchiveBackupKeepCount added in v3.27.0

func (o BackupPolicyOutput) ArchiveBackupKeepCount() pulumi.IntOutput

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].

func (BackupPolicyOutput) ArchiveBackupKeepPolicy added in v3.27.0

func (o BackupPolicyOutput) ArchiveBackupKeepPolicy() pulumi.StringOutput

Instance archive backup keep policy. Valid when the `enableBackupLog` is `true` and instance is mysql local disk. Valid values are `ByMonth`, `ByWeek`, `KeepAll`.

func (BackupPolicyOutput) ArchiveBackupRetentionPeriod added in v3.27.0

func (o BackupPolicyOutput) ArchiveBackupRetentionPeriod() pulumi.IntOutput

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.

func (BackupPolicyOutput) BackupInterval added in v3.29.0

func (o BackupPolicyOutput) BackupInterval() pulumi.StringOutput

The frequency at which you want to perform a snapshot backup on the instance. Valid values: - -1: No backup frequencies are specified. - 30: A snapshot backup is performed once every 30 minutes. - 60: A snapshot backup is performed once every 60 minutes. - 120: A snapshot backup is performed once every 120 minutes. - 240: A snapshot backup is performed once every 240 minutes. - 360: A snapshot backup is performed once every 360 minutes. - 480: A snapshot backup is performed once every 480 minutes. - 720: A snapshot backup is performed once every 720 minutes.

> **NOTE:** Currently, the SQLServer instance does not support to modify `logBackupRetentionPeriod`.

func (BackupPolicyOutput) BackupPeriods deprecated added in v3.27.0

func (o BackupPolicyOutput) BackupPeriods() pulumi.StringArrayOutput

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 `preferredBackupPeriod` instead

func (BackupPolicyOutput) BackupRetentionPeriod added in v3.27.0

func (o BackupPolicyOutput) BackupRetentionPeriod() pulumi.IntPtrOutput

Instance backup retention days. Valid values: [7-730]. Default to 7. But mysql local disk is unlimited.

func (BackupPolicyOutput) BackupTime deprecated added in v3.27.0

func (o BackupPolicyOutput) BackupTime() pulumi.StringOutput

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 `preferredBackupTime` instead

func (BackupPolicyOutput) Category added in v3.29.0

func (o BackupPolicyOutput) Category() pulumi.StringOutput

Whether to enable second level backup.Valid values are `Flash`, `Standard`, Note:It only takes effect when the BackupPolicyMode parameter is DataBackupPolicy. > **NOTE:** You can configure a backup policy by using this parameter and the PreferredBackupPeriod parameter. For example, if you set the PreferredBackupPeriod parameter to Saturday,Sunday and the BackupInterval parameter to -1, a snapshot backup is performed on every Saturday and Sunday.If the instance runs PostgreSQL, the BackupInterval parameter is supported only when the instance is equipped with standard SSDs or enhanced SSDs (ESSDs).This parameter takes effect only when you set the BackupPolicyMode parameter to DataBackupPolicy.

func (BackupPolicyOutput) CompressType added in v3.27.0

func (o BackupPolicyOutput) CompressType() pulumi.StringOutput

The compress type of instance policy. Valid values are `1`, `4`, `8`.

func (BackupPolicyOutput) ElementType

func (BackupPolicyOutput) ElementType() reflect.Type

func (BackupPolicyOutput) EnableBackupLog added in v3.27.0

func (o BackupPolicyOutput) EnableBackupLog() pulumi.BoolOutput

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).

func (BackupPolicyOutput) HighSpaceUsageProtection added in v3.27.0

func (o BackupPolicyOutput) HighSpaceUsageProtection() pulumi.StringPtrOutput

Instance high space usage protection policy. Valid when the `enableBackupLog` is `true`. Valid values are `Enable`, `Disable`.

func (BackupPolicyOutput) InstanceId added in v3.27.0

func (o BackupPolicyOutput) InstanceId() pulumi.StringOutput

The Id of instance that can run database.

func (BackupPolicyOutput) LocalLogRetentionHours added in v3.27.0

func (o BackupPolicyOutput) LocalLogRetentionHours() pulumi.IntOutput

Instance log backup local retention hours. Valid when the `enableBackupLog` is `true`. Valid values: [0-7*24].

func (BackupPolicyOutput) LocalLogRetentionSpace added in v3.27.0

func (o BackupPolicyOutput) LocalLogRetentionSpace() pulumi.IntOutput

Instance log backup local retention space. Valid when the `enableBackupLog` is `true`. Valid values: [0-50].

func (BackupPolicyOutput) LogBackup deprecated added in v3.27.0

func (o BackupPolicyOutput) LogBackup() pulumi.BoolOutput

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 `enableBackupLog` instead

func (BackupPolicyOutput) LogBackupFrequency added in v3.27.0

func (o BackupPolicyOutput) LogBackupFrequency() pulumi.StringOutput

Instance log backup frequency. Valid when the instance engine is `SQLServer`. Valid values are `LogInterval`.

func (BackupPolicyOutput) LogBackupRetentionPeriod added in v3.27.0

func (o BackupPolicyOutput) LogBackupRetentionPeriod() pulumi.IntOutput

Instance log backup retention days. Valid when the `enableBackupLog` is `1`. Valid values: [7-730]. Default to 7. It cannot be larger than `backupRetentionPeriod`.

func (BackupPolicyOutput) LogRetentionPeriod deprecated added in v3.27.0

func (o BackupPolicyOutput) LogRetentionPeriod() pulumi.IntOutput

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 `logBackupRetentionPeriod` instead

func (BackupPolicyOutput) PreferredBackupPeriods added in v3.27.0

func (o BackupPolicyOutput) PreferredBackupPeriods() pulumi.StringArrayOutput

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].

func (BackupPolicyOutput) PreferredBackupTime added in v3.27.0

func (o BackupPolicyOutput) PreferredBackupTime() pulumi.StringPtrOutput

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.

func (BackupPolicyOutput) ReleasedKeepPolicy added in v3.27.0

func (o BackupPolicyOutput) ReleasedKeepPolicy() pulumi.StringOutput

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.

func (BackupPolicyOutput) RetentionPeriod deprecated added in v3.27.0

func (o BackupPolicyOutput) RetentionPeriod() pulumi.IntOutput

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 `backupRetentionPeriod` instead

func (BackupPolicyOutput) ToBackupPolicyOutput

func (o BackupPolicyOutput) ToBackupPolicyOutput() BackupPolicyOutput

func (BackupPolicyOutput) ToBackupPolicyOutputWithContext

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

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`, `ByWeek`, `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
	// The frequency at which you want to perform a snapshot backup on the instance. Valid values:
	// - -1: No backup frequencies are specified.
	// - 30: A snapshot backup is performed once every 30 minutes.
	// - 60: A snapshot backup is performed once every 60 minutes.
	// - 120: A snapshot backup is performed once every 120 minutes.
	// - 240: A snapshot backup is performed once every 240 minutes.
	// - 360: A snapshot backup is performed once every 360 minutes.
	// - 480: A snapshot backup is performed once every 480 minutes.
	// - 720: A snapshot backup is performed once every 720 minutes.
	//
	// > **NOTE:** Currently, the SQLServer instance does not support to modify `logBackupRetentionPeriod`.
	BackupInterval pulumi.StringPtrInput
	// 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 `preferredBackupPeriod` 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 `preferredBackupTime` instead
	BackupTime pulumi.StringPtrInput
	// Whether to enable second level backup.Valid values are `Flash`, `Standard`, Note:It only takes effect when the BackupPolicyMode parameter is DataBackupPolicy.
	// > **NOTE:** You can configure a backup policy by using this parameter and the PreferredBackupPeriod parameter. For example, if you set the PreferredBackupPeriod parameter to Saturday,Sunday and the BackupInterval parameter to -1, a snapshot backup is performed on every Saturday and Sunday.If the instance runs PostgreSQL, the BackupInterval parameter is supported only when the instance is equipped with standard SSDs or enhanced SSDs (ESSDs).This parameter takes effect only when you set the BackupPolicyMode parameter to DataBackupPolicy.
	Category 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 `enableBackupLog` 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 `logBackupRetentionPeriod` 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].
	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 `backupRetentionPeriod` instead
	RetentionPeriod pulumi.IntPtrInput
}

func (BackupPolicyState) ElementType

func (BackupPolicyState) ElementType() reflect.Type

type Connection

type Connection struct {
	pulumi.CustomResourceState

	// The Tabular Data Stream (TDS) port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort pulumi.StringOutput `pulumi:"babelfishPort"`
	// 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, see [What is DB Connection](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-allocateinstancepublicconnection).

> **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.

> **NOTE:** Available since v1.5.0.

## Example Usage

```go package main

import (

"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_example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &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, "default", &rds.ConnectionArgs{
			InstanceId:       defaultInstance.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

type ConnectionArgs

type ConnectionArgs struct {
	// The Tabular Data Stream (TDS) port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort pulumi.StringPtrInput
	// 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) BabelfishPort added in v3.27.0

func (o ConnectionOutput) BabelfishPort() pulumi.StringOutput

The Tabular Data Stream (TDS) port of the instance for which Babelfish is enabled.

> **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).

func (ConnectionOutput) ConnectionPrefix added in v3.27.0

func (o ConnectionOutput) ConnectionPrefix() pulumi.StringOutput

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'.

func (ConnectionOutput) ConnectionString added in v3.27.0

func (o ConnectionOutput) ConnectionString() pulumi.StringOutput

Connection instance string.

func (ConnectionOutput) ElementType

func (ConnectionOutput) ElementType() reflect.Type

func (ConnectionOutput) InstanceId added in v3.27.0

func (o ConnectionOutput) InstanceId() pulumi.StringOutput

The Id of instance that can run database.

func (ConnectionOutput) IpAddress added in v3.27.0

func (o ConnectionOutput) IpAddress() pulumi.StringOutput

The ip address of connection string.

func (ConnectionOutput) Port added in v3.27.0

Internet connection port. Valid value: [1000-5999]. Default to 3306.

func (ConnectionOutput) ToConnectionOutput

func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput

func (ConnectionOutput) ToConnectionOutputWithContext

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

type ConnectionState

type ConnectionState struct {
	// The Tabular Data Stream (TDS) port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort pulumi.StringPtrInput
	// 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: Valid values for PostgreSQL databases: a value in the `character set,<Collate>,<Ctype>` format. Example: `UTF8,C,en_US.utf8`.
	// > - Valid values for the character set : [ 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 ]
	// > - Valid values for the Collate field: You can execute the `SELECT DISTINCT collname FROM pg_collation;` statement to obtain the field value. The default value is `C`.
	// > - Valid values for the Ctype field: You can execute the `SELECT DISTINCT collctype FROM pg_collation;` statement to obtain the field value. The default value is `en_US.utf8`.
	// - MariaDB: [ utf8, gbk, latin1, utf8mb4 ]
	//
	// More details refer to [API Docs](https://www.alibabacloud.com/help/zh/doc-detail/26258.htm)
	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.
	//
	// > **NOTE:** The value of "name" or "characterSet"  does not support modification.
	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, see [What is DB Database](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-createdatabase).

> **NOTE:** Available since v1.5.0.

## Example Usage

```go package main

import (

"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &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, "default", &rds.DatabaseArgs{
			InstanceId: defaultInstance.ID(),
			Name:       pulumi.String(name),
		})
		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

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: Valid values for PostgreSQL databases: a value in the `character set,<Collate>,<Ctype>` format. Example: `UTF8,C,en_US.utf8`.
	// > - Valid values for the character set : [ 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 ]
	// > - Valid values for the Collate field: You can execute the `SELECT DISTINCT collname FROM pg_collation;` statement to obtain the field value. The default value is `C`.
	// > - Valid values for the Ctype field: You can execute the `SELECT DISTINCT collctype FROM pg_collation;` statement to obtain the field value. The default value is `en_US.utf8`.
	// - MariaDB: [ utf8, gbk, latin1, utf8mb4 ]
	//
	// More details refer to [API Docs](https://www.alibabacloud.com/help/zh/doc-detail/26258.htm)
	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.
	//
	// > **NOTE:** The value of "name" or "characterSet"  does not support modification.
	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) CharacterSet added in v3.27.0

func (o DatabaseOutput) CharacterSet() pulumi.StringPtrOutput

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: Valid values for PostgreSQL databases: a value in the `character set,<Collate>,<Ctype>` format. Example: `UTF8,C,en_US.utf8`. > - Valid values for the character set : [ 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 ] > - Valid values for the Collate field: You can execute the `SELECT DISTINCT collname FROM pg_collation;` statement to obtain the field value. The default value is `C`. > - Valid values for the Ctype field: You can execute the `SELECT DISTINCT collctype FROM pg_collation;` statement to obtain the field value. The default value is `en_US.utf8`. - MariaDB: [ utf8, gbk, latin1, utf8mb4 ]

More details refer to [API Docs](https://www.alibabacloud.com/help/zh/doc-detail/26258.htm)

func (DatabaseOutput) Description added in v3.27.0

func (o DatabaseOutput) Description() pulumi.StringPtrOutput

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.

> **NOTE:** The value of "name" or "characterSet" does not support modification.

func (DatabaseOutput) ElementType

func (DatabaseOutput) ElementType() reflect.Type

func (DatabaseOutput) InstanceId added in v3.27.0

func (o DatabaseOutput) InstanceId() pulumi.StringOutput

The Id of instance that can run database.

func (DatabaseOutput) Name added in v3.27.0

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.

func (DatabaseOutput) ToDatabaseOutput

func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput

func (DatabaseOutput) ToDatabaseOutputWithContext

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

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: Valid values for PostgreSQL databases: a value in the `character set,<Collate>,<Ctype>` format. Example: `UTF8,C,en_US.utf8`.
	// > - Valid values for the character set : [ 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 ]
	// > - Valid values for the Collate field: You can execute the `SELECT DISTINCT collname FROM pg_collation;` statement to obtain the field value. The default value is `C`.
	// > - Valid values for the Ctype field: You can execute the `SELECT DISTINCT collctype FROM pg_collation;` statement to obtain the field value. The default value is `en_US.utf8`.
	// - MariaDB: [ utf8, gbk, latin1, utf8mb4 ]
	//
	// More details refer to [API Docs](https://www.alibabacloud.com/help/zh/doc-detail/26258.htm)
	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.
	//
	// > **NOTE:** The value of "name" or "characterSet"  does not support modification.
	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 DbInstanceEndpoint added in v3.36.0

type DbInstanceEndpoint struct {
	pulumi.CustomResourceState

	// The internal endpoint.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The IP address of the internal endpoint.
	ConnectionStringPrefix pulumi.StringOutput `pulumi:"connectionStringPrefix"`
	// The user-defined description of the endpoint.
	DbInstanceEndpointDescription pulumi.StringOutput `pulumi:"dbInstanceEndpointDescription"`
	// The Endpoint ID of the instance.
	DbInstanceEndpointId pulumi.StringOutput `pulumi:"dbInstanceEndpointId"`
	// The type of the endpoint.
	DbInstanceEndpointType pulumi.StringOutput `pulumi:"dbInstanceEndpointType"`
	// The ID of the instance.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The type of the IP address.
	IpType pulumi.StringOutput `pulumi:"ipType"`
	// The information about the node that is configured for the endpoint.  It contains two sub-fields(node_id and weight). See `nodeItems` below.
	NodeItems DbInstanceEndpointNodeItemArrayOutput `pulumi:"nodeItems"`
	// The port number of the internal endpoint. You can specify the port number for the internal endpoint.Valid values: 3000 to 5999.
	Port pulumi.StringOutput `pulumi:"port"`
	// The IP address of the internal endpoint.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// The virtual private cloud (VPC) ID of the internal endpoint.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The vSwitch ID of the internal endpoint.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Provide RDS cluster instance endpoint connection resources, see [What is RDS DB Instance Endpoint](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-createdbinstanceendpoint).

> **NOTE:** Available since v1.203.0.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(_default.Ids[0]),
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Ids[0]),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("8.0"),
			InstanceType:          pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			InstanceName:          pulumi.String(name),
			VswitchId:             defaultSwitch.ID(),
			MonitoringPeriod:      pulumi.Int(60),
			DbInstanceStorageType: pulumi.String("cloud_essd"),
			SecurityGroupIds: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			ZoneId:       pulumi.String(_default.Ids[0]),
			ZoneIdSlaveA: pulumi.String(_default.Ids[0]),
		})
		if err != nil {
			return err
		}
		defaultDbNode, err := rds.NewDbNode(ctx, "default", &rds.DbNodeArgs{
			DbInstanceId: defaultInstance.ID(),
			ClassCode:    defaultInstance.InstanceType,
			ZoneId:       defaultSwitch.ZoneId,
		})
		if err != nil {
			return err
		}
		_, err = rds.NewDbInstanceEndpoint(ctx, "default", &rds.DbInstanceEndpointArgs{
			DbInstanceId:                  defaultDbNode.DbInstanceId,
			VpcId:                         defaultNetwork.ID(),
			VswitchId:                     defaultInstance.VswitchId,
			ConnectionStringPrefix:        pulumi.String("example"),
			Port:                          pulumi.String("3306"),
			DbInstanceEndpointDescription: pulumi.String(name),
			NodeItems: rds.DbInstanceEndpointNodeItemArray{
				&rds.DbInstanceEndpointNodeItemArgs{
					NodeId: defaultDbNode.NodeId,
					Weight: pulumi.Int(25),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import alicloud:rds/dbInstanceEndpoint:DbInstanceEndpoint example <db_instance_id>:<db_instance_endpoint_id> ```

func GetDbInstanceEndpoint added in v3.36.0

func GetDbInstanceEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DbInstanceEndpointState, opts ...pulumi.ResourceOption) (*DbInstanceEndpoint, error)

GetDbInstanceEndpoint gets an existing DbInstanceEndpoint 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 NewDbInstanceEndpoint added in v3.36.0

func NewDbInstanceEndpoint(ctx *pulumi.Context,
	name string, args *DbInstanceEndpointArgs, opts ...pulumi.ResourceOption) (*DbInstanceEndpoint, error)

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

func (*DbInstanceEndpoint) ElementType added in v3.36.0

func (*DbInstanceEndpoint) ElementType() reflect.Type

func (*DbInstanceEndpoint) ToDbInstanceEndpointOutput added in v3.36.0

func (i *DbInstanceEndpoint) ToDbInstanceEndpointOutput() DbInstanceEndpointOutput

func (*DbInstanceEndpoint) ToDbInstanceEndpointOutputWithContext added in v3.36.0

func (i *DbInstanceEndpoint) ToDbInstanceEndpointOutputWithContext(ctx context.Context) DbInstanceEndpointOutput

type DbInstanceEndpointAddress added in v3.37.0

type DbInstanceEndpointAddress struct {
	pulumi.CustomResourceState

	// The endpoint of the instance.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The prefix of the public endpoint.
	ConnectionStringPrefix pulumi.StringOutput `pulumi:"connectionStringPrefix"`
	// The Endpoint ID of the instance.
	DbInstanceEndpointId pulumi.StringOutput `pulumi:"dbInstanceEndpointId"`
	// The ID of the instance.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The IP address of the endpoint.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// The type of the IP address.
	IpType pulumi.StringOutput `pulumi:"ipType"`
	// The port number of the public endpoint.
	Port pulumi.StringOutput `pulumi:"port"`
}

Provide RDS cluster instance endpoint public connection resources.

Information about RDS MySQL cluster endpoint address and how to use it, see [What is RDS DB Instance Endpoint Address](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-createdbinstanceendpointaddress).

> **NOTE:** Available since v1.204.0.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(_default.Ids[0]),
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Ids[0]),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("8.0"),
			InstanceType:          pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			InstanceName:          pulumi.String(name),
			VswitchId:             defaultSwitch.ID(),
			MonitoringPeriod:      pulumi.Int(60),
			DbInstanceStorageType: pulumi.String("cloud_essd"),
			SecurityGroupIds: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			ZoneId:       pulumi.String(_default.Ids[0]),
			ZoneIdSlaveA: pulumi.String(_default.Ids[0]),
		})
		if err != nil {
			return err
		}
		defaultDbNode, err := rds.NewDbNode(ctx, "default", &rds.DbNodeArgs{
			DbInstanceId: defaultInstance.ID(),
			ClassCode:    defaultInstance.InstanceType,
			ZoneId:       defaultSwitch.ZoneId,
		})
		if err != nil {
			return err
		}
		defaultDbInstanceEndpoint, err := rds.NewDbInstanceEndpoint(ctx, "default", &rds.DbInstanceEndpointArgs{
			DbInstanceId:                  defaultDbNode.DbInstanceId,
			VpcId:                         defaultNetwork.ID(),
			VswitchId:                     defaultInstance.VswitchId,
			ConnectionStringPrefix:        pulumi.String("example"),
			Port:                          pulumi.String("3306"),
			DbInstanceEndpointDescription: pulumi.String(name),
			NodeItems: rds.DbInstanceEndpointNodeItemArray{
				&rds.DbInstanceEndpointNodeItemArgs{
					NodeId: defaultDbNode.NodeId,
					Weight: pulumi.Int(25),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = rds.NewDbInstanceEndpointAddress(ctx, "default", &rds.DbInstanceEndpointAddressArgs{
			DbInstanceId:           defaultInstance.ID(),
			DbInstanceEndpointId:   defaultDbInstanceEndpoint.DbInstanceEndpointId,
			ConnectionStringPrefix: pulumi.String("tf-example-prefix"),
			Port:                   pulumi.String("3306"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS database endpoint public address feature can be imported using the id, e.g.

```sh $ pulumi import alicloud:rds/dbInstanceEndpointAddress:DbInstanceEndpointAddress example <db_instance_id>:<db_instance_endpoint_id> ```

func GetDbInstanceEndpointAddress added in v3.37.0

func GetDbInstanceEndpointAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DbInstanceEndpointAddressState, opts ...pulumi.ResourceOption) (*DbInstanceEndpointAddress, error)

GetDbInstanceEndpointAddress gets an existing DbInstanceEndpointAddress 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 NewDbInstanceEndpointAddress added in v3.37.0

func NewDbInstanceEndpointAddress(ctx *pulumi.Context,
	name string, args *DbInstanceEndpointAddressArgs, opts ...pulumi.ResourceOption) (*DbInstanceEndpointAddress, error)

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

func (*DbInstanceEndpointAddress) ElementType added in v3.37.0

func (*DbInstanceEndpointAddress) ElementType() reflect.Type

func (*DbInstanceEndpointAddress) ToDbInstanceEndpointAddressOutput added in v3.37.0

func (i *DbInstanceEndpointAddress) ToDbInstanceEndpointAddressOutput() DbInstanceEndpointAddressOutput

func (*DbInstanceEndpointAddress) ToDbInstanceEndpointAddressOutputWithContext added in v3.37.0

func (i *DbInstanceEndpointAddress) ToDbInstanceEndpointAddressOutputWithContext(ctx context.Context) DbInstanceEndpointAddressOutput

type DbInstanceEndpointAddressArgs added in v3.37.0

type DbInstanceEndpointAddressArgs struct {
	// The prefix of the public endpoint.
	ConnectionStringPrefix pulumi.StringInput
	// The Endpoint ID of the instance.
	DbInstanceEndpointId pulumi.StringInput
	// The ID of the instance.
	DbInstanceId pulumi.StringInput
	// The port number of the public endpoint.
	Port pulumi.StringInput
}

The set of arguments for constructing a DbInstanceEndpointAddress resource.

func (DbInstanceEndpointAddressArgs) ElementType added in v3.37.0

type DbInstanceEndpointAddressArray added in v3.37.0

type DbInstanceEndpointAddressArray []DbInstanceEndpointAddressInput

func (DbInstanceEndpointAddressArray) ElementType added in v3.37.0

func (DbInstanceEndpointAddressArray) ToDbInstanceEndpointAddressArrayOutput added in v3.37.0

func (i DbInstanceEndpointAddressArray) ToDbInstanceEndpointAddressArrayOutput() DbInstanceEndpointAddressArrayOutput

func (DbInstanceEndpointAddressArray) ToDbInstanceEndpointAddressArrayOutputWithContext added in v3.37.0

func (i DbInstanceEndpointAddressArray) ToDbInstanceEndpointAddressArrayOutputWithContext(ctx context.Context) DbInstanceEndpointAddressArrayOutput

type DbInstanceEndpointAddressArrayInput added in v3.37.0

type DbInstanceEndpointAddressArrayInput interface {
	pulumi.Input

	ToDbInstanceEndpointAddressArrayOutput() DbInstanceEndpointAddressArrayOutput
	ToDbInstanceEndpointAddressArrayOutputWithContext(context.Context) DbInstanceEndpointAddressArrayOutput
}

DbInstanceEndpointAddressArrayInput is an input type that accepts DbInstanceEndpointAddressArray and DbInstanceEndpointAddressArrayOutput values. You can construct a concrete instance of `DbInstanceEndpointAddressArrayInput` via:

DbInstanceEndpointAddressArray{ DbInstanceEndpointAddressArgs{...} }

type DbInstanceEndpointAddressArrayOutput added in v3.37.0

type DbInstanceEndpointAddressArrayOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointAddressArrayOutput) ElementType added in v3.37.0

func (DbInstanceEndpointAddressArrayOutput) Index added in v3.37.0

func (DbInstanceEndpointAddressArrayOutput) ToDbInstanceEndpointAddressArrayOutput added in v3.37.0

func (o DbInstanceEndpointAddressArrayOutput) ToDbInstanceEndpointAddressArrayOutput() DbInstanceEndpointAddressArrayOutput

func (DbInstanceEndpointAddressArrayOutput) ToDbInstanceEndpointAddressArrayOutputWithContext added in v3.37.0

func (o DbInstanceEndpointAddressArrayOutput) ToDbInstanceEndpointAddressArrayOutputWithContext(ctx context.Context) DbInstanceEndpointAddressArrayOutput

type DbInstanceEndpointAddressInput added in v3.37.0

type DbInstanceEndpointAddressInput interface {
	pulumi.Input

	ToDbInstanceEndpointAddressOutput() DbInstanceEndpointAddressOutput
	ToDbInstanceEndpointAddressOutputWithContext(ctx context.Context) DbInstanceEndpointAddressOutput
}

type DbInstanceEndpointAddressMap added in v3.37.0

type DbInstanceEndpointAddressMap map[string]DbInstanceEndpointAddressInput

func (DbInstanceEndpointAddressMap) ElementType added in v3.37.0

func (DbInstanceEndpointAddressMap) ToDbInstanceEndpointAddressMapOutput added in v3.37.0

func (i DbInstanceEndpointAddressMap) ToDbInstanceEndpointAddressMapOutput() DbInstanceEndpointAddressMapOutput

func (DbInstanceEndpointAddressMap) ToDbInstanceEndpointAddressMapOutputWithContext added in v3.37.0

func (i DbInstanceEndpointAddressMap) ToDbInstanceEndpointAddressMapOutputWithContext(ctx context.Context) DbInstanceEndpointAddressMapOutput

type DbInstanceEndpointAddressMapInput added in v3.37.0

type DbInstanceEndpointAddressMapInput interface {
	pulumi.Input

	ToDbInstanceEndpointAddressMapOutput() DbInstanceEndpointAddressMapOutput
	ToDbInstanceEndpointAddressMapOutputWithContext(context.Context) DbInstanceEndpointAddressMapOutput
}

DbInstanceEndpointAddressMapInput is an input type that accepts DbInstanceEndpointAddressMap and DbInstanceEndpointAddressMapOutput values. You can construct a concrete instance of `DbInstanceEndpointAddressMapInput` via:

DbInstanceEndpointAddressMap{ "key": DbInstanceEndpointAddressArgs{...} }

type DbInstanceEndpointAddressMapOutput added in v3.37.0

type DbInstanceEndpointAddressMapOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointAddressMapOutput) ElementType added in v3.37.0

func (DbInstanceEndpointAddressMapOutput) MapIndex added in v3.37.0

func (DbInstanceEndpointAddressMapOutput) ToDbInstanceEndpointAddressMapOutput added in v3.37.0

func (o DbInstanceEndpointAddressMapOutput) ToDbInstanceEndpointAddressMapOutput() DbInstanceEndpointAddressMapOutput

func (DbInstanceEndpointAddressMapOutput) ToDbInstanceEndpointAddressMapOutputWithContext added in v3.37.0

func (o DbInstanceEndpointAddressMapOutput) ToDbInstanceEndpointAddressMapOutputWithContext(ctx context.Context) DbInstanceEndpointAddressMapOutput

type DbInstanceEndpointAddressOutput added in v3.37.0

type DbInstanceEndpointAddressOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointAddressOutput) ConnectionString added in v3.37.0

The endpoint of the instance.

func (DbInstanceEndpointAddressOutput) ConnectionStringPrefix added in v3.37.0

func (o DbInstanceEndpointAddressOutput) ConnectionStringPrefix() pulumi.StringOutput

The prefix of the public endpoint.

func (DbInstanceEndpointAddressOutput) DbInstanceEndpointId added in v3.37.0

func (o DbInstanceEndpointAddressOutput) DbInstanceEndpointId() pulumi.StringOutput

The Endpoint ID of the instance.

func (DbInstanceEndpointAddressOutput) DbInstanceId added in v3.37.0

The ID of the instance.

func (DbInstanceEndpointAddressOutput) ElementType added in v3.37.0

func (DbInstanceEndpointAddressOutput) IpAddress added in v3.37.0

The IP address of the endpoint.

func (DbInstanceEndpointAddressOutput) IpType added in v3.37.0

The type of the IP address.

func (DbInstanceEndpointAddressOutput) Port added in v3.37.0

The port number of the public endpoint.

func (DbInstanceEndpointAddressOutput) ToDbInstanceEndpointAddressOutput added in v3.37.0

func (o DbInstanceEndpointAddressOutput) ToDbInstanceEndpointAddressOutput() DbInstanceEndpointAddressOutput

func (DbInstanceEndpointAddressOutput) ToDbInstanceEndpointAddressOutputWithContext added in v3.37.0

func (o DbInstanceEndpointAddressOutput) ToDbInstanceEndpointAddressOutputWithContext(ctx context.Context) DbInstanceEndpointAddressOutput

type DbInstanceEndpointAddressState added in v3.37.0

type DbInstanceEndpointAddressState struct {
	// The endpoint of the instance.
	ConnectionString pulumi.StringPtrInput
	// The prefix of the public endpoint.
	ConnectionStringPrefix pulumi.StringPtrInput
	// The Endpoint ID of the instance.
	DbInstanceEndpointId pulumi.StringPtrInput
	// The ID of the instance.
	DbInstanceId pulumi.StringPtrInput
	// The IP address of the endpoint.
	IpAddress pulumi.StringPtrInput
	// The type of the IP address.
	IpType pulumi.StringPtrInput
	// The port number of the public endpoint.
	Port pulumi.StringPtrInput
}

func (DbInstanceEndpointAddressState) ElementType added in v3.37.0

type DbInstanceEndpointArgs added in v3.36.0

type DbInstanceEndpointArgs struct {
	// The IP address of the internal endpoint.
	ConnectionStringPrefix pulumi.StringInput
	// The user-defined description of the endpoint.
	DbInstanceEndpointDescription pulumi.StringPtrInput
	// The ID of the instance.
	DbInstanceId pulumi.StringInput
	// The information about the node that is configured for the endpoint.  It contains two sub-fields(node_id and weight). See `nodeItems` below.
	NodeItems DbInstanceEndpointNodeItemArrayInput
	// The port number of the internal endpoint. You can specify the port number for the internal endpoint.Valid values: 3000 to 5999.
	Port pulumi.StringInput
	// The virtual private cloud (VPC) ID of the internal endpoint.
	VpcId pulumi.StringInput
	// The vSwitch ID of the internal endpoint.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a DbInstanceEndpoint resource.

func (DbInstanceEndpointArgs) ElementType added in v3.36.0

func (DbInstanceEndpointArgs) ElementType() reflect.Type

type DbInstanceEndpointArray added in v3.36.0

type DbInstanceEndpointArray []DbInstanceEndpointInput

func (DbInstanceEndpointArray) ElementType added in v3.36.0

func (DbInstanceEndpointArray) ElementType() reflect.Type

func (DbInstanceEndpointArray) ToDbInstanceEndpointArrayOutput added in v3.36.0

func (i DbInstanceEndpointArray) ToDbInstanceEndpointArrayOutput() DbInstanceEndpointArrayOutput

func (DbInstanceEndpointArray) ToDbInstanceEndpointArrayOutputWithContext added in v3.36.0

func (i DbInstanceEndpointArray) ToDbInstanceEndpointArrayOutputWithContext(ctx context.Context) DbInstanceEndpointArrayOutput

type DbInstanceEndpointArrayInput added in v3.36.0

type DbInstanceEndpointArrayInput interface {
	pulumi.Input

	ToDbInstanceEndpointArrayOutput() DbInstanceEndpointArrayOutput
	ToDbInstanceEndpointArrayOutputWithContext(context.Context) DbInstanceEndpointArrayOutput
}

DbInstanceEndpointArrayInput is an input type that accepts DbInstanceEndpointArray and DbInstanceEndpointArrayOutput values. You can construct a concrete instance of `DbInstanceEndpointArrayInput` via:

DbInstanceEndpointArray{ DbInstanceEndpointArgs{...} }

type DbInstanceEndpointArrayOutput added in v3.36.0

type DbInstanceEndpointArrayOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointArrayOutput) ElementType added in v3.36.0

func (DbInstanceEndpointArrayOutput) Index added in v3.36.0

func (DbInstanceEndpointArrayOutput) ToDbInstanceEndpointArrayOutput added in v3.36.0

func (o DbInstanceEndpointArrayOutput) ToDbInstanceEndpointArrayOutput() DbInstanceEndpointArrayOutput

func (DbInstanceEndpointArrayOutput) ToDbInstanceEndpointArrayOutputWithContext added in v3.36.0

func (o DbInstanceEndpointArrayOutput) ToDbInstanceEndpointArrayOutputWithContext(ctx context.Context) DbInstanceEndpointArrayOutput

type DbInstanceEndpointInput added in v3.36.0

type DbInstanceEndpointInput interface {
	pulumi.Input

	ToDbInstanceEndpointOutput() DbInstanceEndpointOutput
	ToDbInstanceEndpointOutputWithContext(ctx context.Context) DbInstanceEndpointOutput
}

type DbInstanceEndpointMap added in v3.36.0

type DbInstanceEndpointMap map[string]DbInstanceEndpointInput

func (DbInstanceEndpointMap) ElementType added in v3.36.0

func (DbInstanceEndpointMap) ElementType() reflect.Type

func (DbInstanceEndpointMap) ToDbInstanceEndpointMapOutput added in v3.36.0

func (i DbInstanceEndpointMap) ToDbInstanceEndpointMapOutput() DbInstanceEndpointMapOutput

func (DbInstanceEndpointMap) ToDbInstanceEndpointMapOutputWithContext added in v3.36.0

func (i DbInstanceEndpointMap) ToDbInstanceEndpointMapOutputWithContext(ctx context.Context) DbInstanceEndpointMapOutput

type DbInstanceEndpointMapInput added in v3.36.0

type DbInstanceEndpointMapInput interface {
	pulumi.Input

	ToDbInstanceEndpointMapOutput() DbInstanceEndpointMapOutput
	ToDbInstanceEndpointMapOutputWithContext(context.Context) DbInstanceEndpointMapOutput
}

DbInstanceEndpointMapInput is an input type that accepts DbInstanceEndpointMap and DbInstanceEndpointMapOutput values. You can construct a concrete instance of `DbInstanceEndpointMapInput` via:

DbInstanceEndpointMap{ "key": DbInstanceEndpointArgs{...} }

type DbInstanceEndpointMapOutput added in v3.36.0

type DbInstanceEndpointMapOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointMapOutput) ElementType added in v3.36.0

func (DbInstanceEndpointMapOutput) MapIndex added in v3.36.0

func (DbInstanceEndpointMapOutput) ToDbInstanceEndpointMapOutput added in v3.36.0

func (o DbInstanceEndpointMapOutput) ToDbInstanceEndpointMapOutput() DbInstanceEndpointMapOutput

func (DbInstanceEndpointMapOutput) ToDbInstanceEndpointMapOutputWithContext added in v3.36.0

func (o DbInstanceEndpointMapOutput) ToDbInstanceEndpointMapOutputWithContext(ctx context.Context) DbInstanceEndpointMapOutput

type DbInstanceEndpointNodeItem added in v3.36.0

type DbInstanceEndpointNodeItem struct {
	// The ID of the node.
	NodeId string `pulumi:"nodeId"`
	// The weight of the node. Read requests are distributed based on the weight.Valid values: 0 to 100.
	Weight int `pulumi:"weight"`
}

type DbInstanceEndpointNodeItemArgs added in v3.36.0

type DbInstanceEndpointNodeItemArgs struct {
	// The ID of the node.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
	// The weight of the node. Read requests are distributed based on the weight.Valid values: 0 to 100.
	Weight pulumi.IntInput `pulumi:"weight"`
}

func (DbInstanceEndpointNodeItemArgs) ElementType added in v3.36.0

func (DbInstanceEndpointNodeItemArgs) ToDbInstanceEndpointNodeItemOutput added in v3.36.0

func (i DbInstanceEndpointNodeItemArgs) ToDbInstanceEndpointNodeItemOutput() DbInstanceEndpointNodeItemOutput

func (DbInstanceEndpointNodeItemArgs) ToDbInstanceEndpointNodeItemOutputWithContext added in v3.36.0

func (i DbInstanceEndpointNodeItemArgs) ToDbInstanceEndpointNodeItemOutputWithContext(ctx context.Context) DbInstanceEndpointNodeItemOutput

type DbInstanceEndpointNodeItemArray added in v3.36.0

type DbInstanceEndpointNodeItemArray []DbInstanceEndpointNodeItemInput

func (DbInstanceEndpointNodeItemArray) ElementType added in v3.36.0

func (DbInstanceEndpointNodeItemArray) ToDbInstanceEndpointNodeItemArrayOutput added in v3.36.0

func (i DbInstanceEndpointNodeItemArray) ToDbInstanceEndpointNodeItemArrayOutput() DbInstanceEndpointNodeItemArrayOutput

func (DbInstanceEndpointNodeItemArray) ToDbInstanceEndpointNodeItemArrayOutputWithContext added in v3.36.0

func (i DbInstanceEndpointNodeItemArray) ToDbInstanceEndpointNodeItemArrayOutputWithContext(ctx context.Context) DbInstanceEndpointNodeItemArrayOutput

type DbInstanceEndpointNodeItemArrayInput added in v3.36.0

type DbInstanceEndpointNodeItemArrayInput interface {
	pulumi.Input

	ToDbInstanceEndpointNodeItemArrayOutput() DbInstanceEndpointNodeItemArrayOutput
	ToDbInstanceEndpointNodeItemArrayOutputWithContext(context.Context) DbInstanceEndpointNodeItemArrayOutput
}

DbInstanceEndpointNodeItemArrayInput is an input type that accepts DbInstanceEndpointNodeItemArray and DbInstanceEndpointNodeItemArrayOutput values. You can construct a concrete instance of `DbInstanceEndpointNodeItemArrayInput` via:

DbInstanceEndpointNodeItemArray{ DbInstanceEndpointNodeItemArgs{...} }

type DbInstanceEndpointNodeItemArrayOutput added in v3.36.0

type DbInstanceEndpointNodeItemArrayOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointNodeItemArrayOutput) ElementType added in v3.36.0

func (DbInstanceEndpointNodeItemArrayOutput) Index added in v3.36.0

func (DbInstanceEndpointNodeItemArrayOutput) ToDbInstanceEndpointNodeItemArrayOutput added in v3.36.0

func (o DbInstanceEndpointNodeItemArrayOutput) ToDbInstanceEndpointNodeItemArrayOutput() DbInstanceEndpointNodeItemArrayOutput

func (DbInstanceEndpointNodeItemArrayOutput) ToDbInstanceEndpointNodeItemArrayOutputWithContext added in v3.36.0

func (o DbInstanceEndpointNodeItemArrayOutput) ToDbInstanceEndpointNodeItemArrayOutputWithContext(ctx context.Context) DbInstanceEndpointNodeItemArrayOutput

type DbInstanceEndpointNodeItemInput added in v3.36.0

type DbInstanceEndpointNodeItemInput interface {
	pulumi.Input

	ToDbInstanceEndpointNodeItemOutput() DbInstanceEndpointNodeItemOutput
	ToDbInstanceEndpointNodeItemOutputWithContext(context.Context) DbInstanceEndpointNodeItemOutput
}

DbInstanceEndpointNodeItemInput is an input type that accepts DbInstanceEndpointNodeItemArgs and DbInstanceEndpointNodeItemOutput values. You can construct a concrete instance of `DbInstanceEndpointNodeItemInput` via:

DbInstanceEndpointNodeItemArgs{...}

type DbInstanceEndpointNodeItemOutput added in v3.36.0

type DbInstanceEndpointNodeItemOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointNodeItemOutput) ElementType added in v3.36.0

func (DbInstanceEndpointNodeItemOutput) NodeId added in v3.36.0

The ID of the node.

func (DbInstanceEndpointNodeItemOutput) ToDbInstanceEndpointNodeItemOutput added in v3.36.0

func (o DbInstanceEndpointNodeItemOutput) ToDbInstanceEndpointNodeItemOutput() DbInstanceEndpointNodeItemOutput

func (DbInstanceEndpointNodeItemOutput) ToDbInstanceEndpointNodeItemOutputWithContext added in v3.36.0

func (o DbInstanceEndpointNodeItemOutput) ToDbInstanceEndpointNodeItemOutputWithContext(ctx context.Context) DbInstanceEndpointNodeItemOutput

func (DbInstanceEndpointNodeItemOutput) Weight added in v3.36.0

The weight of the node. Read requests are distributed based on the weight.Valid values: 0 to 100.

type DbInstanceEndpointOutput added in v3.36.0

type DbInstanceEndpointOutput struct{ *pulumi.OutputState }

func (DbInstanceEndpointOutput) ConnectionString added in v3.36.0

func (o DbInstanceEndpointOutput) ConnectionString() pulumi.StringOutput

The internal endpoint.

func (DbInstanceEndpointOutput) ConnectionStringPrefix added in v3.36.0

func (o DbInstanceEndpointOutput) ConnectionStringPrefix() pulumi.StringOutput

The IP address of the internal endpoint.

func (DbInstanceEndpointOutput) DbInstanceEndpointDescription added in v3.36.0

func (o DbInstanceEndpointOutput) DbInstanceEndpointDescription() pulumi.StringOutput

The user-defined description of the endpoint.

func (DbInstanceEndpointOutput) DbInstanceEndpointId added in v3.36.0

func (o DbInstanceEndpointOutput) DbInstanceEndpointId() pulumi.StringOutput

The Endpoint ID of the instance.

func (DbInstanceEndpointOutput) DbInstanceEndpointType added in v3.36.0

func (o DbInstanceEndpointOutput) DbInstanceEndpointType() pulumi.StringOutput

The type of the endpoint.

func (DbInstanceEndpointOutput) DbInstanceId added in v3.36.0

func (o DbInstanceEndpointOutput) DbInstanceId() pulumi.StringOutput

The ID of the instance.

func (DbInstanceEndpointOutput) ElementType added in v3.36.0

func (DbInstanceEndpointOutput) ElementType() reflect.Type

func (DbInstanceEndpointOutput) IpType added in v3.36.0

The type of the IP address.

func (DbInstanceEndpointOutput) NodeItems added in v3.36.0

The information about the node that is configured for the endpoint. It contains two sub-fields(node_id and weight). See `nodeItems` below.

func (DbInstanceEndpointOutput) Port added in v3.36.0

The port number of the internal endpoint. You can specify the port number for the internal endpoint.Valid values: 3000 to 5999.

func (DbInstanceEndpointOutput) PrivateIpAddress added in v3.36.0

func (o DbInstanceEndpointOutput) PrivateIpAddress() pulumi.StringOutput

The IP address of the internal endpoint.

func (DbInstanceEndpointOutput) ToDbInstanceEndpointOutput added in v3.36.0

func (o DbInstanceEndpointOutput) ToDbInstanceEndpointOutput() DbInstanceEndpointOutput

func (DbInstanceEndpointOutput) ToDbInstanceEndpointOutputWithContext added in v3.36.0

func (o DbInstanceEndpointOutput) ToDbInstanceEndpointOutputWithContext(ctx context.Context) DbInstanceEndpointOutput

func (DbInstanceEndpointOutput) VpcId added in v3.36.0

The virtual private cloud (VPC) ID of the internal endpoint.

func (DbInstanceEndpointOutput) VswitchId added in v3.36.0

The vSwitch ID of the internal endpoint.

type DbInstanceEndpointState added in v3.36.0

type DbInstanceEndpointState struct {
	// The internal endpoint.
	ConnectionString pulumi.StringPtrInput
	// The IP address of the internal endpoint.
	ConnectionStringPrefix pulumi.StringPtrInput
	// The user-defined description of the endpoint.
	DbInstanceEndpointDescription pulumi.StringPtrInput
	// The Endpoint ID of the instance.
	DbInstanceEndpointId pulumi.StringPtrInput
	// The type of the endpoint.
	DbInstanceEndpointType pulumi.StringPtrInput
	// The ID of the instance.
	DbInstanceId pulumi.StringPtrInput
	// The type of the IP address.
	IpType pulumi.StringPtrInput
	// The information about the node that is configured for the endpoint.  It contains two sub-fields(node_id and weight). See `nodeItems` below.
	NodeItems DbInstanceEndpointNodeItemArrayInput
	// The port number of the internal endpoint. You can specify the port number for the internal endpoint.Valid values: 3000 to 5999.
	Port pulumi.StringPtrInput
	// The IP address of the internal endpoint.
	PrivateIpAddress pulumi.StringPtrInput
	// The virtual private cloud (VPC) ID of the internal endpoint.
	VpcId pulumi.StringPtrInput
	// The vSwitch ID of the internal endpoint.
	VswitchId pulumi.StringPtrInput
}

func (DbInstanceEndpointState) ElementType added in v3.36.0

func (DbInstanceEndpointState) ElementType() reflect.Type

type DbNode added in v3.35.0

type DbNode struct {
	pulumi.CustomResourceState

	// The specification information of the node.
	ClassCode pulumi.StringOutput `pulumi:"classCode"`
	// The Id of instance that can run database.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The ID of the node.
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
	// The region ID of the node.
	NodeRegionId pulumi.StringOutput `pulumi:"nodeRegionId"`
	// The role of node.
	NodeRole pulumi.StringOutput `pulumi:"nodeRole"`
	// The zone ID of the node.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provide RDS cluster instance to increase node resources, see [What is RDS DB Node](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-createdbnodes).

> **NOTE:** Available since v1.202.0.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(_default.Ids[0]),
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			Category:              pulumi.StringRef("cluster"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Ids[0]),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("8.0"),
			InstanceType:          pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			InstanceName:          pulumi.String(name),
			VswitchId:             defaultSwitch.ID(),
			MonitoringPeriod:      pulumi.Int(60),
			DbInstanceStorageType: pulumi.String("cloud_essd"),
			SecurityGroupIds: pulumi.StringArray{
				defaultSecurityGroup.ID(),
			},
			ZoneId:       pulumi.String(_default.Ids[0]),
			ZoneIdSlaveA: pulumi.String(_default.Ids[0]),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewDbNode(ctx, "default", &rds.DbNodeArgs{
			DbInstanceId: defaultInstance.ID(),
			ClassCode:    defaultInstance.InstanceType,
			ZoneId:       defaultSwitch.ZoneId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS MySQL database cluster node agent function can be imported using id, e.g.

```sh $ pulumi import alicloud:rds/dbNode:DbNode example <db_instance_id>:<node_id> ```

func GetDbNode added in v3.35.0

func GetDbNode(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DbNodeState, opts ...pulumi.ResourceOption) (*DbNode, error)

GetDbNode gets an existing DbNode 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 NewDbNode added in v3.35.0

func NewDbNode(ctx *pulumi.Context,
	name string, args *DbNodeArgs, opts ...pulumi.ResourceOption) (*DbNode, error)

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

func (*DbNode) ElementType added in v3.35.0

func (*DbNode) ElementType() reflect.Type

func (*DbNode) ToDbNodeOutput added in v3.35.0

func (i *DbNode) ToDbNodeOutput() DbNodeOutput

func (*DbNode) ToDbNodeOutputWithContext added in v3.35.0

func (i *DbNode) ToDbNodeOutputWithContext(ctx context.Context) DbNodeOutput

type DbNodeArgs added in v3.35.0

type DbNodeArgs struct {
	// The specification information of the node.
	ClassCode pulumi.StringInput
	// The Id of instance that can run database.
	DbInstanceId pulumi.StringInput
	// The zone ID of the node.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a DbNode resource.

func (DbNodeArgs) ElementType added in v3.35.0

func (DbNodeArgs) ElementType() reflect.Type

type DbNodeArray added in v3.35.0

type DbNodeArray []DbNodeInput

func (DbNodeArray) ElementType added in v3.35.0

func (DbNodeArray) ElementType() reflect.Type

func (DbNodeArray) ToDbNodeArrayOutput added in v3.35.0

func (i DbNodeArray) ToDbNodeArrayOutput() DbNodeArrayOutput

func (DbNodeArray) ToDbNodeArrayOutputWithContext added in v3.35.0

func (i DbNodeArray) ToDbNodeArrayOutputWithContext(ctx context.Context) DbNodeArrayOutput

type DbNodeArrayInput added in v3.35.0

type DbNodeArrayInput interface {
	pulumi.Input

	ToDbNodeArrayOutput() DbNodeArrayOutput
	ToDbNodeArrayOutputWithContext(context.Context) DbNodeArrayOutput
}

DbNodeArrayInput is an input type that accepts DbNodeArray and DbNodeArrayOutput values. You can construct a concrete instance of `DbNodeArrayInput` via:

DbNodeArray{ DbNodeArgs{...} }

type DbNodeArrayOutput added in v3.35.0

type DbNodeArrayOutput struct{ *pulumi.OutputState }

func (DbNodeArrayOutput) ElementType added in v3.35.0

func (DbNodeArrayOutput) ElementType() reflect.Type

func (DbNodeArrayOutput) Index added in v3.35.0

func (DbNodeArrayOutput) ToDbNodeArrayOutput added in v3.35.0

func (o DbNodeArrayOutput) ToDbNodeArrayOutput() DbNodeArrayOutput

func (DbNodeArrayOutput) ToDbNodeArrayOutputWithContext added in v3.35.0

func (o DbNodeArrayOutput) ToDbNodeArrayOutputWithContext(ctx context.Context) DbNodeArrayOutput

type DbNodeInput added in v3.35.0

type DbNodeInput interface {
	pulumi.Input

	ToDbNodeOutput() DbNodeOutput
	ToDbNodeOutputWithContext(ctx context.Context) DbNodeOutput
}

type DbNodeMap added in v3.35.0

type DbNodeMap map[string]DbNodeInput

func (DbNodeMap) ElementType added in v3.35.0

func (DbNodeMap) ElementType() reflect.Type

func (DbNodeMap) ToDbNodeMapOutput added in v3.35.0

func (i DbNodeMap) ToDbNodeMapOutput() DbNodeMapOutput

func (DbNodeMap) ToDbNodeMapOutputWithContext added in v3.35.0

func (i DbNodeMap) ToDbNodeMapOutputWithContext(ctx context.Context) DbNodeMapOutput

type DbNodeMapInput added in v3.35.0

type DbNodeMapInput interface {
	pulumi.Input

	ToDbNodeMapOutput() DbNodeMapOutput
	ToDbNodeMapOutputWithContext(context.Context) DbNodeMapOutput
}

DbNodeMapInput is an input type that accepts DbNodeMap and DbNodeMapOutput values. You can construct a concrete instance of `DbNodeMapInput` via:

DbNodeMap{ "key": DbNodeArgs{...} }

type DbNodeMapOutput added in v3.35.0

type DbNodeMapOutput struct{ *pulumi.OutputState }

func (DbNodeMapOutput) ElementType added in v3.35.0

func (DbNodeMapOutput) ElementType() reflect.Type

func (DbNodeMapOutput) MapIndex added in v3.35.0

func (DbNodeMapOutput) ToDbNodeMapOutput added in v3.35.0

func (o DbNodeMapOutput) ToDbNodeMapOutput() DbNodeMapOutput

func (DbNodeMapOutput) ToDbNodeMapOutputWithContext added in v3.35.0

func (o DbNodeMapOutput) ToDbNodeMapOutputWithContext(ctx context.Context) DbNodeMapOutput

type DbNodeOutput added in v3.35.0

type DbNodeOutput struct{ *pulumi.OutputState }

func (DbNodeOutput) ClassCode added in v3.35.0

func (o DbNodeOutput) ClassCode() pulumi.StringOutput

The specification information of the node.

func (DbNodeOutput) DbInstanceId added in v3.35.0

func (o DbNodeOutput) DbInstanceId() pulumi.StringOutput

The Id of instance that can run database.

func (DbNodeOutput) ElementType added in v3.35.0

func (DbNodeOutput) ElementType() reflect.Type

func (DbNodeOutput) NodeId added in v3.35.0

func (o DbNodeOutput) NodeId() pulumi.StringOutput

The ID of the node.

func (DbNodeOutput) NodeRegionId added in v3.35.0

func (o DbNodeOutput) NodeRegionId() pulumi.StringOutput

The region ID of the node.

func (DbNodeOutput) NodeRole added in v3.35.0

func (o DbNodeOutput) NodeRole() pulumi.StringOutput

The role of node.

func (DbNodeOutput) ToDbNodeOutput added in v3.35.0

func (o DbNodeOutput) ToDbNodeOutput() DbNodeOutput

func (DbNodeOutput) ToDbNodeOutputWithContext added in v3.35.0

func (o DbNodeOutput) ToDbNodeOutputWithContext(ctx context.Context) DbNodeOutput

func (DbNodeOutput) ZoneId added in v3.35.0

func (o DbNodeOutput) ZoneId() pulumi.StringOutput

The zone ID of the node.

type DbNodeState added in v3.35.0

type DbNodeState struct {
	// The specification information of the node.
	ClassCode pulumi.StringPtrInput
	// The Id of instance that can run database.
	DbInstanceId pulumi.StringPtrInput
	// The ID of the node.
	NodeId pulumi.StringPtrInput
	// The region ID of the node.
	NodeRegionId pulumi.StringPtrInput
	// The role of node.
	NodeRole pulumi.StringPtrInput
	// The zone ID of the node.
	ZoneId pulumi.StringPtrInput
}

func (DbNodeState) ElementType added in v3.35.0

func (DbNodeState) ElementType() reflect.Type

type DdrInstance added in v3.31.0

type DdrInstance 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 paymentType is `Subscription`. Default to `false`.
	AutoRenew pulumi.BoolOutput `pulumi:"autoRenew"`
	// Auto-renewal period of an instance, in the unit of the month. It is valid when paymentType is `Subscription`. Valid value:[1~12], Default to 1.
	AutoRenewPeriod pulumi.IntOutput `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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringOutput `pulumi:"autoUpgradeMinorVersion"`
	// The ID of the backup set that is used for the restoration. You can call the DescribeCrossRegionBackups operation to query the ID of the backup set.
	BackupSetId pulumi.StringPtrOutput `pulumi:"backupSetId"`
	// 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 RDS edition of the instance.
	Category pulumi.StringOutput `pulumi:"category"`
	// 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"`
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringOutput `pulumi:"connectionStringPrefix"`
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayAttribute"`
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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).
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbInstanceStorageType pulumi.StringOutput `pulumi:"dbInstanceStorageType"`
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolOutput `pulumi:"deletionProtection"`
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime pulumi.StringPtrOutput `pulumi:"effectiveTime"`
	// 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.
	//
	// > **NOTE:** When the 'EngineVersion' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database version. Value options can refer to the latest docs [CreateDdrInstance](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/restore-data-to-a-new-instance-across-regions) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolOutput `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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringOutput `pulumi:"haConfig"`
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrOutput `pulumi:"instanceName"`
	// The storage capacity of the destination instance. Valid values: 5 to 2000. Unit: GB.
	//
	// This value must be a multiple of 5 GB. For more information, see Primary ApsaraDB RDS instance types.
	InstanceStorage pulumi.IntOutput `pulumi:"instanceStorage"`
	// DB Instance type.
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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) . See `parameters` below.
	Parameters DdrInstanceParameterArrayOutput `pulumi:"parameters"`
	// Valid values are `Subscription`, `PayAsYouGo`, Default to `PayAsYouGo`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The duration that you will buy DB instance (in month). It is valid when paymentType is `Subscription`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs DdrInstancePgHbaConfArrayOutput `pulumi:"pgHbaConfs"`
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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"`
	// The point in time to which you want to restore data. The point in time that you specify must be earlier than the current time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrOutput `pulumi:"restoreTime"`
	// The method that is used to restore data. Valid values:
	// - BackupSet: Data is restored from a backup set. If you use this value, you must also specify the BackupSetID parameter.
	// - BackupTime: restores data to a point in time. You must also specify the RestoreTime, SourceRegion, and SourceDBInstanceName parameters.
	RestoreType pulumi.StringOutput `pulumi:"restoreType"`
	// ) 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.StringOutput `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 ID of the source instance if you want to restore data to a point in time.
	SourceDbInstanceName pulumi.StringPtrOutput `pulumi:"sourceDbInstanceName"`
	// The region ID of the source instance if you want to restore data to a point in time.
	SourceRegion pulumi.StringPtrOutput `pulumi:"sourceRegion"`
	// The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.
	SqlCollectorConfigValue pulumi.IntOutput `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
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrOutput `pulumi:"storageAutoScale"`
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringOutput `pulumi:"targetMinorVersion"`
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringOutput `pulumi:"tcpConnectionType"`
	// 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType pulumi.StringPtrOutput `pulumi:"whitelistNetworkType"`
	// The Zone to launch the DB instance. 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.
	ZoneIdSlaveA pulumi.StringOutput `pulumi:"zoneIdSlaveA"`
	// The region ID of the log instance if you create a log instance.
	ZoneIdSlaveB pulumi.StringOutput `pulumi:"zoneIdSlaveB"`
}

## Import

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

```sh $ pulumi import alicloud:rds/ddrInstance:DdrInstance example rm-abc12345678 ```

func GetDdrInstance added in v3.31.0

func GetDdrInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DdrInstanceState, opts ...pulumi.ResourceOption) (*DdrInstance, error)

GetDdrInstance gets an existing DdrInstance 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 NewDdrInstance added in v3.31.0

func NewDdrInstance(ctx *pulumi.Context,
	name string, args *DdrInstanceArgs, opts ...pulumi.ResourceOption) (*DdrInstance, error)

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

func (*DdrInstance) ElementType added in v3.31.0

func (*DdrInstance) ElementType() reflect.Type

func (*DdrInstance) ToDdrInstanceOutput added in v3.31.0

func (i *DdrInstance) ToDdrInstanceOutput() DdrInstanceOutput

func (*DdrInstance) ToDdrInstanceOutputWithContext added in v3.31.0

func (i *DdrInstance) ToDdrInstanceOutputWithContext(ctx context.Context) DdrInstanceOutput

type DdrInstanceArgs added in v3.31.0

type DdrInstanceArgs 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 paymentType is `Subscription`. Default to `false`.
	AutoRenew pulumi.BoolPtrInput
	// Auto-renewal period of an instance, in the unit of the month. It is valid when paymentType is `Subscription`. 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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The ID of the backup set that is used for the restoration. You can call the DescribeCrossRegionBackups operation to query the ID of the backup set.
	BackupSetId 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
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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).
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbInstanceStorageType pulumi.StringPtrInput
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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.
	//
	// > **NOTE:** When the 'EngineVersion' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	Engine pulumi.StringInput
	// Database version. Value options can refer to the latest docs [CreateDdrInstance](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/restore-data-to-a-new-instance-across-regions) `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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// The storage capacity of the destination instance. Valid values: 5 to 2000. Unit: GB.
	//
	// This value must be a multiple of 5 GB. For more information, see Primary ApsaraDB RDS instance types.
	InstanceStorage pulumi.IntInput
	// DB Instance type.
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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) . See `parameters` below.
	Parameters DdrInstanceParameterArrayInput
	// Valid values are `Subscription`, `PayAsYouGo`, Default to `PayAsYouGo`.
	PaymentType pulumi.StringInput
	// The duration that you will buy DB instance (in month). It is valid when paymentType is `Subscription`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs DdrInstancePgHbaConfArrayInput
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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
	// The point in time to which you want to restore data. The point in time that you specify must be earlier than the current time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrInput
	// The method that is used to restore data. Valid values:
	// - BackupSet: Data is restored from a backup set. If you use this value, you must also specify the BackupSetID parameter.
	// - BackupTime: restores data to a point in time. You must also specify the RestoreTime, SourceRegion, and SourceDBInstanceName parameters.
	RestoreType pulumi.StringInput
	// ) 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 ID of the source instance if you want to restore data to a point in time.
	SourceDbInstanceName pulumi.StringPtrInput
	// The region ID of the source instance if you want to restore data to a point in time.
	SourceRegion 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
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrInput
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringPtrInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType pulumi.StringPtrInput
	// The Zone to launch the DB instance. 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 set of arguments for constructing a DdrInstance resource.

func (DdrInstanceArgs) ElementType added in v3.31.0

func (DdrInstanceArgs) ElementType() reflect.Type

type DdrInstanceArray added in v3.31.0

type DdrInstanceArray []DdrInstanceInput

func (DdrInstanceArray) ElementType added in v3.31.0

func (DdrInstanceArray) ElementType() reflect.Type

func (DdrInstanceArray) ToDdrInstanceArrayOutput added in v3.31.0

func (i DdrInstanceArray) ToDdrInstanceArrayOutput() DdrInstanceArrayOutput

func (DdrInstanceArray) ToDdrInstanceArrayOutputWithContext added in v3.31.0

func (i DdrInstanceArray) ToDdrInstanceArrayOutputWithContext(ctx context.Context) DdrInstanceArrayOutput

type DdrInstanceArrayInput added in v3.31.0

type DdrInstanceArrayInput interface {
	pulumi.Input

	ToDdrInstanceArrayOutput() DdrInstanceArrayOutput
	ToDdrInstanceArrayOutputWithContext(context.Context) DdrInstanceArrayOutput
}

DdrInstanceArrayInput is an input type that accepts DdrInstanceArray and DdrInstanceArrayOutput values. You can construct a concrete instance of `DdrInstanceArrayInput` via:

DdrInstanceArray{ DdrInstanceArgs{...} }

type DdrInstanceArrayOutput added in v3.31.0

type DdrInstanceArrayOutput struct{ *pulumi.OutputState }

func (DdrInstanceArrayOutput) ElementType added in v3.31.0

func (DdrInstanceArrayOutput) ElementType() reflect.Type

func (DdrInstanceArrayOutput) Index added in v3.31.0

func (DdrInstanceArrayOutput) ToDdrInstanceArrayOutput added in v3.31.0

func (o DdrInstanceArrayOutput) ToDdrInstanceArrayOutput() DdrInstanceArrayOutput

func (DdrInstanceArrayOutput) ToDdrInstanceArrayOutputWithContext added in v3.31.0

func (o DdrInstanceArrayOutput) ToDdrInstanceArrayOutputWithContext(ctx context.Context) DdrInstanceArrayOutput

type DdrInstanceInput added in v3.31.0

type DdrInstanceInput interface {
	pulumi.Input

	ToDdrInstanceOutput() DdrInstanceOutput
	ToDdrInstanceOutputWithContext(ctx context.Context) DdrInstanceOutput
}

type DdrInstanceMap added in v3.31.0

type DdrInstanceMap map[string]DdrInstanceInput

func (DdrInstanceMap) ElementType added in v3.31.0

func (DdrInstanceMap) ElementType() reflect.Type

func (DdrInstanceMap) ToDdrInstanceMapOutput added in v3.31.0

func (i DdrInstanceMap) ToDdrInstanceMapOutput() DdrInstanceMapOutput

func (DdrInstanceMap) ToDdrInstanceMapOutputWithContext added in v3.31.0

func (i DdrInstanceMap) ToDdrInstanceMapOutputWithContext(ctx context.Context) DdrInstanceMapOutput

type DdrInstanceMapInput added in v3.31.0

type DdrInstanceMapInput interface {
	pulumi.Input

	ToDdrInstanceMapOutput() DdrInstanceMapOutput
	ToDdrInstanceMapOutputWithContext(context.Context) DdrInstanceMapOutput
}

DdrInstanceMapInput is an input type that accepts DdrInstanceMap and DdrInstanceMapOutput values. You can construct a concrete instance of `DdrInstanceMapInput` via:

DdrInstanceMap{ "key": DdrInstanceArgs{...} }

type DdrInstanceMapOutput added in v3.31.0

type DdrInstanceMapOutput struct{ *pulumi.OutputState }

func (DdrInstanceMapOutput) ElementType added in v3.31.0

func (DdrInstanceMapOutput) ElementType() reflect.Type

func (DdrInstanceMapOutput) MapIndex added in v3.31.0

func (DdrInstanceMapOutput) ToDdrInstanceMapOutput added in v3.31.0

func (o DdrInstanceMapOutput) ToDdrInstanceMapOutput() DdrInstanceMapOutput

func (DdrInstanceMapOutput) ToDdrInstanceMapOutputWithContext added in v3.31.0

func (o DdrInstanceMapOutput) ToDdrInstanceMapOutputWithContext(ctx context.Context) DdrInstanceMapOutput

type DdrInstanceOutput added in v3.31.0

type DdrInstanceOutput struct{ *pulumi.OutputState }

func (DdrInstanceOutput) Acl added in v3.31.0

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)

func (DdrInstanceOutput) AutoRenew added in v3.31.0

func (o DdrInstanceOutput) AutoRenew() pulumi.BoolOutput

Whether to renewal a DB instance automatically or not. It is valid when paymentType is `Subscription`. Default to `false`.

func (DdrInstanceOutput) AutoRenewPeriod added in v3.31.0

func (o DdrInstanceOutput) AutoRenewPeriod() pulumi.IntOutput

Auto-renewal period of an instance, in the unit of the month. It is valid when paymentType is `Subscription`. Valid value:[1~12], Default to 1.

func (DdrInstanceOutput) AutoUpgradeMinorVersion added in v3.31.0

func (o DdrInstanceOutput) AutoUpgradeMinorVersion() pulumi.StringOutput

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.

See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).

func (DdrInstanceOutput) BackupSetId added in v3.31.0

func (o DdrInstanceOutput) BackupSetId() pulumi.StringPtrOutput

The ID of the backup set that is used for the restoration. You can call the DescribeCrossRegionBackups operation to query the ID of the backup set.

func (DdrInstanceOutput) CaType added in v3.31.0

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

func (DdrInstanceOutput) Category added in v3.31.0

func (o DdrInstanceOutput) Category() pulumi.StringOutput

The RDS edition of the instance.

func (DdrInstanceOutput) ClientCaCert added in v3.31.0

func (o DdrInstanceOutput) ClientCaCert() pulumi.StringPtrOutput

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.

func (DdrInstanceOutput) ClientCaEnabled added in v3.31.0

func (o DdrInstanceOutput) ClientCaEnabled() pulumi.IntPtrOutput

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

func (DdrInstanceOutput) ClientCertRevocationList added in v3.31.0

func (o DdrInstanceOutput) ClientCertRevocationList() pulumi.StringPtrOutput

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.

func (DdrInstanceOutput) ClientCrlEnabled added in v3.31.0

func (o DdrInstanceOutput) ClientCrlEnabled() pulumi.IntPtrOutput

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

func (DdrInstanceOutput) ConnectionString added in v3.31.0

func (o DdrInstanceOutput) ConnectionString() pulumi.StringOutput

RDS database connection string.

func (DdrInstanceOutput) ConnectionStringPrefix added in v3.31.0

func (o DdrInstanceOutput) ConnectionStringPrefix() pulumi.StringOutput

The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix. > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?

func (DdrInstanceOutput) DbInstanceIpArrayAttribute added in v3.31.0

func (o DdrInstanceOutput) DbInstanceIpArrayAttribute() pulumi.StringPtrOutput

The attribute of the IP address whitelist. By default, this parameter is empty.

> **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).

func (DdrInstanceOutput) DbInstanceIpArrayName added in v3.31.0

func (o DdrInstanceOutput) DbInstanceIpArrayName() pulumi.StringPtrOutput

The name of the IP address whitelist. Default value: Default.

> **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.

func (DdrInstanceOutput) DbInstanceStorageType added in v3.31.0

func (o DdrInstanceOutput) DbInstanceStorageType() pulumi.StringOutput

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).

> **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.

func (DdrInstanceOutput) DeletionProtection added in v3.31.0

func (o DdrInstanceOutput) DeletionProtection() pulumi.BoolOutput

The switch of delete protection. Valid values: - true: delete protect. - false: no delete protect.

> **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.

func (DdrInstanceOutput) EffectiveTime added in v3.31.0

func (o DdrInstanceOutput) EffectiveTime() pulumi.StringPtrOutput

The method to update the engine version and change. Default value: Immediate. Valid values: - Immediate: The change immediately takes effect. - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.

func (DdrInstanceOutput) ElementType added in v3.31.0

func (DdrInstanceOutput) ElementType() reflect.Type

func (DdrInstanceOutput) EncryptionKey added in v3.31.0

func (o DdrInstanceOutput) EncryptionKey() pulumi.StringPtrOutput

The key id of the KMS. Used for encrypting a disk if not null. Only for PostgreSQL, MySQL and SQLServer.

func (DdrInstanceOutput) Engine added in v3.31.0

Database type. Value options: MySQL, SQLServer.

> **NOTE:** When the 'EngineVersion' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.

func (DdrInstanceOutput) EngineVersion added in v3.31.0

func (o DdrInstanceOutput) EngineVersion() pulumi.StringOutput

Database version. Value options can refer to the latest docs [CreateDdrInstance](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/restore-data-to-a-new-instance-across-regions) `EngineVersion`.

func (DdrInstanceOutput) ForceRestart added in v3.31.0

func (o DdrInstanceOutput) ForceRestart() pulumi.BoolOutput

Set it to true to make some parameter efficient when modifying them. Default to false.

func (DdrInstanceOutput) FreshWhiteListReadins added in v3.31.0

func (o DdrInstanceOutput) FreshWhiteListReadins() pulumi.StringPtrOutput

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.

func (DdrInstanceOutput) HaConfig added in v3.31.0

func (o DdrInstanceOutput) HaConfig() pulumi.StringOutput

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.

> **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.

func (DdrInstanceOutput) InstanceName added in v3.31.0

func (o DdrInstanceOutput) InstanceName() pulumi.StringPtrOutput

The name of DB instance. It a string of 2 to 256 characters.

func (DdrInstanceOutput) InstanceStorage added in v3.31.0

func (o DdrInstanceOutput) InstanceStorage() pulumi.IntOutput

The storage capacity of the destination instance. Valid values: 5 to 2000. Unit: GB.

This value must be a multiple of 5 GB. For more information, see Primary ApsaraDB RDS instance types.

func (DdrInstanceOutput) InstanceType added in v3.31.0

func (o DdrInstanceOutput) InstanceType() pulumi.StringOutput

DB Instance type.

> **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value.

func (DdrInstanceOutput) MaintainTime added in v3.31.0

func (o DdrInstanceOutput) MaintainTime() pulumi.StringOutput

Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)

func (DdrInstanceOutput) ManualHaTime added in v3.31.0

func (o DdrInstanceOutput) ManualHaTime() pulumi.StringPtrOutput

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.

> **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.

func (DdrInstanceOutput) ModifyMode added in v3.31.0

func (o DdrInstanceOutput) ModifyMode() pulumi.StringPtrOutput

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.

func (DdrInstanceOutput) MonitoringPeriod added in v3.31.0

func (o DdrInstanceOutput) MonitoringPeriod() pulumi.IntOutput

The monitoring frequency in seconds. Valid values are 5, 60, 300. Defaults to 300.

func (DdrInstanceOutput) Parameters added in v3.31.0

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) . See `parameters` below.

func (DdrInstanceOutput) PaymentType added in v3.31.0

func (o DdrInstanceOutput) PaymentType() pulumi.StringOutput

Valid values are `Subscription`, `PayAsYouGo`, Default to `PayAsYouGo`.

func (DdrInstanceOutput) Period added in v3.31.0

The duration that you will buy DB instance (in month). It is valid when paymentType is `Subscription`. Valid values: [1~9], 12, 24, 36. > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.

func (DdrInstanceOutput) PgHbaConfs added in v3.31.0

The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.

func (DdrInstanceOutput) Port added in v3.31.0

The private port of the database service. If you want to update public port, please use resource rds.Connection port.

func (DdrInstanceOutput) PrivateIpAddress added in v3.31.0

func (o DdrInstanceOutput) PrivateIpAddress() pulumi.StringOutput

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.

func (DdrInstanceOutput) ReleasedKeepPolicy added in v3.31.0

func (o DdrInstanceOutput) ReleasedKeepPolicy() pulumi.StringPtrOutput

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.

> **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.

func (DdrInstanceOutput) ReplicationAcl added in v3.31.0

func (o DdrInstanceOutput) ReplicationAcl() pulumi.StringOutput

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)

func (DdrInstanceOutput) ResourceGroupId added in v3.31.0

func (o DdrInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of resource group which the DB instance belongs.

func (DdrInstanceOutput) RestoreTime added in v3.31.0

func (o DdrInstanceOutput) RestoreTime() pulumi.StringPtrOutput

The point in time to which you want to restore data. The point in time that you specify must be earlier than the current time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

func (DdrInstanceOutput) RestoreType added in v3.31.0

func (o DdrInstanceOutput) RestoreType() pulumi.StringOutput

The method that is used to restore data. Valid values: - BackupSet: Data is restored from a backup set. If you use this value, you must also specify the BackupSetID parameter. - BackupTime: restores data to a point in time. You must also specify the RestoreTime, SourceRegion, and SourceDBInstanceName parameters.

func (DdrInstanceOutput) SecurityGroupIds added in v3.31.0

func (o DdrInstanceOutput) SecurityGroupIds() pulumi.StringArrayOutput

) The list IDs to join ECS Security Group. At most supports three security groups.

func (DdrInstanceOutput) SecurityIpMode added in v3.31.0

func (o DdrInstanceOutput) SecurityIpMode() pulumi.StringOutput

Valid values are `normal`, `safety`, Default to `normal`. support `safety` switch to high security access mode.

func (DdrInstanceOutput) SecurityIpType added in v3.31.0

func (o DdrInstanceOutput) SecurityIpType() pulumi.StringPtrOutput

The type of IP address in the IP address whitelist.

func (DdrInstanceOutput) SecurityIps added in v3.31.0

func (o DdrInstanceOutput) SecurityIps() pulumi.StringArrayOutput

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]).

func (DdrInstanceOutput) ServerCert added in v3.31.0

func (o DdrInstanceOutput) ServerCert() pulumi.StringOutput

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.

func (DdrInstanceOutput) ServerKey added in v3.31.0

func (o DdrInstanceOutput) ServerKey() pulumi.StringOutput

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.

func (DdrInstanceOutput) SourceDbInstanceName added in v3.31.0

func (o DdrInstanceOutput) SourceDbInstanceName() pulumi.StringPtrOutput

The ID of the source instance if you want to restore data to a point in time.

func (DdrInstanceOutput) SourceRegion added in v3.31.0

func (o DdrInstanceOutput) SourceRegion() pulumi.StringPtrOutput

The region ID of the source instance if you want to restore data to a point in time.

func (DdrInstanceOutput) SqlCollectorConfigValue added in v3.31.0

func (o DdrInstanceOutput) SqlCollectorConfigValue() pulumi.IntOutput

The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.

func (DdrInstanceOutput) SqlCollectorStatus added in v3.31.0

func (o DdrInstanceOutput) SqlCollectorStatus() pulumi.StringOutput

The sql collector status of the instance. Valid values are `Enabled`, `Disabled`, Default to `Disabled`.

func (DdrInstanceOutput) SslAction added in v3.31.0

func (o DdrInstanceOutput) SslAction() pulumi.StringOutput

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).

func (DdrInstanceOutput) SslStatus added in v3.31.0

func (o DdrInstanceOutput) SslStatus() pulumi.StringOutput

Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.

func (DdrInstanceOutput) StorageAutoScale added in v3.31.0

func (o DdrInstanceOutput) StorageAutoScale() pulumi.StringPtrOutput

Automatic storage space expansion switch. Valid values: - Enable - Disable

> **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.

func (DdrInstanceOutput) StorageThreshold added in v3.31.0

func (o DdrInstanceOutput) StorageThreshold() pulumi.IntPtrOutput

The trigger threshold (percentage) for automatic storage space expansion. Valid values: - 10 - 20 - 30 - 40 - 50

> **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.

func (DdrInstanceOutput) StorageUpperBound added in v3.31.0

func (o DdrInstanceOutput) StorageUpperBound() pulumi.IntPtrOutput

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.

> **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.

func (DdrInstanceOutput) SwitchTime added in v3.31.0

func (o DdrInstanceOutput) SwitchTime() pulumi.StringPtrOutput

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.

> **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.

func (DdrInstanceOutput) Tags added in v3.31.0

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.

func (DdrInstanceOutput) TargetMinorVersion added in v3.31.0

func (o DdrInstanceOutput) TargetMinorVersion() pulumi.StringOutput

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.

> **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.

func (DdrInstanceOutput) TcpConnectionType added in v3.31.0

func (o DdrInstanceOutput) TcpConnectionType() pulumi.StringOutput

The availability check method of the instance. Valid values: - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance. - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.

func (DdrInstanceOutput) TdeStatus added in v3.31.0

The TDE(Transparent Data Encryption) status. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).

func (DdrInstanceOutput) ToDdrInstanceOutput added in v3.31.0

func (o DdrInstanceOutput) ToDdrInstanceOutput() DdrInstanceOutput

func (DdrInstanceOutput) ToDdrInstanceOutputWithContext added in v3.31.0

func (o DdrInstanceOutput) ToDdrInstanceOutputWithContext(ctx context.Context) DdrInstanceOutput

func (DdrInstanceOutput) UpgradeDbInstanceKernelVersion added in v3.31.0

func (o DdrInstanceOutput) UpgradeDbInstanceKernelVersion() pulumi.BoolPtrOutput

Whether to upgrade a minor version of the kernel. Valid values: - true: upgrade - false: not to upgrade

func (DdrInstanceOutput) UpgradeTime added in v3.31.0

func (o DdrInstanceOutput) UpgradeTime() pulumi.StringPtrOutput

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.

func (DdrInstanceOutput) VpcId added in v3.31.0

The VPC ID of the instance.

> **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).

func (DdrInstanceOutput) VswitchId added in v3.31.0

The virtual switch ID to launch DB instances in one VPC. If there are multiple vswitches, separate them with commas.

func (DdrInstanceOutput) WhitelistNetworkType added in v3.31.0

func (o DdrInstanceOutput) WhitelistNetworkType() pulumi.StringPtrOutput

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

> **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.

func (DdrInstanceOutput) ZoneId added in v3.31.0

The Zone to launch the DB instance. 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`.

func (DdrInstanceOutput) ZoneIdSlaveA added in v3.31.0

func (o DdrInstanceOutput) ZoneIdSlaveA() pulumi.StringOutput

The region ID of the secondary instance if you create a secondary instance.

func (DdrInstanceOutput) ZoneIdSlaveB added in v3.31.0

func (o DdrInstanceOutput) ZoneIdSlaveB() pulumi.StringOutput

The region ID of the log instance if you create a log instance.

type DdrInstanceParameter added in v3.31.0

type DdrInstanceParameter struct {
	// The parameter name.
	Name string `pulumi:"name"`
	// The parameter value.
	Value string `pulumi:"value"`
}

type DdrInstanceParameterArgs added in v3.31.0

type DdrInstanceParameterArgs struct {
	// The parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The parameter value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (DdrInstanceParameterArgs) ElementType added in v3.31.0

func (DdrInstanceParameterArgs) ElementType() reflect.Type

func (DdrInstanceParameterArgs) ToDdrInstanceParameterOutput added in v3.31.0

func (i DdrInstanceParameterArgs) ToDdrInstanceParameterOutput() DdrInstanceParameterOutput

func (DdrInstanceParameterArgs) ToDdrInstanceParameterOutputWithContext added in v3.31.0

func (i DdrInstanceParameterArgs) ToDdrInstanceParameterOutputWithContext(ctx context.Context) DdrInstanceParameterOutput

type DdrInstanceParameterArray added in v3.31.0

type DdrInstanceParameterArray []DdrInstanceParameterInput

func (DdrInstanceParameterArray) ElementType added in v3.31.0

func (DdrInstanceParameterArray) ElementType() reflect.Type

func (DdrInstanceParameterArray) ToDdrInstanceParameterArrayOutput added in v3.31.0

func (i DdrInstanceParameterArray) ToDdrInstanceParameterArrayOutput() DdrInstanceParameterArrayOutput

func (DdrInstanceParameterArray) ToDdrInstanceParameterArrayOutputWithContext added in v3.31.0

func (i DdrInstanceParameterArray) ToDdrInstanceParameterArrayOutputWithContext(ctx context.Context) DdrInstanceParameterArrayOutput

type DdrInstanceParameterArrayInput added in v3.31.0

type DdrInstanceParameterArrayInput interface {
	pulumi.Input

	ToDdrInstanceParameterArrayOutput() DdrInstanceParameterArrayOutput
	ToDdrInstanceParameterArrayOutputWithContext(context.Context) DdrInstanceParameterArrayOutput
}

DdrInstanceParameterArrayInput is an input type that accepts DdrInstanceParameterArray and DdrInstanceParameterArrayOutput values. You can construct a concrete instance of `DdrInstanceParameterArrayInput` via:

DdrInstanceParameterArray{ DdrInstanceParameterArgs{...} }

type DdrInstanceParameterArrayOutput added in v3.31.0

type DdrInstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (DdrInstanceParameterArrayOutput) ElementType added in v3.31.0

func (DdrInstanceParameterArrayOutput) Index added in v3.31.0

func (DdrInstanceParameterArrayOutput) ToDdrInstanceParameterArrayOutput added in v3.31.0

func (o DdrInstanceParameterArrayOutput) ToDdrInstanceParameterArrayOutput() DdrInstanceParameterArrayOutput

func (DdrInstanceParameterArrayOutput) ToDdrInstanceParameterArrayOutputWithContext added in v3.31.0

func (o DdrInstanceParameterArrayOutput) ToDdrInstanceParameterArrayOutputWithContext(ctx context.Context) DdrInstanceParameterArrayOutput

type DdrInstanceParameterInput added in v3.31.0

type DdrInstanceParameterInput interface {
	pulumi.Input

	ToDdrInstanceParameterOutput() DdrInstanceParameterOutput
	ToDdrInstanceParameterOutputWithContext(context.Context) DdrInstanceParameterOutput
}

DdrInstanceParameterInput is an input type that accepts DdrInstanceParameterArgs and DdrInstanceParameterOutput values. You can construct a concrete instance of `DdrInstanceParameterInput` via:

DdrInstanceParameterArgs{...}

type DdrInstanceParameterOutput added in v3.31.0

type DdrInstanceParameterOutput struct{ *pulumi.OutputState }

func (DdrInstanceParameterOutput) ElementType added in v3.31.0

func (DdrInstanceParameterOutput) ElementType() reflect.Type

func (DdrInstanceParameterOutput) Name added in v3.31.0

The parameter name.

func (DdrInstanceParameterOutput) ToDdrInstanceParameterOutput added in v3.31.0

func (o DdrInstanceParameterOutput) ToDdrInstanceParameterOutput() DdrInstanceParameterOutput

func (DdrInstanceParameterOutput) ToDdrInstanceParameterOutputWithContext added in v3.31.0

func (o DdrInstanceParameterOutput) ToDdrInstanceParameterOutputWithContext(ctx context.Context) DdrInstanceParameterOutput

func (DdrInstanceParameterOutput) Value added in v3.31.0

The parameter value.

type DdrInstancePgHbaConf added in v3.31.0

type DdrInstancePgHbaConf struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address string `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database string `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask *string `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method string `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option *string `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId int `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type string `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User string `pulumi:"user"`
}

type DdrInstancePgHbaConfArgs added in v3.31.0

type DdrInstancePgHbaConfArgs struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address pulumi.StringInput `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database pulumi.StringInput `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask pulumi.StringPtrInput `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method pulumi.StringInput `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option pulumi.StringPtrInput `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId pulumi.IntInput `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type pulumi.StringInput `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User pulumi.StringInput `pulumi:"user"`
}

func (DdrInstancePgHbaConfArgs) ElementType added in v3.31.0

func (DdrInstancePgHbaConfArgs) ElementType() reflect.Type

func (DdrInstancePgHbaConfArgs) ToDdrInstancePgHbaConfOutput added in v3.31.0

func (i DdrInstancePgHbaConfArgs) ToDdrInstancePgHbaConfOutput() DdrInstancePgHbaConfOutput

func (DdrInstancePgHbaConfArgs) ToDdrInstancePgHbaConfOutputWithContext added in v3.31.0

func (i DdrInstancePgHbaConfArgs) ToDdrInstancePgHbaConfOutputWithContext(ctx context.Context) DdrInstancePgHbaConfOutput

type DdrInstancePgHbaConfArray added in v3.31.0

type DdrInstancePgHbaConfArray []DdrInstancePgHbaConfInput

func (DdrInstancePgHbaConfArray) ElementType added in v3.31.0

func (DdrInstancePgHbaConfArray) ElementType() reflect.Type

func (DdrInstancePgHbaConfArray) ToDdrInstancePgHbaConfArrayOutput added in v3.31.0

func (i DdrInstancePgHbaConfArray) ToDdrInstancePgHbaConfArrayOutput() DdrInstancePgHbaConfArrayOutput

func (DdrInstancePgHbaConfArray) ToDdrInstancePgHbaConfArrayOutputWithContext added in v3.31.0

func (i DdrInstancePgHbaConfArray) ToDdrInstancePgHbaConfArrayOutputWithContext(ctx context.Context) DdrInstancePgHbaConfArrayOutput

type DdrInstancePgHbaConfArrayInput added in v3.31.0

type DdrInstancePgHbaConfArrayInput interface {
	pulumi.Input

	ToDdrInstancePgHbaConfArrayOutput() DdrInstancePgHbaConfArrayOutput
	ToDdrInstancePgHbaConfArrayOutputWithContext(context.Context) DdrInstancePgHbaConfArrayOutput
}

DdrInstancePgHbaConfArrayInput is an input type that accepts DdrInstancePgHbaConfArray and DdrInstancePgHbaConfArrayOutput values. You can construct a concrete instance of `DdrInstancePgHbaConfArrayInput` via:

DdrInstancePgHbaConfArray{ DdrInstancePgHbaConfArgs{...} }

type DdrInstancePgHbaConfArrayOutput added in v3.31.0

type DdrInstancePgHbaConfArrayOutput struct{ *pulumi.OutputState }

func (DdrInstancePgHbaConfArrayOutput) ElementType added in v3.31.0

func (DdrInstancePgHbaConfArrayOutput) Index added in v3.31.0

func (DdrInstancePgHbaConfArrayOutput) ToDdrInstancePgHbaConfArrayOutput added in v3.31.0

func (o DdrInstancePgHbaConfArrayOutput) ToDdrInstancePgHbaConfArrayOutput() DdrInstancePgHbaConfArrayOutput

func (DdrInstancePgHbaConfArrayOutput) ToDdrInstancePgHbaConfArrayOutputWithContext added in v3.31.0

func (o DdrInstancePgHbaConfArrayOutput) ToDdrInstancePgHbaConfArrayOutputWithContext(ctx context.Context) DdrInstancePgHbaConfArrayOutput

type DdrInstancePgHbaConfInput added in v3.31.0

type DdrInstancePgHbaConfInput interface {
	pulumi.Input

	ToDdrInstancePgHbaConfOutput() DdrInstancePgHbaConfOutput
	ToDdrInstancePgHbaConfOutputWithContext(context.Context) DdrInstancePgHbaConfOutput
}

DdrInstancePgHbaConfInput is an input type that accepts DdrInstancePgHbaConfArgs and DdrInstancePgHbaConfOutput values. You can construct a concrete instance of `DdrInstancePgHbaConfInput` via:

DdrInstancePgHbaConfArgs{...}

type DdrInstancePgHbaConfOutput added in v3.31.0

type DdrInstancePgHbaConfOutput struct{ *pulumi.OutputState }

func (DdrInstancePgHbaConfOutput) Address added in v3.31.0

The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.

func (DdrInstancePgHbaConfOutput) Database added in v3.31.0

The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).

func (DdrInstancePgHbaConfOutput) ElementType added in v3.31.0

func (DdrInstancePgHbaConfOutput) ElementType() reflect.Type

func (DdrInstancePgHbaConfOutput) Mask added in v3.31.0

The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.

func (DdrInstancePgHbaConfOutput) Method added in v3.31.0

The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.

func (DdrInstancePgHbaConfOutput) Option added in v3.31.0

Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).

func (DdrInstancePgHbaConfOutput) PriorityId added in v3.31.0

The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.

func (DdrInstancePgHbaConfOutput) ToDdrInstancePgHbaConfOutput added in v3.31.0

func (o DdrInstancePgHbaConfOutput) ToDdrInstancePgHbaConfOutput() DdrInstancePgHbaConfOutput

func (DdrInstancePgHbaConfOutput) ToDdrInstancePgHbaConfOutputWithContext added in v3.31.0

func (o DdrInstancePgHbaConfOutput) ToDdrInstancePgHbaConfOutputWithContext(ctx context.Context) DdrInstancePgHbaConfOutput

func (DdrInstancePgHbaConfOutput) Type added in v3.31.0

The type of connection to the instance. Valid values: * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections. * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections. * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.

> **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).

func (DdrInstancePgHbaConfOutput) User added in v3.31.0

The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).

type DdrInstanceState added in v3.31.0

type DdrInstanceState 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 paymentType is `Subscription`. Default to `false`.
	AutoRenew pulumi.BoolPtrInput
	// Auto-renewal period of an instance, in the unit of the month. It is valid when paymentType is `Subscription`. 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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The ID of the backup set that is used for the restoration. You can call the DescribeCrossRegionBackups operation to query the ID of the backup set.
	BackupSetId 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 RDS edition of the instance.
	Category 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
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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).
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbInstanceStorageType pulumi.StringPtrInput
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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.
	//
	// > **NOTE:** When the 'EngineVersion' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDdrInstance](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/restore-data-to-a-new-instance-across-regions) `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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	InstanceName pulumi.StringPtrInput
	// The storage capacity of the destination instance. Valid values: 5 to 2000. Unit: GB.
	//
	// This value must be a multiple of 5 GB. For more information, see Primary ApsaraDB RDS instance types.
	InstanceStorage pulumi.IntPtrInput
	// DB Instance type.
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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) . See `parameters` below.
	Parameters DdrInstanceParameterArrayInput
	// Valid values are `Subscription`, `PayAsYouGo`, Default to `PayAsYouGo`.
	PaymentType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when paymentType is `Subscription`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs DdrInstancePgHbaConfArrayInput
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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
	// The point in time to which you want to restore data. The point in time that you specify must be earlier than the current time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	RestoreTime pulumi.StringPtrInput
	// The method that is used to restore data. Valid values:
	// - BackupSet: Data is restored from a backup set. If you use this value, you must also specify the BackupSetID parameter.
	// - BackupTime: restores data to a point in time. You must also specify the RestoreTime, SourceRegion, and SourceDBInstanceName parameters.
	RestoreType pulumi.StringPtrInput
	// ) 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 ID of the source instance if you want to restore data to a point in time.
	SourceDbInstanceName pulumi.StringPtrInput
	// The region ID of the source instance if you want to restore data to a point in time.
	SourceRegion 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
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrInput
	// The trigger threshold (percentage) for automatic storage space expansion. Valid values:
	// - 10
	// - 20
	// - 30
	// - 40
	// - 50
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringPtrInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType pulumi.StringPtrInput
	// The Zone to launch the DB instance. 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.
	ZoneIdSlaveA pulumi.StringPtrInput
	// The region ID of the log instance if you create a log instance.
	ZoneIdSlaveB pulumi.StringPtrInput
}

func (DdrInstanceState) ElementType added in v3.31.0

func (DdrInstanceState) 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"`
	// File name where to save data source results (after running `pulumi preview`).
	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"`
	// File name where to save data source results (after running `pulumi preview`).
	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 {
		example, err := rds.GetAccounts(ctx, &rds.GetAccountsArgs{
			DbInstanceId: "example_value",
			NameRegex:    pulumi.StringRef("the_resource_name"),
		}, 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 GetCharacterSetNamesArgs added in v3.31.0

type GetCharacterSetNamesArgs struct {
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL`, `MariaDB`.
	Engine     string  `pulumi:"engine"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getCharacterSetNames.

type GetCharacterSetNamesOutputArgs added in v3.31.0

type GetCharacterSetNamesOutputArgs struct {
	// Database type. Options are `MySQL`, `SQLServer`, `PostgreSQL`, `MariaDB`.
	Engine     pulumi.StringInput    `pulumi:"engine"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getCharacterSetNames.

func (GetCharacterSetNamesOutputArgs) ElementType added in v3.31.0

type GetCharacterSetNamesResult added in v3.31.0

type GetCharacterSetNamesResult struct {
	Engine string `pulumi:"engine"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getCharacterSetNames.

func GetCharacterSetNames added in v3.31.0

func GetCharacterSetNames(ctx *pulumi.Context, args *GetCharacterSetNamesArgs, opts ...pulumi.InvokeOption) (*GetCharacterSetNamesResult, error)

This data source is the character set supported by querying RDS instances.

> **NOTE:** Available in v1.198.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 {
		// Declare the data source
		names, err := rds.GetCharacterSetNames(ctx, &rds.GetCharacterSetNamesArgs{
			Engine: "MySQL",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsCharacterSetNames", names.Names[0])
		return nil
	})
}

```

type GetCharacterSetNamesResultOutput added in v3.31.0

type GetCharacterSetNamesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCharacterSetNames.

func GetCharacterSetNamesOutput added in v3.31.0

func (GetCharacterSetNamesResultOutput) ElementType added in v3.31.0

func (GetCharacterSetNamesResultOutput) Engine added in v3.31.0

func (GetCharacterSetNamesResultOutput) Id added in v3.31.0

The provider-assigned unique ID for this managed resource.

func (GetCharacterSetNamesResultOutput) Names added in v3.31.0

func (GetCharacterSetNamesResultOutput) OutputFile added in v3.31.0

func (GetCharacterSetNamesResultOutput) ToGetCharacterSetNamesResultOutput added in v3.31.0

func (o GetCharacterSetNamesResultOutput) ToGetCharacterSetNamesResultOutput() GetCharacterSetNamesResultOutput

func (GetCharacterSetNamesResultOutput) ToGetCharacterSetNamesResultOutputWithContext added in v3.31.0

func (o GetCharacterSetNamesResultOutput) ToGetCharacterSetNamesResultOutputWithContext(ctx context.Context) GetCharacterSetNamesResultOutput

type GetClassDetailsArgs added in v3.43.0

type GetClassDetailsArgs struct {
	// The code of the instance type.
	ClassCode string `pulumi:"classCode"`
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	CommodityCode string `pulumi:"commodityCode"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.
	Engine string `pulumi:"engine"`
	// Database version. Value options:
	// - MySQL: [ 5.5、5.6、5.7、8.0 ]
	// - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ]
	// - MariaDB: [ 10.3 ]
	EngineVersion string `pulumi:"engineVersion"`
}

A collection of arguments for invoking getClassDetails.

type GetClassDetailsOutputArgs added in v3.43.0

type GetClassDetailsOutputArgs struct {
	// The code of the instance type.
	ClassCode pulumi.StringInput `pulumi:"classCode"`
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	CommodityCode pulumi.StringInput `pulumi:"commodityCode"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Database version. Value options:
	// - MySQL: [ 5.5、5.6、5.7、8.0 ]
	// - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ]
	// - MariaDB: [ 10.3 ]
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
}

A collection of arguments for invoking getClassDetails.

func (GetClassDetailsOutputArgs) ElementType added in v3.43.0

func (GetClassDetailsOutputArgs) ElementType() reflect.Type

type GetClassDetailsResult added in v3.43.0

type GetClassDetailsResult struct {
	// The RDS edition of the instance. Valid values:
	// * **Basic**: Basic Edition.
	// * **HighAvailability**: High-availability Edition.
	// * **AlwaysOn**: Cluster Edition.
	// * **Finance**: Enterprise Edition.
	Category  string `pulumi:"category"`
	ClassCode string `pulumi:"classCode"`
	// The specification family.
	ClassGroup    string `pulumi:"classGroup"`
	CommodityCode string `pulumi:"commodityCode"`
	// The number of CPU cores corresponding to the instance specification. Unit: pieces.
	Cpu string `pulumi:"cpu"`
	// The storage type of the instance. Valid values:
	// * **local_ssd**: specifies to use local SSDs.
	// * **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 string `pulumi:"dbInstanceStorageType"`
	Engine                string `pulumi:"engine"`
	EngineVersion         string `pulumi:"engineVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The architecture of the instance type.
	InstructionSetArch string `pulumi:"instructionSetArch"`
	// The maximum number of connections.
	MaxConnections string `pulumi:"maxConnections"`
	// The maximum IO bandwidth corresponding to the instance specification. Unit: Mbps.
	MaxIombps string `pulumi:"maxIombps"`
	// The maximum IOPS of the instance.
	MaxIops string `pulumi:"maxIops"`
	// The memory capacity that is supported by the instance type. Unit: GB.
	MemoryClass string `pulumi:"memoryClass"`
	// The fee that you must pay for the instance type. Unit: cent (RMB).
	ReferencePrice string `pulumi:"referencePrice"`
}

A collection of values returned by getClassDetails.

func GetClassDetails added in v3.43.0

func GetClassDetails(ctx *pulumi.Context, args *GetClassDetailsArgs, opts ...pulumi.InvokeOption) (*GetClassDetailsResult, error)

This data source provides details of the Rds specifications of current Alibaba Cloud users.

For information on RDS class details and how to use it, please refer to [What is RDS class details](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeclassdetails).

> **NOTE:** Available since v1.209.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 {
		_, err := rds.GetClassDetails(ctx, &rds.GetClassDetailsArgs{
			CommodityCode: "bards",
			ClassCode:     "mysql.n4.medium.2c",
			EngineVersion: "8.0",
			Engine:        "MySQL",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetClassDetailsResultOutput added in v3.43.0

type GetClassDetailsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getClassDetails.

func GetClassDetailsOutput added in v3.43.0

func (GetClassDetailsResultOutput) Category added in v3.43.0

The RDS edition of the instance. Valid values: * **Basic**: Basic Edition. * **HighAvailability**: High-availability Edition. * **AlwaysOn**: Cluster Edition. * **Finance**: Enterprise Edition.

func (GetClassDetailsResultOutput) ClassCode added in v3.43.0

func (GetClassDetailsResultOutput) ClassGroup added in v3.43.0

The specification family.

func (GetClassDetailsResultOutput) CommodityCode added in v3.43.0

func (GetClassDetailsResultOutput) Cpu added in v3.43.0

The number of CPU cores corresponding to the instance specification. Unit: pieces.

func (GetClassDetailsResultOutput) DbInstanceStorageType added in v3.43.0

func (o GetClassDetailsResultOutput) DbInstanceStorageType() pulumi.StringOutput

The storage type of the instance. Valid values: * **local_ssd**: specifies to use local SSDs. * **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).

func (GetClassDetailsResultOutput) ElementType added in v3.43.0

func (GetClassDetailsResultOutput) Engine added in v3.43.0

func (GetClassDetailsResultOutput) EngineVersion added in v3.43.0

func (GetClassDetailsResultOutput) Id added in v3.43.0

The provider-assigned unique ID for this managed resource.

func (GetClassDetailsResultOutput) InstructionSetArch added in v3.43.0

func (o GetClassDetailsResultOutput) InstructionSetArch() pulumi.StringOutput

The architecture of the instance type.

func (GetClassDetailsResultOutput) MaxConnections added in v3.43.0

func (o GetClassDetailsResultOutput) MaxConnections() pulumi.StringOutput

The maximum number of connections.

func (GetClassDetailsResultOutput) MaxIombps added in v3.43.0

The maximum IO bandwidth corresponding to the instance specification. Unit: Mbps.

func (GetClassDetailsResultOutput) MaxIops added in v3.43.0

The maximum IOPS of the instance.

func (GetClassDetailsResultOutput) MemoryClass added in v3.43.0

The memory capacity that is supported by the instance type. Unit: GB.

func (GetClassDetailsResultOutput) ReferencePrice added in v3.43.0

func (o GetClassDetailsResultOutput) ReferencePrice() pulumi.StringOutput

The fee that you must pay for the instance type. Unit: cent (RMB).

func (GetClassDetailsResultOutput) ToGetClassDetailsResultOutput added in v3.43.0

func (o GetClassDetailsResultOutput) ToGetClassDetailsResultOutput() GetClassDetailsResultOutput

func (GetClassDetailsResultOutput) ToGetClassDetailsResultOutputWithContext added in v3.43.0

func (o GetClassDetailsResultOutput) ToGetClassDetailsResultOutputWithContext(ctx context.Context) GetClassDetailsResultOutput

type GetCollationTimeZonesArgs added in v3.31.0

type GetCollationTimeZonesArgs struct {
	// An array that consists of the character set collations and time zones that are available for
	// use in ApsaraDB RDS.
	CollationTimeZones []GetCollationTimeZonesCollationTimeZone `pulumi:"collationTimeZones"`
	// File name where to save data source results (after running `pulumi up`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getCollationTimeZones.

type GetCollationTimeZonesCollationTimeZone added in v3.31.0

type GetCollationTimeZonesCollationTimeZone struct {
	// The code of the instance type.
	Description *string `pulumi:"description"`
	// The offset of the UTC time. The offset is in the following format: (UTC+<i>HH:mm</i>).
	StandardTimeOffset *string `pulumi:"standardTimeOffset"`
	// The time zone that is available for use in ApsaraDB RDS.
	TimeZone *string `pulumi:"timeZone"`
}

type GetCollationTimeZonesCollationTimeZoneArgs added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneArgs struct {
	// The code of the instance type.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The offset of the UTC time. The offset is in the following format: (UTC+<i>HH:mm</i>).
	StandardTimeOffset pulumi.StringPtrInput `pulumi:"standardTimeOffset"`
	// The time zone that is available for use in ApsaraDB RDS.
	TimeZone pulumi.StringPtrInput `pulumi:"timeZone"`
}

func (GetCollationTimeZonesCollationTimeZoneArgs) ElementType added in v3.31.0

func (GetCollationTimeZonesCollationTimeZoneArgs) ToGetCollationTimeZonesCollationTimeZoneOutput added in v3.31.0

func (i GetCollationTimeZonesCollationTimeZoneArgs) ToGetCollationTimeZonesCollationTimeZoneOutput() GetCollationTimeZonesCollationTimeZoneOutput

func (GetCollationTimeZonesCollationTimeZoneArgs) ToGetCollationTimeZonesCollationTimeZoneOutputWithContext added in v3.31.0

func (i GetCollationTimeZonesCollationTimeZoneArgs) ToGetCollationTimeZonesCollationTimeZoneOutputWithContext(ctx context.Context) GetCollationTimeZonesCollationTimeZoneOutput

type GetCollationTimeZonesCollationTimeZoneArray added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneArray []GetCollationTimeZonesCollationTimeZoneInput

func (GetCollationTimeZonesCollationTimeZoneArray) ElementType added in v3.31.0

func (GetCollationTimeZonesCollationTimeZoneArray) ToGetCollationTimeZonesCollationTimeZoneArrayOutput added in v3.31.0

func (i GetCollationTimeZonesCollationTimeZoneArray) ToGetCollationTimeZonesCollationTimeZoneArrayOutput() GetCollationTimeZonesCollationTimeZoneArrayOutput

func (GetCollationTimeZonesCollationTimeZoneArray) ToGetCollationTimeZonesCollationTimeZoneArrayOutputWithContext added in v3.31.0

func (i GetCollationTimeZonesCollationTimeZoneArray) ToGetCollationTimeZonesCollationTimeZoneArrayOutputWithContext(ctx context.Context) GetCollationTimeZonesCollationTimeZoneArrayOutput

type GetCollationTimeZonesCollationTimeZoneArrayInput added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneArrayInput interface {
	pulumi.Input

	ToGetCollationTimeZonesCollationTimeZoneArrayOutput() GetCollationTimeZonesCollationTimeZoneArrayOutput
	ToGetCollationTimeZonesCollationTimeZoneArrayOutputWithContext(context.Context) GetCollationTimeZonesCollationTimeZoneArrayOutput
}

GetCollationTimeZonesCollationTimeZoneArrayInput is an input type that accepts GetCollationTimeZonesCollationTimeZoneArray and GetCollationTimeZonesCollationTimeZoneArrayOutput values. You can construct a concrete instance of `GetCollationTimeZonesCollationTimeZoneArrayInput` via:

GetCollationTimeZonesCollationTimeZoneArray{ GetCollationTimeZonesCollationTimeZoneArgs{...} }

type GetCollationTimeZonesCollationTimeZoneArrayOutput added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneArrayOutput struct{ *pulumi.OutputState }

func (GetCollationTimeZonesCollationTimeZoneArrayOutput) ElementType added in v3.31.0

func (GetCollationTimeZonesCollationTimeZoneArrayOutput) Index added in v3.31.0

func (GetCollationTimeZonesCollationTimeZoneArrayOutput) ToGetCollationTimeZonesCollationTimeZoneArrayOutput added in v3.31.0

func (o GetCollationTimeZonesCollationTimeZoneArrayOutput) ToGetCollationTimeZonesCollationTimeZoneArrayOutput() GetCollationTimeZonesCollationTimeZoneArrayOutput

func (GetCollationTimeZonesCollationTimeZoneArrayOutput) ToGetCollationTimeZonesCollationTimeZoneArrayOutputWithContext added in v3.31.0

func (o GetCollationTimeZonesCollationTimeZoneArrayOutput) ToGetCollationTimeZonesCollationTimeZoneArrayOutputWithContext(ctx context.Context) GetCollationTimeZonesCollationTimeZoneArrayOutput

type GetCollationTimeZonesCollationTimeZoneInput added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneInput interface {
	pulumi.Input

	ToGetCollationTimeZonesCollationTimeZoneOutput() GetCollationTimeZonesCollationTimeZoneOutput
	ToGetCollationTimeZonesCollationTimeZoneOutputWithContext(context.Context) GetCollationTimeZonesCollationTimeZoneOutput
}

GetCollationTimeZonesCollationTimeZoneInput is an input type that accepts GetCollationTimeZonesCollationTimeZoneArgs and GetCollationTimeZonesCollationTimeZoneOutput values. You can construct a concrete instance of `GetCollationTimeZonesCollationTimeZoneInput` via:

GetCollationTimeZonesCollationTimeZoneArgs{...}

type GetCollationTimeZonesCollationTimeZoneOutput added in v3.31.0

type GetCollationTimeZonesCollationTimeZoneOutput struct{ *pulumi.OutputState }

func (GetCollationTimeZonesCollationTimeZoneOutput) Description added in v3.31.0

The code of the instance type.

func (GetCollationTimeZonesCollationTimeZoneOutput) ElementType added in v3.31.0

func (GetCollationTimeZonesCollationTimeZoneOutput) StandardTimeOffset added in v3.31.0

The offset of the UTC time. The offset is in the following format: (UTC+<i>HH:mm</i>).

func (GetCollationTimeZonesCollationTimeZoneOutput) TimeZone added in v3.31.0

The time zone that is available for use in ApsaraDB RDS.

func (GetCollationTimeZonesCollationTimeZoneOutput) ToGetCollationTimeZonesCollationTimeZoneOutput added in v3.31.0

func (o GetCollationTimeZonesCollationTimeZoneOutput) ToGetCollationTimeZonesCollationTimeZoneOutput() GetCollationTimeZonesCollationTimeZoneOutput

func (GetCollationTimeZonesCollationTimeZoneOutput) ToGetCollationTimeZonesCollationTimeZoneOutputWithContext added in v3.31.0

func (o GetCollationTimeZonesCollationTimeZoneOutput) ToGetCollationTimeZonesCollationTimeZoneOutputWithContext(ctx context.Context) GetCollationTimeZonesCollationTimeZoneOutput

type GetCollationTimeZonesOutputArgs added in v3.31.0

type GetCollationTimeZonesOutputArgs struct {
	// An array that consists of the character set collations and time zones that are available for
	// use in ApsaraDB RDS.
	CollationTimeZones GetCollationTimeZonesCollationTimeZoneArrayInput `pulumi:"collationTimeZones"`
	// File name where to save data source results (after running `pulumi up`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getCollationTimeZones.

func (GetCollationTimeZonesOutputArgs) ElementType added in v3.31.0

type GetCollationTimeZonesResult added in v3.31.0

type GetCollationTimeZonesResult struct {
	CollationTimeZones []GetCollationTimeZonesCollationTimeZone `pulumi:"collationTimeZones"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getCollationTimeZones.

func GetCollationTimeZones added in v3.31.0

func GetCollationTimeZones(ctx *pulumi.Context, args *GetCollationTimeZonesArgs, opts ...pulumi.InvokeOption) (*GetCollationTimeZonesResult, error)

Operation to query the character set collations and time zones available for use in ApsaraDB RDS.

> **NOTE:** Available in v1.198.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 {
		zones, err := rds.GetCollationTimeZones(ctx, &rds.GetCollationTimeZonesArgs{
			OutputFile: pulumi.StringRef("./classes.txt"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsCollationTimeZones", zones.CollationTimeZones[0])
		return nil
	})
}

```

type GetCollationTimeZonesResultOutput added in v3.31.0

type GetCollationTimeZonesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCollationTimeZones.

func GetCollationTimeZonesOutput added in v3.31.0

func (GetCollationTimeZonesResultOutput) CollationTimeZones added in v3.31.0

func (GetCollationTimeZonesResultOutput) ElementType added in v3.31.0

func (GetCollationTimeZonesResultOutput) Id added in v3.31.0

The provider-assigned unique ID for this managed resource.

func (GetCollationTimeZonesResultOutput) Ids added in v3.31.0

func (GetCollationTimeZonesResultOutput) OutputFile added in v3.31.0

func (GetCollationTimeZonesResultOutput) ToGetCollationTimeZonesResultOutput added in v3.31.0

func (o GetCollationTimeZonesResultOutput) ToGetCollationTimeZonesResultOutput() GetCollationTimeZonesResultOutput

func (GetCollationTimeZonesResultOutput) ToGetCollationTimeZonesResultOutputWithContext added in v3.31.0

func (o GetCollationTimeZonesResultOutput) ToGetCollationTimeZonesResultOutputWithContext(ctx context.Context) GetCollationTimeZonesResultOutput

type GetCrossRegionBackupsArgs added in v3.29.0

type GetCrossRegionBackupsArgs struct {
	// The ID of the cross-region data backup file.
	BackupId *string `pulumi:"backupId"`
	// The ID of the cross-region data backup file.
	CrossBackupId *string `pulumi:"crossBackupId"`
	// The ID of the destination region where the cross-region data backup file of the instance is stored.
	CrossBackupRegion *string `pulumi:"crossBackupRegion"`
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	EndTime *string `pulumi:"endTime"`
	// A list of Cross Region Backup IDs.
	Ids []string `pulumi:"ids"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	StartTime *string `pulumi:"startTime"`
}

A collection of arguments for invoking getCrossRegionBackups.

type GetCrossRegionBackupsBackup added in v3.29.0

type GetCrossRegionBackupsBackup struct {
	// The time when the cross-region data backup file was generated.
	BackupEndTime string `pulumi:"backupEndTime"`
	// The method that is used to generate the cross-region data backup file. Valid values:
	// `L` - logical backup.
	// `P` - physical backup.
	BackupMethod string `pulumi:"backupMethod"`
	// The level at which the cross-region data backup file is generated.
	// `0` - instance-level backup.
	// `1` - database-level backup.
	BackupSetScale string `pulumi:"backupSetScale"`
	// TThe status of the cross-region data backup. Valid values:
	// `0` - The cross-region data backup is successful.
	// `1` - The cross-region data backup failed.
	BackupSetStatus int `pulumi:"backupSetStatus"`
	// The time when the cross-region data backup started.
	BackupStartTime string `pulumi:"backupStartTime"`
	// The type of the cross-region data backup. Valid values:F: full data backup
	// `F` - full data backup.
	// `I` - incremental data backup.
	BackupType string `pulumi:"backupType"`
	// The RDS edition of the instance. Valid values:
	// `Basic` - Basic Edition.
	// `HighAvailability` - High-availability Edition.
	// `Finance` - Enterprise Edition. This edition is supported only by the China site (aliyun.com).
	Category string `pulumi:"category"`
	// The point in time that is indicated by the data in the cross-region data backup file.
	ConsistentTime string `pulumi:"consistentTime"`
	// The external URL from which you can download the cross-region data backup file.
	CrossBackupDownloadLink string `pulumi:"crossBackupDownloadLink"`
	// The ID of the cross-region data backup file.
	CrossBackupId string `pulumi:"crossBackupId"`
	// The ID of the destination region where the cross-region data backup file of the instance is stored.
	CrossBackupRegion string `pulumi:"crossBackupRegion"`
	// The name of the compressed package that contains the cross-region data backup file.
	CrossBackupSetFile string `pulumi:"crossBackupSetFile"`
	// The location where the cross-region data backup file is stored.
	CrossBackupSetLocation string `pulumi:"crossBackupSetLocation"`
	// The size of the cross-region data backup file. Unit: bytes.
	CrossBackupSetSize int `pulumi:"crossBackupSetSize"`
	// The storage type.
	DbInstanceStorageType string `pulumi:"dbInstanceStorageType"`
	// The engine of the database.
	Engine string `pulumi:"engine"`
	// The version of the database engine.
	EngineVersion string `pulumi:"engineVersion"`
	// The ID of the cross-region data backup file.
	Id string `pulumi:"id"`
	// The ID of the instance. This parameter is used to determine whether the instance that generates the cross-region data backup file is a primary or secondary instance.
	InstanceId int `pulumi:"instanceId"`
	// The start time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	RecoveryBeginTime string `pulumi:"recoveryBeginTime"`
	// The end time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	RecoveryEndTime string `pulumi:"recoveryEndTime"`
	// An array that consists of the regions to which the cross-region data backup file can be restored.
	RestoreRegions []string `pulumi:"restoreRegions"`
}

type GetCrossRegionBackupsBackupArgs added in v3.29.0

type GetCrossRegionBackupsBackupArgs struct {
	// The time when the cross-region data backup file was generated.
	BackupEndTime pulumi.StringInput `pulumi:"backupEndTime"`
	// The method that is used to generate the cross-region data backup file. Valid values:
	// `L` - logical backup.
	// `P` - physical backup.
	BackupMethod pulumi.StringInput `pulumi:"backupMethod"`
	// The level at which the cross-region data backup file is generated.
	// `0` - instance-level backup.
	// `1` - database-level backup.
	BackupSetScale pulumi.StringInput `pulumi:"backupSetScale"`
	// TThe status of the cross-region data backup. Valid values:
	// `0` - The cross-region data backup is successful.
	// `1` - The cross-region data backup failed.
	BackupSetStatus pulumi.IntInput `pulumi:"backupSetStatus"`
	// The time when the cross-region data backup started.
	BackupStartTime pulumi.StringInput `pulumi:"backupStartTime"`
	// The type of the cross-region data backup. Valid values:F: full data backup
	// `F` - full data backup.
	// `I` - incremental data backup.
	BackupType pulumi.StringInput `pulumi:"backupType"`
	// The RDS edition of the instance. Valid values:
	// `Basic` - Basic Edition.
	// `HighAvailability` - High-availability Edition.
	// `Finance` - Enterprise Edition. This edition is supported only by the China site (aliyun.com).
	Category pulumi.StringInput `pulumi:"category"`
	// The point in time that is indicated by the data in the cross-region data backup file.
	ConsistentTime pulumi.StringInput `pulumi:"consistentTime"`
	// The external URL from which you can download the cross-region data backup file.
	CrossBackupDownloadLink pulumi.StringInput `pulumi:"crossBackupDownloadLink"`
	// The ID of the cross-region data backup file.
	CrossBackupId pulumi.StringInput `pulumi:"crossBackupId"`
	// The ID of the destination region where the cross-region data backup file of the instance is stored.
	CrossBackupRegion pulumi.StringInput `pulumi:"crossBackupRegion"`
	// The name of the compressed package that contains the cross-region data backup file.
	CrossBackupSetFile pulumi.StringInput `pulumi:"crossBackupSetFile"`
	// The location where the cross-region data backup file is stored.
	CrossBackupSetLocation pulumi.StringInput `pulumi:"crossBackupSetLocation"`
	// The size of the cross-region data backup file. Unit: bytes.
	CrossBackupSetSize pulumi.IntInput `pulumi:"crossBackupSetSize"`
	// The storage type.
	DbInstanceStorageType pulumi.StringInput `pulumi:"dbInstanceStorageType"`
	// The engine of the database.
	Engine pulumi.StringInput `pulumi:"engine"`
	// The version of the database engine.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// The ID of the cross-region data backup file.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the instance. This parameter is used to determine whether the instance that generates the cross-region data backup file is a primary or secondary instance.
	InstanceId pulumi.IntInput `pulumi:"instanceId"`
	// The start time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	RecoveryBeginTime pulumi.StringInput `pulumi:"recoveryBeginTime"`
	// The end time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	RecoveryEndTime pulumi.StringInput `pulumi:"recoveryEndTime"`
	// An array that consists of the regions to which the cross-region data backup file can be restored.
	RestoreRegions pulumi.StringArrayInput `pulumi:"restoreRegions"`
}

func (GetCrossRegionBackupsBackupArgs) ElementType added in v3.29.0

func (GetCrossRegionBackupsBackupArgs) ToGetCrossRegionBackupsBackupOutput added in v3.29.0

func (i GetCrossRegionBackupsBackupArgs) ToGetCrossRegionBackupsBackupOutput() GetCrossRegionBackupsBackupOutput

func (GetCrossRegionBackupsBackupArgs) ToGetCrossRegionBackupsBackupOutputWithContext added in v3.29.0

func (i GetCrossRegionBackupsBackupArgs) ToGetCrossRegionBackupsBackupOutputWithContext(ctx context.Context) GetCrossRegionBackupsBackupOutput

type GetCrossRegionBackupsBackupArray added in v3.29.0

type GetCrossRegionBackupsBackupArray []GetCrossRegionBackupsBackupInput

func (GetCrossRegionBackupsBackupArray) ElementType added in v3.29.0

func (GetCrossRegionBackupsBackupArray) ToGetCrossRegionBackupsBackupArrayOutput added in v3.29.0

func (i GetCrossRegionBackupsBackupArray) ToGetCrossRegionBackupsBackupArrayOutput() GetCrossRegionBackupsBackupArrayOutput

func (GetCrossRegionBackupsBackupArray) ToGetCrossRegionBackupsBackupArrayOutputWithContext added in v3.29.0

func (i GetCrossRegionBackupsBackupArray) ToGetCrossRegionBackupsBackupArrayOutputWithContext(ctx context.Context) GetCrossRegionBackupsBackupArrayOutput

type GetCrossRegionBackupsBackupArrayInput added in v3.29.0

type GetCrossRegionBackupsBackupArrayInput interface {
	pulumi.Input

	ToGetCrossRegionBackupsBackupArrayOutput() GetCrossRegionBackupsBackupArrayOutput
	ToGetCrossRegionBackupsBackupArrayOutputWithContext(context.Context) GetCrossRegionBackupsBackupArrayOutput
}

GetCrossRegionBackupsBackupArrayInput is an input type that accepts GetCrossRegionBackupsBackupArray and GetCrossRegionBackupsBackupArrayOutput values. You can construct a concrete instance of `GetCrossRegionBackupsBackupArrayInput` via:

GetCrossRegionBackupsBackupArray{ GetCrossRegionBackupsBackupArgs{...} }

type GetCrossRegionBackupsBackupArrayOutput added in v3.29.0

type GetCrossRegionBackupsBackupArrayOutput struct{ *pulumi.OutputState }

func (GetCrossRegionBackupsBackupArrayOutput) ElementType added in v3.29.0

func (GetCrossRegionBackupsBackupArrayOutput) Index added in v3.29.0

func (GetCrossRegionBackupsBackupArrayOutput) ToGetCrossRegionBackupsBackupArrayOutput added in v3.29.0

func (o GetCrossRegionBackupsBackupArrayOutput) ToGetCrossRegionBackupsBackupArrayOutput() GetCrossRegionBackupsBackupArrayOutput

func (GetCrossRegionBackupsBackupArrayOutput) ToGetCrossRegionBackupsBackupArrayOutputWithContext added in v3.29.0

func (o GetCrossRegionBackupsBackupArrayOutput) ToGetCrossRegionBackupsBackupArrayOutputWithContext(ctx context.Context) GetCrossRegionBackupsBackupArrayOutput

type GetCrossRegionBackupsBackupInput added in v3.29.0

type GetCrossRegionBackupsBackupInput interface {
	pulumi.Input

	ToGetCrossRegionBackupsBackupOutput() GetCrossRegionBackupsBackupOutput
	ToGetCrossRegionBackupsBackupOutputWithContext(context.Context) GetCrossRegionBackupsBackupOutput
}

GetCrossRegionBackupsBackupInput is an input type that accepts GetCrossRegionBackupsBackupArgs and GetCrossRegionBackupsBackupOutput values. You can construct a concrete instance of `GetCrossRegionBackupsBackupInput` via:

GetCrossRegionBackupsBackupArgs{...}

type GetCrossRegionBackupsBackupOutput added in v3.29.0

type GetCrossRegionBackupsBackupOutput struct{ *pulumi.OutputState }

func (GetCrossRegionBackupsBackupOutput) BackupEndTime added in v3.29.0

The time when the cross-region data backup file was generated.

func (GetCrossRegionBackupsBackupOutput) BackupMethod added in v3.29.0

The method that is used to generate the cross-region data backup file. Valid values: `L` - logical backup. `P` - physical backup.

func (GetCrossRegionBackupsBackupOutput) BackupSetScale added in v3.29.0

The level at which the cross-region data backup file is generated. `0` - instance-level backup. `1` - database-level backup.

func (GetCrossRegionBackupsBackupOutput) BackupSetStatus added in v3.29.0

TThe status of the cross-region data backup. Valid values: `0` - The cross-region data backup is successful. `1` - The cross-region data backup failed.

func (GetCrossRegionBackupsBackupOutput) BackupStartTime added in v3.29.0

The time when the cross-region data backup started.

func (GetCrossRegionBackupsBackupOutput) BackupType added in v3.29.0

The type of the cross-region data backup. Valid values:F: full data backup `F` - full data backup. `I` - incremental data backup.

func (GetCrossRegionBackupsBackupOutput) Category added in v3.29.0

The RDS edition of the instance. Valid values: `Basic` - Basic Edition. `HighAvailability` - High-availability Edition. `Finance` - Enterprise Edition. This edition is supported only by the China site (aliyun.com).

func (GetCrossRegionBackupsBackupOutput) ConsistentTime added in v3.29.0

The point in time that is indicated by the data in the cross-region data backup file.

func (o GetCrossRegionBackupsBackupOutput) CrossBackupDownloadLink() pulumi.StringOutput

The external URL from which you can download the cross-region data backup file.

func (GetCrossRegionBackupsBackupOutput) CrossBackupId added in v3.29.0

The ID of the cross-region data backup file.

func (GetCrossRegionBackupsBackupOutput) CrossBackupRegion added in v3.29.0

The ID of the destination region where the cross-region data backup file of the instance is stored.

func (GetCrossRegionBackupsBackupOutput) CrossBackupSetFile added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) CrossBackupSetFile() pulumi.StringOutput

The name of the compressed package that contains the cross-region data backup file.

func (GetCrossRegionBackupsBackupOutput) CrossBackupSetLocation added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) CrossBackupSetLocation() pulumi.StringOutput

The location where the cross-region data backup file is stored.

func (GetCrossRegionBackupsBackupOutput) CrossBackupSetSize added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) CrossBackupSetSize() pulumi.IntOutput

The size of the cross-region data backup file. Unit: bytes.

func (GetCrossRegionBackupsBackupOutput) DbInstanceStorageType added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) DbInstanceStorageType() pulumi.StringOutput

The storage type.

func (GetCrossRegionBackupsBackupOutput) ElementType added in v3.29.0

func (GetCrossRegionBackupsBackupOutput) Engine added in v3.29.0

The engine of the database.

func (GetCrossRegionBackupsBackupOutput) EngineVersion added in v3.29.0

The version of the database engine.

func (GetCrossRegionBackupsBackupOutput) Id added in v3.29.0

The ID of the cross-region data backup file.

func (GetCrossRegionBackupsBackupOutput) InstanceId added in v3.29.0

The ID of the instance. This parameter is used to determine whether the instance that generates the cross-region data backup file is a primary or secondary instance.

func (GetCrossRegionBackupsBackupOutput) RecoveryBeginTime added in v3.29.0

The start time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetCrossRegionBackupsBackupOutput) RecoveryEndTime added in v3.29.0

The end time to which data can be restored. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetCrossRegionBackupsBackupOutput) RestoreRegions added in v3.29.0

An array that consists of the regions to which the cross-region data backup file can be restored.

func (GetCrossRegionBackupsBackupOutput) ToGetCrossRegionBackupsBackupOutput added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) ToGetCrossRegionBackupsBackupOutput() GetCrossRegionBackupsBackupOutput

func (GetCrossRegionBackupsBackupOutput) ToGetCrossRegionBackupsBackupOutputWithContext added in v3.29.0

func (o GetCrossRegionBackupsBackupOutput) ToGetCrossRegionBackupsBackupOutputWithContext(ctx context.Context) GetCrossRegionBackupsBackupOutput

type GetCrossRegionBackupsOutputArgs added in v3.29.0

type GetCrossRegionBackupsOutputArgs struct {
	// The ID of the cross-region data backup file.
	BackupId pulumi.StringPtrInput `pulumi:"backupId"`
	// The ID of the cross-region data backup file.
	CrossBackupId pulumi.StringPtrInput `pulumi:"crossBackupId"`
	// The ID of the destination region where the cross-region data backup file of the instance is stored.
	CrossBackupRegion pulumi.StringPtrInput `pulumi:"crossBackupRegion"`
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	EndTime pulumi.StringPtrInput `pulumi:"endTime"`
	// A list of Cross Region Backup IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	StartTime pulumi.StringPtrInput `pulumi:"startTime"`
}

A collection of arguments for invoking getCrossRegionBackups.

func (GetCrossRegionBackupsOutputArgs) ElementType added in v3.29.0

type GetCrossRegionBackupsResult added in v3.29.0

type GetCrossRegionBackupsResult struct {
	BackupId          *string                       `pulumi:"backupId"`
	Backups           []GetCrossRegionBackupsBackup `pulumi:"backups"`
	CrossBackupId     *string                       `pulumi:"crossBackupId"`
	CrossBackupRegion *string                       `pulumi:"crossBackupRegion"`
	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"`
	ResourceGroupId *string  `pulumi:"resourceGroupId"`
	StartTime       *string  `pulumi:"startTime"`
}

A collection of values returned by getCrossRegionBackups.

func GetCrossRegionBackups added in v3.29.0

func GetCrossRegionBackups(ctx *pulumi.Context, args *GetCrossRegionBackupsArgs, opts ...pulumi.InvokeOption) (*GetCrossRegionBackupsResult, error)

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

> **NOTE:** Available in v1.196.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 {
		backups, err := rds.GetCrossRegionBackups(ctx, &rds.GetCrossRegionBackupsArgs{
			DbInstanceId: "example_value",
			StartTime:    pulumi.StringRef("2022-12-01T00:00:00Z"),
			EndTime:      pulumi.StringRef("2022-12-16T00:00:00Z"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsCrossRegionBackups", backups.Backups[0].Id)
		return nil
	})
}

```

type GetCrossRegionBackupsResultOutput added in v3.29.0

type GetCrossRegionBackupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCrossRegionBackups.

func GetCrossRegionBackupsOutput added in v3.29.0

func (GetCrossRegionBackupsResultOutput) BackupId added in v3.29.0

func (GetCrossRegionBackupsResultOutput) Backups added in v3.29.0

func (GetCrossRegionBackupsResultOutput) CrossBackupId added in v3.29.0

func (GetCrossRegionBackupsResultOutput) CrossBackupRegion added in v3.29.0

func (GetCrossRegionBackupsResultOutput) DbInstanceId added in v3.29.0

func (GetCrossRegionBackupsResultOutput) ElementType added in v3.29.0

func (GetCrossRegionBackupsResultOutput) EndTime added in v3.29.0

func (GetCrossRegionBackupsResultOutput) Id added in v3.29.0

The provider-assigned unique ID for this managed resource.

func (GetCrossRegionBackupsResultOutput) Ids added in v3.29.0

func (GetCrossRegionBackupsResultOutput) OutputFile added in v3.29.0

func (GetCrossRegionBackupsResultOutput) ResourceGroupId added in v3.29.0

func (GetCrossRegionBackupsResultOutput) StartTime added in v3.29.0

func (GetCrossRegionBackupsResultOutput) ToGetCrossRegionBackupsResultOutput added in v3.29.0

func (o GetCrossRegionBackupsResultOutput) ToGetCrossRegionBackupsResultOutput() GetCrossRegionBackupsResultOutput

func (GetCrossRegionBackupsResultOutput) ToGetCrossRegionBackupsResultOutputWithContext added in v3.29.0

func (o GetCrossRegionBackupsResultOutput) ToGetCrossRegionBackupsResultOutputWithContext(ctx context.Context) GetCrossRegionBackupsResultOutput

type GetCrossRegionsArgs added in v3.29.0

type GetCrossRegionsArgs struct {
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getCrossRegions.

type GetCrossRegionsOutputArgs added in v3.29.0

type GetCrossRegionsOutputArgs struct {
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getCrossRegions.

func (GetCrossRegionsOutputArgs) ElementType added in v3.29.0

func (GetCrossRegionsOutputArgs) ElementType() reflect.Type

type GetCrossRegionsRegion added in v3.29.0

type GetCrossRegionsRegion struct {
	// ID of the region.
	Id string `pulumi:"id"`
}

type GetCrossRegionsRegionArgs added in v3.29.0

type GetCrossRegionsRegionArgs struct {
	// ID of the region.
	Id pulumi.StringInput `pulumi:"id"`
}

func (GetCrossRegionsRegionArgs) ElementType added in v3.29.0

func (GetCrossRegionsRegionArgs) ElementType() reflect.Type

func (GetCrossRegionsRegionArgs) ToGetCrossRegionsRegionOutput added in v3.29.0

func (i GetCrossRegionsRegionArgs) ToGetCrossRegionsRegionOutput() GetCrossRegionsRegionOutput

func (GetCrossRegionsRegionArgs) ToGetCrossRegionsRegionOutputWithContext added in v3.29.0

func (i GetCrossRegionsRegionArgs) ToGetCrossRegionsRegionOutputWithContext(ctx context.Context) GetCrossRegionsRegionOutput

type GetCrossRegionsRegionArray added in v3.29.0

type GetCrossRegionsRegionArray []GetCrossRegionsRegionInput

func (GetCrossRegionsRegionArray) ElementType added in v3.29.0

func (GetCrossRegionsRegionArray) ElementType() reflect.Type

func (GetCrossRegionsRegionArray) ToGetCrossRegionsRegionArrayOutput added in v3.29.0

func (i GetCrossRegionsRegionArray) ToGetCrossRegionsRegionArrayOutput() GetCrossRegionsRegionArrayOutput

func (GetCrossRegionsRegionArray) ToGetCrossRegionsRegionArrayOutputWithContext added in v3.29.0

func (i GetCrossRegionsRegionArray) ToGetCrossRegionsRegionArrayOutputWithContext(ctx context.Context) GetCrossRegionsRegionArrayOutput

type GetCrossRegionsRegionArrayInput added in v3.29.0

type GetCrossRegionsRegionArrayInput interface {
	pulumi.Input

	ToGetCrossRegionsRegionArrayOutput() GetCrossRegionsRegionArrayOutput
	ToGetCrossRegionsRegionArrayOutputWithContext(context.Context) GetCrossRegionsRegionArrayOutput
}

GetCrossRegionsRegionArrayInput is an input type that accepts GetCrossRegionsRegionArray and GetCrossRegionsRegionArrayOutput values. You can construct a concrete instance of `GetCrossRegionsRegionArrayInput` via:

GetCrossRegionsRegionArray{ GetCrossRegionsRegionArgs{...} }

type GetCrossRegionsRegionArrayOutput added in v3.29.0

type GetCrossRegionsRegionArrayOutput struct{ *pulumi.OutputState }

func (GetCrossRegionsRegionArrayOutput) ElementType added in v3.29.0

func (GetCrossRegionsRegionArrayOutput) Index added in v3.29.0

func (GetCrossRegionsRegionArrayOutput) ToGetCrossRegionsRegionArrayOutput added in v3.29.0

func (o GetCrossRegionsRegionArrayOutput) ToGetCrossRegionsRegionArrayOutput() GetCrossRegionsRegionArrayOutput

func (GetCrossRegionsRegionArrayOutput) ToGetCrossRegionsRegionArrayOutputWithContext added in v3.29.0

func (o GetCrossRegionsRegionArrayOutput) ToGetCrossRegionsRegionArrayOutputWithContext(ctx context.Context) GetCrossRegionsRegionArrayOutput

type GetCrossRegionsRegionInput added in v3.29.0

type GetCrossRegionsRegionInput interface {
	pulumi.Input

	ToGetCrossRegionsRegionOutput() GetCrossRegionsRegionOutput
	ToGetCrossRegionsRegionOutputWithContext(context.Context) GetCrossRegionsRegionOutput
}

GetCrossRegionsRegionInput is an input type that accepts GetCrossRegionsRegionArgs and GetCrossRegionsRegionOutput values. You can construct a concrete instance of `GetCrossRegionsRegionInput` via:

GetCrossRegionsRegionArgs{...}

type GetCrossRegionsRegionOutput added in v3.29.0

type GetCrossRegionsRegionOutput struct{ *pulumi.OutputState }

func (GetCrossRegionsRegionOutput) ElementType added in v3.29.0

func (GetCrossRegionsRegionOutput) Id added in v3.29.0

ID of the region.

func (GetCrossRegionsRegionOutput) ToGetCrossRegionsRegionOutput added in v3.29.0

func (o GetCrossRegionsRegionOutput) ToGetCrossRegionsRegionOutput() GetCrossRegionsRegionOutput

func (GetCrossRegionsRegionOutput) ToGetCrossRegionsRegionOutputWithContext added in v3.29.0

func (o GetCrossRegionsRegionOutput) ToGetCrossRegionsRegionOutputWithContext(ctx context.Context) GetCrossRegionsRegionOutput

type GetCrossRegionsResult added in v3.29.0

type GetCrossRegionsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of region IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// The list of destination regions that support cross-region backup. Each element contains the following attributes:
	Regions []GetCrossRegionsRegion `pulumi:"regions"`
}

A collection of values returned by getCrossRegions.

func GetCrossRegions added in v3.29.0

func GetCrossRegions(ctx *pulumi.Context, args *GetCrossRegionsArgs, opts ...pulumi.InvokeOption) (*GetCrossRegionsResult, error)

This data source provides an available area for remote disaster recovery for RDS.

> **NOTE:** Available in v1.193.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 {
		// Declare the data source
		_, err := rds.GetCrossRegions(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsCrossRegions", regions.Ids[0])
		return nil
	})
}

```

type GetCrossRegionsResultOutput added in v3.29.0

type GetCrossRegionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCrossRegions.

func GetCrossRegionsOutput added in v3.29.0

func (GetCrossRegionsResultOutput) ElementType added in v3.29.0

func (GetCrossRegionsResultOutput) Id added in v3.29.0

The provider-assigned unique ID for this managed resource.

func (GetCrossRegionsResultOutput) Ids added in v3.29.0

A list of region IDs.

func (GetCrossRegionsResultOutput) OutputFile added in v3.29.0

func (GetCrossRegionsResultOutput) Regions added in v3.29.0

The list of destination regions that support cross-region backup. Each element contains the following attributes:

func (GetCrossRegionsResultOutput) ToGetCrossRegionsResultOutput added in v3.29.0

func (o GetCrossRegionsResultOutput) ToGetCrossRegionsResultOutput() GetCrossRegionsResultOutput

func (GetCrossRegionsResultOutput) ToGetCrossRegionsResultOutputWithContext added in v3.29.0

func (o GetCrossRegionsResultOutput) ToGetCrossRegionsResultOutputWithContext(ctx context.Context) GetCrossRegionsResultOutput

type GetInstanceClassInfosArgs added in v3.29.0

type GetInstanceClassInfosArgs struct {
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	CommodityCode string `pulumi:"commodityCode"`
	// The ID of the primary instance.
	DbInstanceId *string `pulumi:"dbInstanceId"`
	// A list of Rds available resource. Each element contains the following attributes:
	Infos []GetInstanceClassInfosInfo `pulumi:"infos"`
	// FThe type of order that you want to query. Valid values:
	// * **BUY**: specifies the query orders that are used to purchase instances.
	// * **UPGRADE**: specifies the query orders that are used to change the specifications of instances.
	// * **RENEW**: specifies the query orders that are used to renew instances.
	// * **CONVERT**: specifies the query orders that are used to change the billing methods of instances.
	OrderType string `pulumi:"orderType"`
	// File name where to save data source results (after running `pulumi up`).
	//
	// > **NOTE**: If you use the CommodityCode parameter to query the instance types that are available to read-only instances, you must specify the DBInstanceId parameter.
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getInstanceClassInfos.

type GetInstanceClassInfosInfo added in v3.29.0

type GetInstanceClassInfosInfo struct {
	// The code of the instance type.
	ClassCode *string `pulumi:"classCode"`
	// The instance family of the instance.
	ClassGroup *string `pulumi:"classGroup"`
	// The number of cores that are supported by the instance type. Unit: cores.
	Cpu *string `pulumi:"cpu"`
	// The architecture of the instance type.
	InstructionSetArch *string `pulumi:"instructionSetArch"`
	// The maximum number of connections that are supported by the instance type. Unit: connections.
	MaxConnections *string `pulumi:"maxConnections"`
	// The maximum I/O bandwidth that is supported by the instance type. Unit: Mbit/s.
	MaxIombps *string `pulumi:"maxIombps"`
	// The maximum input/output operations per second (IOPS) that is supported by the instance type. Unit: operations per second.
	MaxIops *string `pulumi:"maxIops"`
	// The memory capacity that is supported by the instance type. Unit: GB.
	MemoryClass *string `pulumi:"memoryClass"`
	// The fee that you must pay for the instance type. Unit: cent (USD).
	ReferencePrice *string `pulumi:"referencePrice"`
}

type GetInstanceClassInfosInfoArgs added in v3.29.0

type GetInstanceClassInfosInfoArgs struct {
	// The code of the instance type.
	ClassCode pulumi.StringPtrInput `pulumi:"classCode"`
	// The instance family of the instance.
	ClassGroup pulumi.StringPtrInput `pulumi:"classGroup"`
	// The number of cores that are supported by the instance type. Unit: cores.
	Cpu pulumi.StringPtrInput `pulumi:"cpu"`
	// The architecture of the instance type.
	InstructionSetArch pulumi.StringPtrInput `pulumi:"instructionSetArch"`
	// The maximum number of connections that are supported by the instance type. Unit: connections.
	MaxConnections pulumi.StringPtrInput `pulumi:"maxConnections"`
	// The maximum I/O bandwidth that is supported by the instance type. Unit: Mbit/s.
	MaxIombps pulumi.StringPtrInput `pulumi:"maxIombps"`
	// The maximum input/output operations per second (IOPS) that is supported by the instance type. Unit: operations per second.
	MaxIops pulumi.StringPtrInput `pulumi:"maxIops"`
	// The memory capacity that is supported by the instance type. Unit: GB.
	MemoryClass pulumi.StringPtrInput `pulumi:"memoryClass"`
	// The fee that you must pay for the instance type. Unit: cent (USD).
	ReferencePrice pulumi.StringPtrInput `pulumi:"referencePrice"`
}

func (GetInstanceClassInfosInfoArgs) ElementType added in v3.29.0

func (GetInstanceClassInfosInfoArgs) ToGetInstanceClassInfosInfoOutput added in v3.29.0

func (i GetInstanceClassInfosInfoArgs) ToGetInstanceClassInfosInfoOutput() GetInstanceClassInfosInfoOutput

func (GetInstanceClassInfosInfoArgs) ToGetInstanceClassInfosInfoOutputWithContext added in v3.29.0

func (i GetInstanceClassInfosInfoArgs) ToGetInstanceClassInfosInfoOutputWithContext(ctx context.Context) GetInstanceClassInfosInfoOutput

type GetInstanceClassInfosInfoArray added in v3.29.0

type GetInstanceClassInfosInfoArray []GetInstanceClassInfosInfoInput

func (GetInstanceClassInfosInfoArray) ElementType added in v3.29.0

func (GetInstanceClassInfosInfoArray) ToGetInstanceClassInfosInfoArrayOutput added in v3.29.0

func (i GetInstanceClassInfosInfoArray) ToGetInstanceClassInfosInfoArrayOutput() GetInstanceClassInfosInfoArrayOutput

func (GetInstanceClassInfosInfoArray) ToGetInstanceClassInfosInfoArrayOutputWithContext added in v3.29.0

func (i GetInstanceClassInfosInfoArray) ToGetInstanceClassInfosInfoArrayOutputWithContext(ctx context.Context) GetInstanceClassInfosInfoArrayOutput

type GetInstanceClassInfosInfoArrayInput added in v3.29.0

type GetInstanceClassInfosInfoArrayInput interface {
	pulumi.Input

	ToGetInstanceClassInfosInfoArrayOutput() GetInstanceClassInfosInfoArrayOutput
	ToGetInstanceClassInfosInfoArrayOutputWithContext(context.Context) GetInstanceClassInfosInfoArrayOutput
}

GetInstanceClassInfosInfoArrayInput is an input type that accepts GetInstanceClassInfosInfoArray and GetInstanceClassInfosInfoArrayOutput values. You can construct a concrete instance of `GetInstanceClassInfosInfoArrayInput` via:

GetInstanceClassInfosInfoArray{ GetInstanceClassInfosInfoArgs{...} }

type GetInstanceClassInfosInfoArrayOutput added in v3.29.0

type GetInstanceClassInfosInfoArrayOutput struct{ *pulumi.OutputState }

func (GetInstanceClassInfosInfoArrayOutput) ElementType added in v3.29.0

func (GetInstanceClassInfosInfoArrayOutput) Index added in v3.29.0

func (GetInstanceClassInfosInfoArrayOutput) ToGetInstanceClassInfosInfoArrayOutput added in v3.29.0

func (o GetInstanceClassInfosInfoArrayOutput) ToGetInstanceClassInfosInfoArrayOutput() GetInstanceClassInfosInfoArrayOutput

func (GetInstanceClassInfosInfoArrayOutput) ToGetInstanceClassInfosInfoArrayOutputWithContext added in v3.29.0

func (o GetInstanceClassInfosInfoArrayOutput) ToGetInstanceClassInfosInfoArrayOutputWithContext(ctx context.Context) GetInstanceClassInfosInfoArrayOutput

type GetInstanceClassInfosInfoInput added in v3.29.0

type GetInstanceClassInfosInfoInput interface {
	pulumi.Input

	ToGetInstanceClassInfosInfoOutput() GetInstanceClassInfosInfoOutput
	ToGetInstanceClassInfosInfoOutputWithContext(context.Context) GetInstanceClassInfosInfoOutput
}

GetInstanceClassInfosInfoInput is an input type that accepts GetInstanceClassInfosInfoArgs and GetInstanceClassInfosInfoOutput values. You can construct a concrete instance of `GetInstanceClassInfosInfoInput` via:

GetInstanceClassInfosInfoArgs{...}

type GetInstanceClassInfosInfoOutput added in v3.29.0

type GetInstanceClassInfosInfoOutput struct{ *pulumi.OutputState }

func (GetInstanceClassInfosInfoOutput) ClassCode added in v3.29.0

The code of the instance type.

func (GetInstanceClassInfosInfoOutput) ClassGroup added in v3.29.0

The instance family of the instance.

func (GetInstanceClassInfosInfoOutput) Cpu added in v3.29.0

The number of cores that are supported by the instance type. Unit: cores.

func (GetInstanceClassInfosInfoOutput) ElementType added in v3.29.0

func (GetInstanceClassInfosInfoOutput) InstructionSetArch added in v3.29.0

The architecture of the instance type.

func (GetInstanceClassInfosInfoOutput) MaxConnections added in v3.29.0

The maximum number of connections that are supported by the instance type. Unit: connections.

func (GetInstanceClassInfosInfoOutput) MaxIombps added in v3.29.0

The maximum I/O bandwidth that is supported by the instance type. Unit: Mbit/s.

func (GetInstanceClassInfosInfoOutput) MaxIops added in v3.29.0

The maximum input/output operations per second (IOPS) that is supported by the instance type. Unit: operations per second.

func (GetInstanceClassInfosInfoOutput) MemoryClass added in v3.29.0

The memory capacity that is supported by the instance type. Unit: GB.

func (GetInstanceClassInfosInfoOutput) ReferencePrice added in v3.29.0

The fee that you must pay for the instance type. Unit: cent (USD).

func (GetInstanceClassInfosInfoOutput) ToGetInstanceClassInfosInfoOutput added in v3.29.0

func (o GetInstanceClassInfosInfoOutput) ToGetInstanceClassInfosInfoOutput() GetInstanceClassInfosInfoOutput

func (GetInstanceClassInfosInfoOutput) ToGetInstanceClassInfosInfoOutputWithContext added in v3.29.0

func (o GetInstanceClassInfosInfoOutput) ToGetInstanceClassInfosInfoOutputWithContext(ctx context.Context) GetInstanceClassInfosInfoOutput

type GetInstanceClassInfosOutputArgs added in v3.29.0

type GetInstanceClassInfosOutputArgs struct {
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	CommodityCode pulumi.StringInput `pulumi:"commodityCode"`
	// The ID of the primary instance.
	DbInstanceId pulumi.StringPtrInput `pulumi:"dbInstanceId"`
	// A list of Rds available resource. Each element contains the following attributes:
	Infos GetInstanceClassInfosInfoArrayInput `pulumi:"infos"`
	// FThe type of order that you want to query. Valid values:
	// * **BUY**: specifies the query orders that are used to purchase instances.
	// * **UPGRADE**: specifies the query orders that are used to change the specifications of instances.
	// * **RENEW**: specifies the query orders that are used to renew instances.
	// * **CONVERT**: specifies the query orders that are used to change the billing methods of instances.
	OrderType pulumi.StringInput `pulumi:"orderType"`
	// File name where to save data source results (after running `pulumi up`).
	//
	// > **NOTE**: If you use the CommodityCode parameter to query the instance types that are available to read-only instances, you must specify the DBInstanceId parameter.
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getInstanceClassInfos.

func (GetInstanceClassInfosOutputArgs) ElementType added in v3.29.0

type GetInstanceClassInfosResult added in v3.29.0

type GetInstanceClassInfosResult struct {
	CommodityCode string  `pulumi:"commodityCode"`
	DbInstanceId  *string `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Rds instance class codes.
	Ids []string `pulumi:"ids"`
	// A list of Rds available resource. Each element contains the following attributes:
	Infos      []GetInstanceClassInfosInfo `pulumi:"infos"`
	OrderType  string                      `pulumi:"orderType"`
	OutputFile *string                     `pulumi:"outputFile"`
}

A collection of values returned by getInstanceClassInfos.

func GetInstanceClassInfos added in v3.29.0

func GetInstanceClassInfos(ctx *pulumi.Context, args *GetInstanceClassInfosArgs, opts ...pulumi.InvokeOption) (*GetInstanceClassInfosResult, error)

This data source operation to query the instance types that are available to specific instances of Alibaba Cloud.

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

## Example Usage

type GetInstanceClassInfosResultOutput added in v3.29.0

type GetInstanceClassInfosResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceClassInfos.

func GetInstanceClassInfosOutput added in v3.29.0

func (GetInstanceClassInfosResultOutput) CommodityCode added in v3.29.0

func (GetInstanceClassInfosResultOutput) DbInstanceId added in v3.29.0

func (GetInstanceClassInfosResultOutput) ElementType added in v3.29.0

func (GetInstanceClassInfosResultOutput) Id added in v3.29.0

The provider-assigned unique ID for this managed resource.

func (GetInstanceClassInfosResultOutput) Ids added in v3.29.0

A list of Rds instance class codes.

func (GetInstanceClassInfosResultOutput) Infos added in v3.29.0

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

func (GetInstanceClassInfosResultOutput) OrderType added in v3.29.0

func (GetInstanceClassInfosResultOutput) OutputFile added in v3.29.0

func (GetInstanceClassInfosResultOutput) ToGetInstanceClassInfosResultOutput added in v3.29.0

func (o GetInstanceClassInfosResultOutput) ToGetInstanceClassInfosResultOutput() GetInstanceClassInfosResultOutput

func (GetInstanceClassInfosResultOutput) ToGetInstanceClassInfosResultOutputWithContext added in v3.29.0

func (o GetInstanceClassInfosResultOutput) ToGetInstanceClassInfosResultOutputWithContext(ctx context.Context) GetInstanceClassInfosResultOutput

type GetInstanceClassesArgs

type GetInstanceClassesArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`, `serverlessBasic`, `serverlessStandard`, `serverlessHa`, `cluster`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category *string `pulumi:"category"`
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_serverless_public_cn**: The instance is a subscription serverless instance. This value is available on the China site (aliyun.com).
	// * **rds_serverless_public_intl**: The instance is a subscription serverless instance. This value is available on the International site (alibabacloud.com).
	//
	// > **NOTE**: The field `dbInstanceId` will be ignored when `commodityCode` is not a read-only type.
	CommodityCode *string `pulumi:"commodityCode"`
	// The DB instance class type by the user.
	DbInstanceClass *string `pulumi:"dbInstanceClass"`
	// The ID of the instance.
	//
	// > **NOTE**: The field `dbInstanceId` will be ignored when `commodityCode` is not a read-only type.
	DbInstanceId *string `pulumi:"dbInstanceId"`
	// 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", "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` and `Serverless`. 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"`
	// File name where to save data source results (after running `pulumi up`).
	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`, `serverlessBasic`, `serverlessStandard`, `serverlessHa`, `cluster`], [detail info](https://www.alibabacloud.com/help/doc-detail/69795.htm).
	Category pulumi.StringPtrInput `pulumi:"category"`
	// The commodity code of the instance. Valid values:
	// * **bards**: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
	// * **rds**: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
	// * **rords**: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
	// * **rds_rordspre_public_cn**: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
	// * **bards_intl**: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
	// * **rds_intl**: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
	// * **rords_intl**: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_rordspre_public_intl**: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
	// * **rds_serverless_public_cn**: The instance is a subscription serverless instance. This value is available on the China site (aliyun.com).
	// * **rds_serverless_public_intl**: The instance is a subscription serverless instance. This value is available on the International site (alibabacloud.com).
	//
	// > **NOTE**: The field `dbInstanceId` will be ignored when `commodityCode` is not a read-only type.
	CommodityCode pulumi.StringPtrInput `pulumi:"commodityCode"`
	// The DB instance class type by the user.
	DbInstanceClass pulumi.StringPtrInput `pulumi:"dbInstanceClass"`
	// The ID of the instance.
	//
	// > **NOTE**: The field `dbInstanceId` will be ignored when `commodityCode` is not a read-only type.
	DbInstanceId pulumi.StringPtrInput `pulumi:"dbInstanceId"`
	// 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", "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` and `Serverless`. 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"`
	// File name where to save data source results (after running `pulumi up`).
	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"`
	CommodityCode         *string `pulumi:"commodityCode"`
	DbInstanceClass       *string `pulumi:"dbInstanceClass"`
	DbInstanceId          *string `pulumi:"dbInstanceId"`
	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

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) CommodityCode added in v3.20.0

func (GetInstanceClassesResultOutput) DbInstanceClass added in v3.9.0

func (GetInstanceClassesResultOutput) DbInstanceId added in v3.20.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", "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"`
	// File name where to save data source results (after running `pulumi up`).
	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", "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", "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", "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", "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"`
	// File name where to save data source results (after running `pulumi up`).
	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

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`, `MariaDB`. 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"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	PageNumber *int    `pulumi:"pageNumber"`
	PageSize   *int    `pulumi:"pageSize"`
	// 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"`
	// (Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with cloud disks. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. This parameter is not supported now.
	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"`
	// (Available in 1.197.0+) The type of instance.
	DbInstanceType string `pulumi:"dbInstanceType"`
	// `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.167.0+) Indicates whether the release protection feature is enabled for the instance. Valid values:
	// * **true**: The release protection feature is enabled.
	// * **false**: The release protection feature is disabled.
	DeletionProtection bool `pulumi:"deletionProtection"`
	// (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`, `MariaDB`. 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"`
	// (Available since v1.209.1) The high availability mode of the instance.
	HaMode string `pulumi:"haMode"`
	// (Available since v1.209.1) An array that consists of the information of the primary and secondary instances.
	HostInstanceInfos []GetInstancesInstanceHostInstanceInfo `pulumi:"hostInstanceInfos"`
	// 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"`
	// The region ID of the instance.
	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"`
	// (Available since v1.209.1) The data replication mode of the instance.
	SyncMode string `pulumi:"syncMode"`
	// 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"`
	// (Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with cloud disks. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. This parameter is not supported now.
	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"`
	// (Available in 1.197.0+) The type of instance.
	DbInstanceType pulumi.StringInput `pulumi:"dbInstanceType"`
	// `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.167.0+) Indicates whether the release protection feature is enabled for the instance. Valid values:
	// * **true**: The release protection feature is enabled.
	// * **false**: The release protection feature is disabled.
	DeletionProtection pulumi.BoolInput `pulumi:"deletionProtection"`
	// (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`, `MariaDB`. 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"`
	// (Available since v1.209.1) The high availability mode of the instance.
	HaMode pulumi.StringInput `pulumi:"haMode"`
	// (Available since v1.209.1) An array that consists of the information of the primary and secondary instances.
	HostInstanceInfos GetInstancesInstanceHostInstanceInfoArrayInput `pulumi:"hostInstanceInfos"`
	// 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"`
	// The region ID of the instance.
	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"`
	// (Available since v1.209.1) The data replication mode of the instance.
	SyncMode pulumi.StringInput `pulumi:"syncMode"`
	// 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 GetInstancesInstanceHostInstanceInfo added in v3.43.1

type GetInstancesInstanceHostInstanceInfo struct {
	// The time when the secondary instance completed the synchronization of data from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	DataSyncTime string `pulumi:"dataSyncTime"`
	// The time when the secondary instance received logs from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	LogSyncTime string `pulumi:"logSyncTime"`
	// The ID of the instance.
	NodeId string `pulumi:"nodeId"`
	// The type of the node.
	NodeType string `pulumi:"nodeType"`
	// The region ID of the instance.
	RegionId string `pulumi:"regionId"`
	// The synchronization status.
	SyncStatus string `pulumi:"syncStatus"`
	// The ID of the zone.
	ZoneId string `pulumi:"zoneId"`
}

type GetInstancesInstanceHostInstanceInfoArgs added in v3.43.1

type GetInstancesInstanceHostInstanceInfoArgs struct {
	// The time when the secondary instance completed the synchronization of data from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	DataSyncTime pulumi.StringInput `pulumi:"dataSyncTime"`
	// The time when the secondary instance received logs from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	LogSyncTime pulumi.StringInput `pulumi:"logSyncTime"`
	// The ID of the instance.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
	// The type of the node.
	NodeType pulumi.StringInput `pulumi:"nodeType"`
	// The region ID of the instance.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The synchronization status.
	SyncStatus pulumi.StringInput `pulumi:"syncStatus"`
	// The ID of the zone.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetInstancesInstanceHostInstanceInfoArgs) ElementType added in v3.43.1

func (GetInstancesInstanceHostInstanceInfoArgs) ToGetInstancesInstanceHostInstanceInfoOutput added in v3.43.1

func (i GetInstancesInstanceHostInstanceInfoArgs) ToGetInstancesInstanceHostInstanceInfoOutput() GetInstancesInstanceHostInstanceInfoOutput

func (GetInstancesInstanceHostInstanceInfoArgs) ToGetInstancesInstanceHostInstanceInfoOutputWithContext added in v3.43.1

func (i GetInstancesInstanceHostInstanceInfoArgs) ToGetInstancesInstanceHostInstanceInfoOutputWithContext(ctx context.Context) GetInstancesInstanceHostInstanceInfoOutput

type GetInstancesInstanceHostInstanceInfoArray added in v3.43.1

type GetInstancesInstanceHostInstanceInfoArray []GetInstancesInstanceHostInstanceInfoInput

func (GetInstancesInstanceHostInstanceInfoArray) ElementType added in v3.43.1

func (GetInstancesInstanceHostInstanceInfoArray) ToGetInstancesInstanceHostInstanceInfoArrayOutput added in v3.43.1

func (i GetInstancesInstanceHostInstanceInfoArray) ToGetInstancesInstanceHostInstanceInfoArrayOutput() GetInstancesInstanceHostInstanceInfoArrayOutput

func (GetInstancesInstanceHostInstanceInfoArray) ToGetInstancesInstanceHostInstanceInfoArrayOutputWithContext added in v3.43.1

func (i GetInstancesInstanceHostInstanceInfoArray) ToGetInstancesInstanceHostInstanceInfoArrayOutputWithContext(ctx context.Context) GetInstancesInstanceHostInstanceInfoArrayOutput

type GetInstancesInstanceHostInstanceInfoArrayInput added in v3.43.1

type GetInstancesInstanceHostInstanceInfoArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceHostInstanceInfoArrayOutput() GetInstancesInstanceHostInstanceInfoArrayOutput
	ToGetInstancesInstanceHostInstanceInfoArrayOutputWithContext(context.Context) GetInstancesInstanceHostInstanceInfoArrayOutput
}

GetInstancesInstanceHostInstanceInfoArrayInput is an input type that accepts GetInstancesInstanceHostInstanceInfoArray and GetInstancesInstanceHostInstanceInfoArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceHostInstanceInfoArrayInput` via:

GetInstancesInstanceHostInstanceInfoArray{ GetInstancesInstanceHostInstanceInfoArgs{...} }

type GetInstancesInstanceHostInstanceInfoArrayOutput added in v3.43.1

type GetInstancesInstanceHostInstanceInfoArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceHostInstanceInfoArrayOutput) ElementType added in v3.43.1

func (GetInstancesInstanceHostInstanceInfoArrayOutput) Index added in v3.43.1

func (GetInstancesInstanceHostInstanceInfoArrayOutput) ToGetInstancesInstanceHostInstanceInfoArrayOutput added in v3.43.1

func (o GetInstancesInstanceHostInstanceInfoArrayOutput) ToGetInstancesInstanceHostInstanceInfoArrayOutput() GetInstancesInstanceHostInstanceInfoArrayOutput

func (GetInstancesInstanceHostInstanceInfoArrayOutput) ToGetInstancesInstanceHostInstanceInfoArrayOutputWithContext added in v3.43.1

func (o GetInstancesInstanceHostInstanceInfoArrayOutput) ToGetInstancesInstanceHostInstanceInfoArrayOutputWithContext(ctx context.Context) GetInstancesInstanceHostInstanceInfoArrayOutput

type GetInstancesInstanceHostInstanceInfoInput added in v3.43.1

type GetInstancesInstanceHostInstanceInfoInput interface {
	pulumi.Input

	ToGetInstancesInstanceHostInstanceInfoOutput() GetInstancesInstanceHostInstanceInfoOutput
	ToGetInstancesInstanceHostInstanceInfoOutputWithContext(context.Context) GetInstancesInstanceHostInstanceInfoOutput
}

GetInstancesInstanceHostInstanceInfoInput is an input type that accepts GetInstancesInstanceHostInstanceInfoArgs and GetInstancesInstanceHostInstanceInfoOutput values. You can construct a concrete instance of `GetInstancesInstanceHostInstanceInfoInput` via:

GetInstancesInstanceHostInstanceInfoArgs{...}

type GetInstancesInstanceHostInstanceInfoOutput added in v3.43.1

type GetInstancesInstanceHostInstanceInfoOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceHostInstanceInfoOutput) DataSyncTime added in v3.43.1

The time when the secondary instance completed the synchronization of data from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetInstancesInstanceHostInstanceInfoOutput) ElementType added in v3.43.1

func (GetInstancesInstanceHostInstanceInfoOutput) LogSyncTime added in v3.43.1

The time when the secondary instance received logs from the primary instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (GetInstancesInstanceHostInstanceInfoOutput) NodeId added in v3.43.1

The ID of the instance.

func (GetInstancesInstanceHostInstanceInfoOutput) NodeType added in v3.43.1

The type of the node.

func (GetInstancesInstanceHostInstanceInfoOutput) RegionId added in v3.43.1

The region ID of the instance.

func (GetInstancesInstanceHostInstanceInfoOutput) SyncStatus added in v3.43.1

The synchronization status.

func (GetInstancesInstanceHostInstanceInfoOutput) ToGetInstancesInstanceHostInstanceInfoOutput added in v3.43.1

func (o GetInstancesInstanceHostInstanceInfoOutput) ToGetInstancesInstanceHostInstanceInfoOutput() GetInstancesInstanceHostInstanceInfoOutput

func (GetInstancesInstanceHostInstanceInfoOutput) ToGetInstancesInstanceHostInstanceInfoOutputWithContext added in v3.43.1

func (o GetInstancesInstanceHostInstanceInfoOutput) ToGetInstancesInstanceHostInstanceInfoOutputWithContext(ctx context.Context) GetInstancesInstanceHostInstanceInfoOutput

func (GetInstancesInstanceHostInstanceInfoOutput) ZoneId added in v3.43.1

The ID of the zone.

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

(Available in 1.124.1+) The content of the server certificate. This parameter is supported only when the instance runs PostgreSQL with cloud disks. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC. This parameter is not supported now.

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) DbInstanceType added in v3.30.0

func (o GetInstancesInstanceOutput) DbInstanceType() pulumi.StringOutput

(Available in 1.197.0+) The type of 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) DeletionProtection added in v3.20.0

func (o GetInstancesInstanceOutput) DeletionProtection() pulumi.BoolOutput

(Available in 1.167.0+) Indicates whether the release protection feature is enabled for the instance. Valid values: * **true**: The release protection feature is enabled. * **false**: The release protection feature is disabled.

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`, `MariaDB`. 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) HaMode added in v3.43.1

(Available since v1.209.1) The high availability mode of the instance.

func (GetInstancesInstanceOutput) HostInstanceInfos added in v3.43.1

(Available since v1.209.1) An array that consists of the information of the primary and secondary instances.

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

The region ID of the instance.

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) SyncMode added in v3.43.1

(Available since v1.209.1) The data replication mode 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`, `MariaDB`. 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"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	PageNumber pulumi.IntPtrInput    `pulumi:"pageNumber"`
	PageSize   pulumi.IntPtrInput    `pulumi:"pageSize"`
	// 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`, `MariaDB`. 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"`
	PageNumber *int     `pulumi:"pageNumber"`
	PageSize   *int     `pulumi:"pageSize"`
	// Status of the instance.
	Status     *string                `pulumi:"status"`
	Tags       map[string]interface{} `pulumi:"tags"`
	TotalCount int                    `pulumi:"totalCount"`
	// 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.

> **NOTE:** Available since v1.7.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 {
		dbInstancesDs, err := rds.GetInstances(ctx, &rds.GetInstancesArgs{
			NameRegex: pulumi.StringRef("data-\\d+"),
			Status:    pulumi.StringRef("Running"),
			Tags: map[string]interface{}{
				"type": "database",
				"size": "tiny",
			},
		}, 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`, `MariaDB`. 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) PageNumber added in v3.16.0

func (GetInstancesResultOutput) PageSize added in v3.16.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) TotalCount added in v3.16.0

func (o GetInstancesResultOutput) TotalCount() pulumi.IntOutput

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 GetModifyParameterLogsArgs added in v3.23.0

type GetModifyParameterLogsArgs struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The end time.
	EndTime string `pulumi:"endTime"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The start time.
	StartTime string `pulumi:"startTime"`
}

A collection of arguments for invoking getModifyParameterLogs.

type GetModifyParameterLogsLog added in v3.23.0

type GetModifyParameterLogsLog struct {
	// The time when the parameter was reconfigured. This value is a UNIX timestamp. Unit: milliseconds.
	ModifyTime string `pulumi:"modifyTime"`
	// The new value of the parameter.
	NewParameterValue string `pulumi:"newParameterValue"`
	// The original value of the parameter.
	OldParameterValue string `pulumi:"oldParameterValue"`
	// The name of the parameter.
	ParameterName string `pulumi:"parameterName"`
	// The status of the new value specified for the parameter. Valid values:
	// * **Applied**: The new value has taken effect.
	// * **Syncing**: The new value is being applied and has not taken effect.
	Status string `pulumi:"status"`
}

type GetModifyParameterLogsLogArgs added in v3.23.0

type GetModifyParameterLogsLogArgs struct {
	// The time when the parameter was reconfigured. This value is a UNIX timestamp. Unit: milliseconds.
	ModifyTime pulumi.StringInput `pulumi:"modifyTime"`
	// The new value of the parameter.
	NewParameterValue pulumi.StringInput `pulumi:"newParameterValue"`
	// The original value of the parameter.
	OldParameterValue pulumi.StringInput `pulumi:"oldParameterValue"`
	// The name of the parameter.
	ParameterName pulumi.StringInput `pulumi:"parameterName"`
	// The status of the new value specified for the parameter. Valid values:
	// * **Applied**: The new value has taken effect.
	// * **Syncing**: The new value is being applied and has not taken effect.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetModifyParameterLogsLogArgs) ElementType added in v3.23.0

func (GetModifyParameterLogsLogArgs) ToGetModifyParameterLogsLogOutput added in v3.23.0

func (i GetModifyParameterLogsLogArgs) ToGetModifyParameterLogsLogOutput() GetModifyParameterLogsLogOutput

func (GetModifyParameterLogsLogArgs) ToGetModifyParameterLogsLogOutputWithContext added in v3.23.0

func (i GetModifyParameterLogsLogArgs) ToGetModifyParameterLogsLogOutputWithContext(ctx context.Context) GetModifyParameterLogsLogOutput

type GetModifyParameterLogsLogArray added in v3.23.0

type GetModifyParameterLogsLogArray []GetModifyParameterLogsLogInput

func (GetModifyParameterLogsLogArray) ElementType added in v3.23.0

func (GetModifyParameterLogsLogArray) ToGetModifyParameterLogsLogArrayOutput added in v3.23.0

func (i GetModifyParameterLogsLogArray) ToGetModifyParameterLogsLogArrayOutput() GetModifyParameterLogsLogArrayOutput

func (GetModifyParameterLogsLogArray) ToGetModifyParameterLogsLogArrayOutputWithContext added in v3.23.0

func (i GetModifyParameterLogsLogArray) ToGetModifyParameterLogsLogArrayOutputWithContext(ctx context.Context) GetModifyParameterLogsLogArrayOutput

type GetModifyParameterLogsLogArrayInput added in v3.23.0

type GetModifyParameterLogsLogArrayInput interface {
	pulumi.Input

	ToGetModifyParameterLogsLogArrayOutput() GetModifyParameterLogsLogArrayOutput
	ToGetModifyParameterLogsLogArrayOutputWithContext(context.Context) GetModifyParameterLogsLogArrayOutput
}

GetModifyParameterLogsLogArrayInput is an input type that accepts GetModifyParameterLogsLogArray and GetModifyParameterLogsLogArrayOutput values. You can construct a concrete instance of `GetModifyParameterLogsLogArrayInput` via:

GetModifyParameterLogsLogArray{ GetModifyParameterLogsLogArgs{...} }

type GetModifyParameterLogsLogArrayOutput added in v3.23.0

type GetModifyParameterLogsLogArrayOutput struct{ *pulumi.OutputState }

func (GetModifyParameterLogsLogArrayOutput) ElementType added in v3.23.0

func (GetModifyParameterLogsLogArrayOutput) Index added in v3.23.0

func (GetModifyParameterLogsLogArrayOutput) ToGetModifyParameterLogsLogArrayOutput added in v3.23.0

func (o GetModifyParameterLogsLogArrayOutput) ToGetModifyParameterLogsLogArrayOutput() GetModifyParameterLogsLogArrayOutput

func (GetModifyParameterLogsLogArrayOutput) ToGetModifyParameterLogsLogArrayOutputWithContext added in v3.23.0

func (o GetModifyParameterLogsLogArrayOutput) ToGetModifyParameterLogsLogArrayOutputWithContext(ctx context.Context) GetModifyParameterLogsLogArrayOutput

type GetModifyParameterLogsLogInput added in v3.23.0

type GetModifyParameterLogsLogInput interface {
	pulumi.Input

	ToGetModifyParameterLogsLogOutput() GetModifyParameterLogsLogOutput
	ToGetModifyParameterLogsLogOutputWithContext(context.Context) GetModifyParameterLogsLogOutput
}

GetModifyParameterLogsLogInput is an input type that accepts GetModifyParameterLogsLogArgs and GetModifyParameterLogsLogOutput values. You can construct a concrete instance of `GetModifyParameterLogsLogInput` via:

GetModifyParameterLogsLogArgs{...}

type GetModifyParameterLogsLogOutput added in v3.23.0

type GetModifyParameterLogsLogOutput struct{ *pulumi.OutputState }

func (GetModifyParameterLogsLogOutput) ElementType added in v3.23.0

func (GetModifyParameterLogsLogOutput) ModifyTime added in v3.23.0

The time when the parameter was reconfigured. This value is a UNIX timestamp. Unit: milliseconds.

func (GetModifyParameterLogsLogOutput) NewParameterValue added in v3.23.0

func (o GetModifyParameterLogsLogOutput) NewParameterValue() pulumi.StringOutput

The new value of the parameter.

func (GetModifyParameterLogsLogOutput) OldParameterValue added in v3.23.0

func (o GetModifyParameterLogsLogOutput) OldParameterValue() pulumi.StringOutput

The original value of the parameter.

func (GetModifyParameterLogsLogOutput) ParameterName added in v3.23.0

The name of the parameter.

func (GetModifyParameterLogsLogOutput) Status added in v3.23.0

The status of the new value specified for the parameter. Valid values: * **Applied**: The new value has taken effect. * **Syncing**: The new value is being applied and has not taken effect.

func (GetModifyParameterLogsLogOutput) ToGetModifyParameterLogsLogOutput added in v3.23.0

func (o GetModifyParameterLogsLogOutput) ToGetModifyParameterLogsLogOutput() GetModifyParameterLogsLogOutput

func (GetModifyParameterLogsLogOutput) ToGetModifyParameterLogsLogOutputWithContext added in v3.23.0

func (o GetModifyParameterLogsLogOutput) ToGetModifyParameterLogsLogOutputWithContext(ctx context.Context) GetModifyParameterLogsLogOutput

type GetModifyParameterLogsOutputArgs added in v3.23.0

type GetModifyParameterLogsOutputArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The end time.
	EndTime pulumi.StringInput `pulumi:"endTime"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The start time.
	StartTime pulumi.StringInput `pulumi:"startTime"`
}

A collection of arguments for invoking getModifyParameterLogs.

func (GetModifyParameterLogsOutputArgs) ElementType added in v3.23.0

type GetModifyParameterLogsResult added in v3.23.0

type GetModifyParameterLogsResult struct {
	DbInstanceId string `pulumi:"dbInstanceId"`
	EndTime      string `pulumi:"endTime"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                      `pulumi:"id"`
	Logs       []GetModifyParameterLogsLog `pulumi:"logs"`
	OutputFile *string                     `pulumi:"outputFile"`
	StartTime  string                      `pulumi:"startTime"`
}

A collection of values returned by getModifyParameterLogs.

func GetModifyParameterLogs added in v3.23.0

func GetModifyParameterLogs(ctx *pulumi.Context, args *GetModifyParameterLogsArgs, opts ...pulumi.InvokeOption) (*GetModifyParameterLogsResult, error)

This data source provides the Rds Modify Parameter Logs of the current Alibaba Cloud user.

> **NOTE:** Available in v1.174.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.GetModifyParameterLogs(ctx, &rds.GetModifyParameterLogsArgs{
			DbInstanceId: "example_value",
			StartTime:    "2022-06-04T13:56Z",
			EndTime:      "2022-06-08T13:56Z",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetModifyParameterLogsResultOutput added in v3.23.0

type GetModifyParameterLogsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getModifyParameterLogs.

func GetModifyParameterLogsOutput added in v3.23.0

func (GetModifyParameterLogsResultOutput) DbInstanceId added in v3.23.0

func (GetModifyParameterLogsResultOutput) ElementType added in v3.23.0

func (GetModifyParameterLogsResultOutput) EndTime added in v3.23.0

func (GetModifyParameterLogsResultOutput) Id added in v3.23.0

The provider-assigned unique ID for this managed resource.

func (GetModifyParameterLogsResultOutput) Logs added in v3.23.0

func (GetModifyParameterLogsResultOutput) OutputFile added in v3.23.0

func (GetModifyParameterLogsResultOutput) StartTime added in v3.23.0

func (GetModifyParameterLogsResultOutput) ToGetModifyParameterLogsResultOutput added in v3.23.0

func (o GetModifyParameterLogsResultOutput) ToGetModifyParameterLogsResultOutput() GetModifyParameterLogsResultOutput

func (GetModifyParameterLogsResultOutput) ToGetModifyParameterLogsResultOutputWithContext added in v3.23.0

func (o GetModifyParameterLogsResultOutput) ToGetModifyParameterLogsResultOutputWithContext(ctx context.Context) GetModifyParameterLogsResultOutput

type GetRdsBackupsArgs added in v3.13.0

type GetRdsBackupsArgs struct {
	// BackupMode. Valid values: `Automated` and `Manual`.
	BackupMode *string `pulumi:"backupMode"`
	// Backup task status. Valid values: `Automated` and `Manual`.
	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"`
	// File name where to save data source results (after running `pulumi preview`).
	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. Valid values: `Automated` and `Manual`.
	BackupMode pulumi.StringPtrInput `pulumi:"backupMode"`
	// Backup task status. Valid values: `Automated` and `Manual`.
	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"`
	// File name where to save data source results (after running `pulumi preview`).
	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 GetSlotsArgs added in v3.37.0

type GetSlotsArgs struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The resource group id.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
}

A collection of arguments for invoking getSlots.

type GetSlotsOutputArgs added in v3.37.0

type GetSlotsOutputArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The resource group id.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
}

A collection of arguments for invoking getSlots.

func (GetSlotsOutputArgs) ElementType added in v3.37.0

func (GetSlotsOutputArgs) ElementType() reflect.Type

type GetSlotsResult added in v3.37.0

type GetSlotsResult struct {
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id              string  `pulumi:"id"`
	OutputFile      *string `pulumi:"outputFile"`
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// A list of Rds Replication Slots. Each element contains the following attributes:
	Slots []GetSlotsSlot `pulumi:"slots"`
}

A collection of values returned by getSlots.

func GetSlots added in v3.37.0

func GetSlots(ctx *pulumi.Context, args *GetSlotsArgs, opts ...pulumi.InvokeOption) (*GetSlotsResult, error)

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

> **NOTE:** Available since v1.204.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.GetSlots(ctx, &rds.GetSlotsArgs{
			DbInstanceId: "example_value",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRdsSlotsName", example.Slots[0].SlotName)
		return nil
	})
}

```

type GetSlotsResultOutput added in v3.37.0

type GetSlotsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSlots.

func GetSlotsOutput added in v3.37.0

func GetSlotsOutput(ctx *pulumi.Context, args GetSlotsOutputArgs, opts ...pulumi.InvokeOption) GetSlotsResultOutput

func (GetSlotsResultOutput) DbInstanceId added in v3.37.0

func (o GetSlotsResultOutput) DbInstanceId() pulumi.StringOutput

func (GetSlotsResultOutput) ElementType added in v3.37.0

func (GetSlotsResultOutput) ElementType() reflect.Type

func (GetSlotsResultOutput) Id added in v3.37.0

The provider-assigned unique ID for this managed resource.

func (GetSlotsResultOutput) OutputFile added in v3.37.0

func (GetSlotsResultOutput) ResourceGroupId added in v3.37.0

func (o GetSlotsResultOutput) ResourceGroupId() pulumi.StringPtrOutput

func (GetSlotsResultOutput) Slots added in v3.37.0

A list of Rds Replication Slots. Each element contains the following attributes:

func (GetSlotsResultOutput) ToGetSlotsResultOutput added in v3.37.0

func (o GetSlotsResultOutput) ToGetSlotsResultOutput() GetSlotsResultOutput

func (GetSlotsResultOutput) ToGetSlotsResultOutputWithContext added in v3.37.0

func (o GetSlotsResultOutput) ToGetSlotsResultOutputWithContext(ctx context.Context) GetSlotsResultOutput

type GetSlotsSlot added in v3.37.0

type GetSlotsSlot struct {
	// The name of the database where Replication Slot is located.
	Database string `pulumi:"database"`
	// The plugin used by Replication Slot.
	Plugin string `pulumi:"plugin"`
	// The Replication Slot name.
	SlotName string `pulumi:"slotName"`
	// The Replication Slot status.
	SlotStatus string `pulumi:"slotStatus"`
	// The Replication Slot type.
	SlotType string `pulumi:"slotType"`
	// Is the Replication Slot temporary.
	Temporary string `pulumi:"temporary"`
	// The amount of logs accumulated by Replication Slot.
	WalDelay string `pulumi:"walDelay"`
}

type GetSlotsSlotArgs added in v3.37.0

type GetSlotsSlotArgs struct {
	// The name of the database where Replication Slot is located.
	Database pulumi.StringInput `pulumi:"database"`
	// The plugin used by Replication Slot.
	Plugin pulumi.StringInput `pulumi:"plugin"`
	// The Replication Slot name.
	SlotName pulumi.StringInput `pulumi:"slotName"`
	// The Replication Slot status.
	SlotStatus pulumi.StringInput `pulumi:"slotStatus"`
	// The Replication Slot type.
	SlotType pulumi.StringInput `pulumi:"slotType"`
	// Is the Replication Slot temporary.
	Temporary pulumi.StringInput `pulumi:"temporary"`
	// The amount of logs accumulated by Replication Slot.
	WalDelay pulumi.StringInput `pulumi:"walDelay"`
}

func (GetSlotsSlotArgs) ElementType added in v3.37.0

func (GetSlotsSlotArgs) ElementType() reflect.Type

func (GetSlotsSlotArgs) ToGetSlotsSlotOutput added in v3.37.0

func (i GetSlotsSlotArgs) ToGetSlotsSlotOutput() GetSlotsSlotOutput

func (GetSlotsSlotArgs) ToGetSlotsSlotOutputWithContext added in v3.37.0

func (i GetSlotsSlotArgs) ToGetSlotsSlotOutputWithContext(ctx context.Context) GetSlotsSlotOutput

type GetSlotsSlotArray added in v3.37.0

type GetSlotsSlotArray []GetSlotsSlotInput

func (GetSlotsSlotArray) ElementType added in v3.37.0

func (GetSlotsSlotArray) ElementType() reflect.Type

func (GetSlotsSlotArray) ToGetSlotsSlotArrayOutput added in v3.37.0

func (i GetSlotsSlotArray) ToGetSlotsSlotArrayOutput() GetSlotsSlotArrayOutput

func (GetSlotsSlotArray) ToGetSlotsSlotArrayOutputWithContext added in v3.37.0

func (i GetSlotsSlotArray) ToGetSlotsSlotArrayOutputWithContext(ctx context.Context) GetSlotsSlotArrayOutput

type GetSlotsSlotArrayInput added in v3.37.0

type GetSlotsSlotArrayInput interface {
	pulumi.Input

	ToGetSlotsSlotArrayOutput() GetSlotsSlotArrayOutput
	ToGetSlotsSlotArrayOutputWithContext(context.Context) GetSlotsSlotArrayOutput
}

GetSlotsSlotArrayInput is an input type that accepts GetSlotsSlotArray and GetSlotsSlotArrayOutput values. You can construct a concrete instance of `GetSlotsSlotArrayInput` via:

GetSlotsSlotArray{ GetSlotsSlotArgs{...} }

type GetSlotsSlotArrayOutput added in v3.37.0

type GetSlotsSlotArrayOutput struct{ *pulumi.OutputState }

func (GetSlotsSlotArrayOutput) ElementType added in v3.37.0

func (GetSlotsSlotArrayOutput) ElementType() reflect.Type

func (GetSlotsSlotArrayOutput) Index added in v3.37.0

func (GetSlotsSlotArrayOutput) ToGetSlotsSlotArrayOutput added in v3.37.0

func (o GetSlotsSlotArrayOutput) ToGetSlotsSlotArrayOutput() GetSlotsSlotArrayOutput

func (GetSlotsSlotArrayOutput) ToGetSlotsSlotArrayOutputWithContext added in v3.37.0

func (o GetSlotsSlotArrayOutput) ToGetSlotsSlotArrayOutputWithContext(ctx context.Context) GetSlotsSlotArrayOutput

type GetSlotsSlotInput added in v3.37.0

type GetSlotsSlotInput interface {
	pulumi.Input

	ToGetSlotsSlotOutput() GetSlotsSlotOutput
	ToGetSlotsSlotOutputWithContext(context.Context) GetSlotsSlotOutput
}

GetSlotsSlotInput is an input type that accepts GetSlotsSlotArgs and GetSlotsSlotOutput values. You can construct a concrete instance of `GetSlotsSlotInput` via:

GetSlotsSlotArgs{...}

type GetSlotsSlotOutput added in v3.37.0

type GetSlotsSlotOutput struct{ *pulumi.OutputState }

func (GetSlotsSlotOutput) Database added in v3.37.0

func (o GetSlotsSlotOutput) Database() pulumi.StringOutput

The name of the database where Replication Slot is located.

func (GetSlotsSlotOutput) ElementType added in v3.37.0

func (GetSlotsSlotOutput) ElementType() reflect.Type

func (GetSlotsSlotOutput) Plugin added in v3.37.0

The plugin used by Replication Slot.

func (GetSlotsSlotOutput) SlotName added in v3.37.0

func (o GetSlotsSlotOutput) SlotName() pulumi.StringOutput

The Replication Slot name.

func (GetSlotsSlotOutput) SlotStatus added in v3.37.0

func (o GetSlotsSlotOutput) SlotStatus() pulumi.StringOutput

The Replication Slot status.

func (GetSlotsSlotOutput) SlotType added in v3.37.0

func (o GetSlotsSlotOutput) SlotType() pulumi.StringOutput

The Replication Slot type.

func (GetSlotsSlotOutput) Temporary added in v3.37.0

func (o GetSlotsSlotOutput) Temporary() pulumi.StringOutput

Is the Replication Slot temporary.

func (GetSlotsSlotOutput) ToGetSlotsSlotOutput added in v3.37.0

func (o GetSlotsSlotOutput) ToGetSlotsSlotOutput() GetSlotsSlotOutput

func (GetSlotsSlotOutput) ToGetSlotsSlotOutputWithContext added in v3.37.0

func (o GetSlotsSlotOutput) ToGetSlotsSlotOutputWithContext(ctx context.Context) GetSlotsSlotOutput

func (GetSlotsSlotOutput) WalDelay added in v3.37.0

func (o GetSlotsSlotOutput) WalDelay() pulumi.StringOutput

The amount of logs accumulated by Replication Slot.

type GetZonesArgs

type GetZonesArgs struct {
	// DB Instance category. the value like [`Basic`, `HighAvailability`, `Finance`, `AlwaysOn`, `serverlessBasic`, `serverlessStandard`, `serverlessHa`, `cluster`], [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", "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` and `Serverless`. 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"`
	// File name where to save data source results (after running `pulumi preview`).
	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`, `serverlessBasic`, `serverlessStandard`, `serverlessHa`, `cluster`], [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", "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` and `Serverless`. 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"`
	// File name where to save data source results (after running `pulumi preview`).
	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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringOutput `pulumi:"autoUpgradeMinorVersion"`
	// The configuration of an ApsaraDB RDS for PostgreSQL instance for which Babelfish is enabled. See `babelfishConfig` below.
	//
	// > **NOTE:** This parameter takes effect only when you create an ApsaraDB RDS for PostgreSQL instance. For more information, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishConfigs InstanceBabelfishConfigArrayOutput `pulumi:"babelfishConfigs"`
	// The TDS port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort pulumi.StringOutput `pulumi:"babelfishPort"`
	// 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 RDS edition of the instance. If you want to create a serverless instance, you must use this value. Valid values:
	// * **Basic**: Basic Edition.
	// * **HighAvailability**: High-availability Edition.
	// * **AlwaysOn**: Cluster Edition.
	// * **Finance**: Enterprise Edition.
	// * **cluster**: MySQL Cluster Edition. (Available since 1.202.0)
	// * **serverless_basic**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.200.0)
	// * **serverless_standard**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.204.0)
	// * **serverless_ha**: RDS Serverless High-availability Edition for SQL Server. (Available since 1.204.0)
	//
	// > **NOTE:** `zoneIdSlaveA` and `zoneIdSlaveB` can specify slave zone ids when creating the high-availability or enterprise edition instances. Meanwhile, `vswitchId` needs to pass in the corresponding vswitch id to the slave zone by order (If the `vswitchId` is not specified, the classic network version will be created). For example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "zone-c", `zoneIdSlaveB` = "zone-b", then the `vswitchId` must be "vsw-zone-a,vsw-zone-c,vsw-zone-b". Of course, you can also choose automatic allocation , for example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "Auto",`zoneIdSlaveB` = "Auto", then the `vswitchId` must be "vsw-zone-a,Auto,Auto". The list contains up to 2 slave zone ids , separated by commas.
	Category pulumi.StringOutput `pulumi:"category"`
	// 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"`
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringOutput `pulumi:"connectionStringPrefix"`
	// (Available since 1.204.1) The creation time of db instance.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayAttribute"`
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	DbInstanceIpArrayName pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayName"`
	// The storage type of the instance. Serverless instance, only `cloudEssd` can be selected. 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"`
	// (Available since 1.197.0) The type of db instance.
	DbInstanceType pulumi.StringOutput `pulumi:"dbInstanceType"`
	// Specifies whether table names on the instance are case-sensitive. Valid values: `true`, `false`.
	DbIsIgnoreCase pulumi.BoolOutput `pulumi:"dbIsIgnoreCase"`
	// Parameter template ID. Only MySQL and PostgreSQL support this parameter. If this parameter is not specified, the default parameter template is used. You can also customize a parameter template and use it here.
	DbParamGroupId pulumi.StringPtrOutput `pulumi:"dbParamGroupId"`
	// 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.
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbTimeZone pulumi.StringOutput `pulumi:"dbTimeZone"`
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `instanceChargeType` is set to `Postpaid` or `Serverless`, supported engine type: `MySQL`, `PostgreSQL`, `MariaDB`, `MSSQL`.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// The instance configuration type. Valid values: ["Up", "Down", "TempUpgrade", "Serverless"]
	Direction pulumi.StringPtrOutput `pulumi:"direction"`
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime pulumi.StringPtrOutput `pulumi:"effectiveTime"`
	// 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, MariaDB.
	//
	// > **NOTE:** When the 'engine_version' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	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`.
	// - MySQL: [ 5.5、5.6、5.7、8.0 ]
	// - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ]
	// - MariaDB: [ 10.3 ]
	// - Serverless
	// > - MySQL: [ 5.7、8.0 ]
	// > - SQLServer: [ 2016_std_sl、2017_std_sl、2019_std_sl ]
	// > - PostgreSQL: [ 14.0 ]
	// > - MariaDB does not support creating serverless instances.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Specifies whether to enable forcible switching. Valid values:
	// - Yes
	// - No
	Force pulumi.StringPtrOutput `pulumi:"force"`
	// 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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringOutput `pulumi:"haConfig"`
	// Valid values are `Prepaid`, `Postpaid`, `Serverless`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid. For more information, see [Overview](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/what-is-serverless?spm=a2c63.p38356.0.0.772a28cfTAGqIv).
	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 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).
	// - To create a serverless instance, please pass the following values:
	// - MySQL basic: mysql.n2.serverless.1c
	// - MySQL high availability: mysql.n2.serverless.2c
	// - SQLServer high availability: mssql.mem2.serverless.s2
	// - PostgreSQL basic: pg.n2.serverless.1c
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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, 10, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntOutput `pulumi:"monitoringPeriod"`
	// The globally unique identifier (GUID) of the secondary instance. You can call the DescribeDBInstanceHAConfig operation to query the GUID of the secondary instance.
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
	// 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) . See `parameters` below.
	Parameters InstanceParameterArrayOutput `pulumi:"parameters"`
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs InstancePgHbaConfArrayOutput `pulumi:"pgHbaConfs"`
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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"`
	// The Alibaba Cloud Resource Name (ARN) of the RAM role.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `securityGroupId` has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// , Available since 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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for Serverless instance. See `serverlessConfig` below.
	ServerlessConfigs InstanceServerlessConfigArrayOutput `pulumi:"serverlessConfigs"`
	// 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).
	//
	// > **NOTE:** The attribute `sslAction` will be ignored when setting `instanceChargeType = "Serverless"` for SQLServer, PostgreSQL or MariaDB.
	SslAction pulumi.StringOutput `pulumi:"sslAction"`
	// The internal or public endpoint for which the server certificate needs to be created or updated.
	SslConnectionString pulumi.StringOutput `pulumi:"sslConnectionString"`
	// Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.
	SslStatus pulumi.StringOutput `pulumi:"sslStatus"`
	// (Available since 1.204.1) The status of db instance.
	Status pulumi.StringOutput `pulumi:"status"`
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrOutput `pulumi:"storageAutoScale"`
	// The threshold in percentage based on which an automatic storage expansion is triggered. If the available storage reaches the threshold, ApsaraDB RDS increases the storage capacity of the instance.
	// Valid values: [10, 20, 30, 40, 50].
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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 `targetMinorVersion` is changed. The time must be in UTC.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// Note: From 1.63.0, the tag key and value are case sensitive. Before that, they are not case sensitive.
	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. 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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringOutput `pulumi:"targetMinorVersion"`
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringOutput `pulumi:"tcpConnectionType"`
	// The TDE(Transparent Data Encryption) status. After TDE is turned on, it cannot be turned off. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).
	TdeStatus pulumi.StringOutput `pulumi:"tdeStatus"`
	// Whether to upgrade a minor version of the kernel. Valid values:
	// - true: upgrade
	// - false: not to upgrade
	//
	// Deprecated: Attribute `upgradeDbInstanceKernelVersion` has been deprecated from 1.198.0 and use `targetMinorVersion` instead.
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrOutput `pulumi:"upgradeDbInstanceKernelVersion"`
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `targetMinorVersion` is changed. 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	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"`
}

## 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

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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The configuration of an ApsaraDB RDS for PostgreSQL instance for which Babelfish is enabled. See `babelfishConfig` below.
	//
	// > **NOTE:** This parameter takes effect only when you create an ApsaraDB RDS for PostgreSQL instance. For more information, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishConfigs InstanceBabelfishConfigArrayInput
	// The TDS port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort 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 RDS edition of the instance. If you want to create a serverless instance, you must use this value. Valid values:
	// * **Basic**: Basic Edition.
	// * **HighAvailability**: High-availability Edition.
	// * **AlwaysOn**: Cluster Edition.
	// * **Finance**: Enterprise Edition.
	// * **cluster**: MySQL Cluster Edition. (Available since 1.202.0)
	// * **serverless_basic**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.200.0)
	// * **serverless_standard**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.204.0)
	// * **serverless_ha**: RDS Serverless High-availability Edition for SQL Server. (Available since 1.204.0)
	//
	// > **NOTE:** `zoneIdSlaveA` and `zoneIdSlaveB` can specify slave zone ids when creating the high-availability or enterprise edition instances. Meanwhile, `vswitchId` needs to pass in the corresponding vswitch id to the slave zone by order (If the `vswitchId` is not specified, the classic network version will be created). For example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "zone-c", `zoneIdSlaveB` = "zone-b", then the `vswitchId` must be "vsw-zone-a,vsw-zone-c,vsw-zone-b". Of course, you can also choose automatic allocation , for example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "Auto",`zoneIdSlaveB` = "Auto", then the `vswitchId` must be "vsw-zone-a,Auto,Auto". The list contains up to 2 slave zone ids , separated by commas.
	Category 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
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	DbInstanceIpArrayName pulumi.StringPtrInput
	// The storage type of the instance. Serverless instance, only `cloudEssd` can be selected. 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
	// Specifies whether table names on the instance are case-sensitive. Valid values: `true`, `false`.
	DbIsIgnoreCase pulumi.BoolPtrInput
	// Parameter template ID. Only MySQL and PostgreSQL support this parameter. If this parameter is not specified, the default parameter template is used. You can also customize a parameter template and use it here.
	DbParamGroupId 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.
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbTimeZone pulumi.StringPtrInput
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `instanceChargeType` is set to `Postpaid` or `Serverless`, supported engine type: `MySQL`, `PostgreSQL`, `MariaDB`, `MSSQL`.
	DeletionProtection pulumi.BoolPtrInput
	// The instance configuration type. Valid values: ["Up", "Down", "TempUpgrade", "Serverless"]
	Direction pulumi.StringPtrInput
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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, MariaDB.
	//
	// > **NOTE:** When the 'engine_version' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	Engine pulumi.StringInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	// - MySQL: [ 5.5、5.6、5.7、8.0 ]
	// - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ]
	// - MariaDB: [ 10.3 ]
	// - Serverless
	// > - MySQL: [ 5.7、8.0 ]
	// > - SQLServer: [ 2016_std_sl、2017_std_sl、2019_std_sl ]
	// > - PostgreSQL: [ 14.0 ]
	// > - MariaDB does not support creating serverless instances.
	EngineVersion pulumi.StringInput
	// Specifies whether to enable forcible switching. Valid values:
	// - Yes
	// - No
	Force 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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringPtrInput
	// Valid values are `Prepaid`, `Postpaid`, `Serverless`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid. For more information, see [Overview](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/what-is-serverless?spm=a2c63.p38356.0.0.772a28cfTAGqIv).
	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 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).
	// - To create a serverless instance, please pass the following values:
	// - MySQL basic: mysql.n2.serverless.1c
	// - MySQL high availability: mysql.n2.serverless.2c
	// - SQLServer high availability: mssql.mem2.serverless.s2
	// - PostgreSQL basic: pg.n2.serverless.1c
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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, 10, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntPtrInput
	// The globally unique identifier (GUID) of the secondary instance. You can call the DescribeDBInstanceHAConfig operation to query the GUID of the secondary instance.
	NodeId 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) . See `parameters` below.
	Parameters InstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs InstancePgHbaConfArrayInput
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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
	// The Alibaba Cloud Resource Name (ARN) of the RAM role.
	RoleArn pulumi.StringPtrInput
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `securityGroupId` has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	SecurityGroupId pulumi.StringPtrInput
	// , Available since 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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for Serverless instance. See `serverlessConfig` below.
	ServerlessConfigs InstanceServerlessConfigArrayInput
	// 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).
	//
	// > **NOTE:** The attribute `sslAction` will be ignored when setting `instanceChargeType = "Serverless"` for SQLServer, PostgreSQL or MariaDB.
	SslAction pulumi.StringPtrInput
	// The internal or public endpoint for which the server certificate needs to be created or updated.
	SslConnectionString pulumi.StringPtrInput
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrInput
	// The threshold in percentage based on which an automatic storage expansion is triggered. If the available storage reaches the threshold, ApsaraDB RDS increases the storage capacity of the instance.
	// Valid values: [10, 20, 30, 40, 50].
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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 `targetMinorVersion` is changed. The time must be in UTC.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// Note: From 1.63.0, the tag key and value are case sensitive. Before that, they are not case sensitive.
	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. 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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringPtrInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringPtrInput
	// The TDE(Transparent Data Encryption) status. After TDE is turned on, it cannot be turned off. 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
	//
	// Deprecated: Attribute `upgradeDbInstanceKernelVersion` has been deprecated from 1.198.0 and use `targetMinorVersion` instead.
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `targetMinorVersion` is changed. 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	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 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 InstanceBabelfishConfig added in v3.24.0

type InstanceBabelfishConfig struct {
	// specifies whether to enable the Babelfish for the instance. If you set this parameter to **true**, you enable Babelfish for the instance. If you leave this parameter empty, you disable Babelfish for the instance.
	BabelfishEnabled string `pulumi:"babelfishEnabled"`
	// The password of the administrator account. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. It must be 8 to 32 characters in length. The password can contain any of the following characters:! @ # $ % ^ & * () _ + - =
	MasterUserPassword string `pulumi:"masterUserPassword"`
	// The name of the administrator account. The name can contain lowercase letters, digits, and underscores (_). It must start with a letter and end with a letter or digit. It can be up to 63 characters in length and cannot start with pg.
	MasterUsername string `pulumi:"masterUsername"`
	// The migration mode of the instance. Valid values: **single-db** and **multi-db**.
	MigrationMode string `pulumi:"migrationMode"`
}

type InstanceBabelfishConfigArgs added in v3.24.0

type InstanceBabelfishConfigArgs struct {
	// specifies whether to enable the Babelfish for the instance. If you set this parameter to **true**, you enable Babelfish for the instance. If you leave this parameter empty, you disable Babelfish for the instance.
	BabelfishEnabled pulumi.StringInput `pulumi:"babelfishEnabled"`
	// The password of the administrator account. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. It must be 8 to 32 characters in length. The password can contain any of the following characters:! @ # $ % ^ & * () _ + - =
	MasterUserPassword pulumi.StringInput `pulumi:"masterUserPassword"`
	// The name of the administrator account. The name can contain lowercase letters, digits, and underscores (_). It must start with a letter and end with a letter or digit. It can be up to 63 characters in length and cannot start with pg.
	MasterUsername pulumi.StringInput `pulumi:"masterUsername"`
	// The migration mode of the instance. Valid values: **single-db** and **multi-db**.
	MigrationMode pulumi.StringInput `pulumi:"migrationMode"`
}

func (InstanceBabelfishConfigArgs) ElementType added in v3.24.0

func (InstanceBabelfishConfigArgs) ToInstanceBabelfishConfigOutput added in v3.24.0

func (i InstanceBabelfishConfigArgs) ToInstanceBabelfishConfigOutput() InstanceBabelfishConfigOutput

func (InstanceBabelfishConfigArgs) ToInstanceBabelfishConfigOutputWithContext added in v3.24.0

func (i InstanceBabelfishConfigArgs) ToInstanceBabelfishConfigOutputWithContext(ctx context.Context) InstanceBabelfishConfigOutput

type InstanceBabelfishConfigArray added in v3.24.0

type InstanceBabelfishConfigArray []InstanceBabelfishConfigInput

func (InstanceBabelfishConfigArray) ElementType added in v3.24.0

func (InstanceBabelfishConfigArray) ToInstanceBabelfishConfigArrayOutput added in v3.24.0

func (i InstanceBabelfishConfigArray) ToInstanceBabelfishConfigArrayOutput() InstanceBabelfishConfigArrayOutput

func (InstanceBabelfishConfigArray) ToInstanceBabelfishConfigArrayOutputWithContext added in v3.24.0

func (i InstanceBabelfishConfigArray) ToInstanceBabelfishConfigArrayOutputWithContext(ctx context.Context) InstanceBabelfishConfigArrayOutput

type InstanceBabelfishConfigArrayInput added in v3.24.0

type InstanceBabelfishConfigArrayInput interface {
	pulumi.Input

	ToInstanceBabelfishConfigArrayOutput() InstanceBabelfishConfigArrayOutput
	ToInstanceBabelfishConfigArrayOutputWithContext(context.Context) InstanceBabelfishConfigArrayOutput
}

InstanceBabelfishConfigArrayInput is an input type that accepts InstanceBabelfishConfigArray and InstanceBabelfishConfigArrayOutput values. You can construct a concrete instance of `InstanceBabelfishConfigArrayInput` via:

InstanceBabelfishConfigArray{ InstanceBabelfishConfigArgs{...} }

type InstanceBabelfishConfigArrayOutput added in v3.24.0

type InstanceBabelfishConfigArrayOutput struct{ *pulumi.OutputState }

func (InstanceBabelfishConfigArrayOutput) ElementType added in v3.24.0

func (InstanceBabelfishConfigArrayOutput) Index added in v3.24.0

func (InstanceBabelfishConfigArrayOutput) ToInstanceBabelfishConfigArrayOutput added in v3.24.0

func (o InstanceBabelfishConfigArrayOutput) ToInstanceBabelfishConfigArrayOutput() InstanceBabelfishConfigArrayOutput

func (InstanceBabelfishConfigArrayOutput) ToInstanceBabelfishConfigArrayOutputWithContext added in v3.24.0

func (o InstanceBabelfishConfigArrayOutput) ToInstanceBabelfishConfigArrayOutputWithContext(ctx context.Context) InstanceBabelfishConfigArrayOutput

type InstanceBabelfishConfigInput added in v3.24.0

type InstanceBabelfishConfigInput interface {
	pulumi.Input

	ToInstanceBabelfishConfigOutput() InstanceBabelfishConfigOutput
	ToInstanceBabelfishConfigOutputWithContext(context.Context) InstanceBabelfishConfigOutput
}

InstanceBabelfishConfigInput is an input type that accepts InstanceBabelfishConfigArgs and InstanceBabelfishConfigOutput values. You can construct a concrete instance of `InstanceBabelfishConfigInput` via:

InstanceBabelfishConfigArgs{...}

type InstanceBabelfishConfigOutput added in v3.24.0

type InstanceBabelfishConfigOutput struct{ *pulumi.OutputState }

func (InstanceBabelfishConfigOutput) BabelfishEnabled added in v3.24.0

func (o InstanceBabelfishConfigOutput) BabelfishEnabled() pulumi.StringOutput

specifies whether to enable the Babelfish for the instance. If you set this parameter to **true**, you enable Babelfish for the instance. If you leave this parameter empty, you disable Babelfish for the instance.

func (InstanceBabelfishConfigOutput) ElementType added in v3.24.0

func (InstanceBabelfishConfigOutput) MasterUserPassword added in v3.24.0

func (o InstanceBabelfishConfigOutput) MasterUserPassword() pulumi.StringOutput

The password of the administrator account. The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. It must be 8 to 32 characters in length. The password can contain any of the following characters:! @ # $ % ^ & * () _ + - =

func (InstanceBabelfishConfigOutput) MasterUsername added in v3.24.0

The name of the administrator account. The name can contain lowercase letters, digits, and underscores (_). It must start with a letter and end with a letter or digit. It can be up to 63 characters in length and cannot start with pg.

func (InstanceBabelfishConfigOutput) MigrationMode added in v3.24.0

The migration mode of the instance. Valid values: **single-db** and **multi-db**.

func (InstanceBabelfishConfigOutput) ToInstanceBabelfishConfigOutput added in v3.24.0

func (o InstanceBabelfishConfigOutput) ToInstanceBabelfishConfigOutput() InstanceBabelfishConfigOutput

func (InstanceBabelfishConfigOutput) ToInstanceBabelfishConfigOutputWithContext added in v3.24.0

func (o InstanceBabelfishConfigOutput) ToInstanceBabelfishConfigOutputWithContext(ctx context.Context) InstanceBabelfishConfigOutput

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) Acl added in v3.27.0

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)

func (InstanceOutput) AutoRenew added in v3.27.0

func (o InstanceOutput) AutoRenew() pulumi.BoolPtrOutput

Whether to renewal a DB instance automatically or not. It is valid when instanceChargeType is `PrePaid`. Default to `false`.

func (InstanceOutput) AutoRenewPeriod added in v3.27.0

func (o InstanceOutput) AutoRenewPeriod() pulumi.IntPtrOutput

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.

func (InstanceOutput) AutoUpgradeMinorVersion added in v3.27.0

func (o InstanceOutput) AutoUpgradeMinorVersion() pulumi.StringOutput

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.

See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).

func (InstanceOutput) BabelfishConfigs added in v3.27.0

The configuration of an ApsaraDB RDS for PostgreSQL instance for which Babelfish is enabled. See `babelfishConfig` below.

> **NOTE:** This parameter takes effect only when you create an ApsaraDB RDS for PostgreSQL instance. For more information, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).

func (InstanceOutput) BabelfishPort added in v3.27.0

func (o InstanceOutput) BabelfishPort() pulumi.StringOutput

The TDS port of the instance for which Babelfish is enabled.

> **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).

func (InstanceOutput) CaType added in v3.27.0

func (o InstanceOutput) CaType() pulumi.StringOutput

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

func (InstanceOutput) Category added in v3.29.0

func (o InstanceOutput) Category() pulumi.StringOutput

The RDS edition of the instance. If you want to create a serverless instance, you must use this value. Valid values: * **Basic**: Basic Edition. * **HighAvailability**: High-availability Edition. * **AlwaysOn**: Cluster Edition. * **Finance**: Enterprise Edition. * **cluster**: MySQL Cluster Edition. (Available since 1.202.0) * **serverless_basic**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.200.0) * **serverless_standard**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.204.0) * **serverless_ha**: RDS Serverless High-availability Edition for SQL Server. (Available since 1.204.0)

> **NOTE:** `zoneIdSlaveA` and `zoneIdSlaveB` can specify slave zone ids when creating the high-availability or enterprise edition instances. Meanwhile, `vswitchId` needs to pass in the corresponding vswitch id to the slave zone by order (If the `vswitchId` is not specified, the classic network version will be created). For example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "zone-c", `zoneIdSlaveB` = "zone-b", then the `vswitchId` must be "vsw-zone-a,vsw-zone-c,vsw-zone-b". Of course, you can also choose automatic allocation , for example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "Auto",`zoneIdSlaveB` = "Auto", then the `vswitchId` must be "vsw-zone-a,Auto,Auto". The list contains up to 2 slave zone ids , separated by commas.

func (InstanceOutput) ClientCaCert added in v3.27.0

func (o InstanceOutput) ClientCaCert() pulumi.StringPtrOutput

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.

func (InstanceOutput) ClientCaEnabled added in v3.27.0

func (o InstanceOutput) ClientCaEnabled() pulumi.IntPtrOutput

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

func (InstanceOutput) ClientCertRevocationList added in v3.27.0

func (o InstanceOutput) ClientCertRevocationList() pulumi.StringPtrOutput

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.

func (InstanceOutput) ClientCrlEnabled added in v3.27.0

func (o InstanceOutput) ClientCrlEnabled() pulumi.IntPtrOutput

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

func (InstanceOutput) ConnectionString added in v3.27.0

func (o InstanceOutput) ConnectionString() pulumi.StringOutput

RDS database connection string.

func (InstanceOutput) ConnectionStringPrefix added in v3.27.0

func (o InstanceOutput) ConnectionStringPrefix() pulumi.StringOutput

The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix. > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?

func (InstanceOutput) CreateTime added in v3.37.0

func (o InstanceOutput) CreateTime() pulumi.StringOutput

(Available since 1.204.1) The creation time of db instance.

func (InstanceOutput) DbInstanceIpArrayAttribute added in v3.27.0

func (o InstanceOutput) DbInstanceIpArrayAttribute() pulumi.StringPtrOutput

The attribute of the IP address whitelist. By default, this parameter is empty.

> **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).

func (InstanceOutput) DbInstanceIpArrayName added in v3.27.0

func (o InstanceOutput) DbInstanceIpArrayName() pulumi.StringPtrOutput

The name of the IP address whitelist. Default value: Default.

> **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.

func (InstanceOutput) DbInstanceStorageType added in v3.27.0

func (o InstanceOutput) DbInstanceStorageType() pulumi.StringOutput

The storage type of the instance. Serverless instance, only `cloudEssd` can be selected. 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).

func (InstanceOutput) DbInstanceType added in v3.30.0

func (o InstanceOutput) DbInstanceType() pulumi.StringOutput

(Available since 1.197.0) The type of db instance.

func (InstanceOutput) DbIsIgnoreCase added in v3.27.0

func (o InstanceOutput) DbIsIgnoreCase() pulumi.BoolOutput

Specifies whether table names on the instance are case-sensitive. Valid values: `true`, `false`.

func (InstanceOutput) DbParamGroupId added in v3.54.0

func (o InstanceOutput) DbParamGroupId() pulumi.StringPtrOutput

Parameter template ID. Only MySQL and PostgreSQL support this parameter. If this parameter is not specified, the default parameter template is used. You can also customize a parameter template and use it here.

func (InstanceOutput) DbTimeZone added in v3.27.0

func (o InstanceOutput) DbTimeZone() pulumi.StringOutput

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.

> **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.

func (InstanceOutput) DeletionProtection added in v3.27.0

func (o InstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

The switch of delete protection. Valid values: - true: delete protect. - false: no delete protect.

> **NOTE:** `deletionProtection` is valid only when attribute `instanceChargeType` is set to `Postpaid` or `Serverless`, supported engine type: `MySQL`, `PostgreSQL`, `MariaDB`, `MSSQL`.

func (InstanceOutput) Direction added in v3.43.1

func (o InstanceOutput) Direction() pulumi.StringPtrOutput

The instance configuration type. Valid values: ["Up", "Down", "TempUpgrade", "Serverless"]

func (InstanceOutput) EffectiveTime added in v3.29.0

func (o InstanceOutput) EffectiveTime() pulumi.StringPtrOutput

The method to update the engine version and change. Default value: Immediate. Valid values: - Immediate: The change immediately takes effect. - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) EncryptionKey added in v3.27.0

func (o InstanceOutput) EncryptionKey() pulumi.StringPtrOutput

The key id of the KMS. Used for encrypting a disk if not null. Only for PostgreSQL, MySQL and SQLServer.

func (InstanceOutput) Engine added in v3.27.0

func (o InstanceOutput) Engine() pulumi.StringOutput

Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.

> **NOTE:** When the 'engine_version' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.

func (InstanceOutput) EngineVersion added in v3.27.0

func (o InstanceOutput) EngineVersion() pulumi.StringOutput

Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`. - MySQL: [ 5.5、5.6、5.7、8.0 ] - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ] - MariaDB: [ 10.3 ] - Serverless > - MySQL: [ 5.7、8.0 ] > - SQLServer: [ 2016_std_sl、2017_std_sl、2019_std_sl ] > - PostgreSQL: [ 14.0 ] > - MariaDB does not support creating serverless instances.

func (InstanceOutput) Force added in v3.45.1

Specifies whether to enable forcible switching. Valid values: - Yes - No

func (InstanceOutput) ForceRestart added in v3.27.0

func (o InstanceOutput) ForceRestart() pulumi.BoolPtrOutput

Set it to true to make some parameter efficient when modifying them. Default to false.

func (InstanceOutput) FreshWhiteListReadins added in v3.27.0

func (o InstanceOutput) FreshWhiteListReadins() pulumi.StringPtrOutput

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.

func (InstanceOutput) HaConfig added in v3.27.0

func (o InstanceOutput) HaConfig() pulumi.StringOutput

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.

> **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.

func (InstanceOutput) InstanceChargeType added in v3.27.0

func (o InstanceOutput) InstanceChargeType() pulumi.StringPtrOutput

Valid values are `Prepaid`, `Postpaid`, `Serverless`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid. For more information, see [Overview](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/what-is-serverless?spm=a2c63.p38356.0.0.772a28cfTAGqIv).

func (InstanceOutput) InstanceName added in v3.27.0

func (o InstanceOutput) InstanceName() pulumi.StringPtrOutput

The name of DB instance. It a string of 2 to 256 characters.

func (InstanceOutput) InstanceStorage added in v3.27.0

func (o InstanceOutput) InstanceStorage() pulumi.IntOutput

User-defined DB instance storage space. Value range:

  • [5, 2000] for MySQL/PostgreSQL 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`.

func (InstanceOutput) InstanceType added in v3.27.0

func (o InstanceOutput) InstanceType() pulumi.StringOutput

DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm). - To create a serverless instance, please pass the following values: - MySQL basic: mysql.n2.serverless.1c - MySQL high availability: mysql.n2.serverless.2c - SQLServer high availability: mssql.mem2.serverless.s2 - PostgreSQL basic: pg.n2.serverless.1c

> **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.

func (InstanceOutput) MaintainTime added in v3.27.0

func (o InstanceOutput) MaintainTime() pulumi.StringOutput

Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)

func (InstanceOutput) ManualHaTime added in v3.27.0

func (o InstanceOutput) ManualHaTime() pulumi.StringPtrOutput

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.

> **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.

func (InstanceOutput) ModifyMode added in v3.27.0

func (o InstanceOutput) ModifyMode() pulumi.StringPtrOutput

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.

func (InstanceOutput) MonitoringPeriod added in v3.27.0

func (o InstanceOutput) MonitoringPeriod() pulumi.IntOutput

The monitoring frequency in seconds. Valid values are 5, 10, 60, 300. Defaults to 300.

func (InstanceOutput) NodeId added in v3.45.1

func (o InstanceOutput) NodeId() pulumi.StringOutput

The globally unique identifier (GUID) of the secondary instance. You can call the DescribeDBInstanceHAConfig operation to query the GUID of the secondary instance.

func (InstanceOutput) Parameters added in v3.27.0

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) . See `parameters` below.

func (InstanceOutput) Period added in v3.27.0

func (o InstanceOutput) Period() pulumi.IntPtrOutput

The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.

func (InstanceOutput) PgHbaConfs added in v3.27.0

The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.

func (InstanceOutput) Port added in v3.27.0

The private port of the database service. If you want to update public port, please use resource rds.Connection port.

func (InstanceOutput) PrivateIpAddress added in v3.27.0

func (o InstanceOutput) PrivateIpAddress() pulumi.StringOutput

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.

func (InstanceOutput) ReleasedKeepPolicy added in v3.27.0

func (o InstanceOutput) ReleasedKeepPolicy() pulumi.StringPtrOutput

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.

> **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.

func (InstanceOutput) ReplicationAcl added in v3.27.0

func (o InstanceOutput) ReplicationAcl() pulumi.StringOutput

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)

func (InstanceOutput) ResourceGroupId added in v3.27.0

func (o InstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of resource group which the DB instance belongs.

func (InstanceOutput) RoleArn added in v3.42.0

func (o InstanceOutput) RoleArn() pulumi.StringOutput

The Alibaba Cloud Resource Name (ARN) of the RAM role.

func (InstanceOutput) SecurityGroupId deprecated added in v3.27.0

func (o InstanceOutput) SecurityGroupId() pulumi.StringOutput

It has been deprecated from 1.69.0 and use `securityGroupIds` instead.

Deprecated: Attribute `securityGroupId` has been deprecated from 1.69.0 and use `securityGroupIds` instead.

func (InstanceOutput) SecurityGroupIds added in v3.27.0

func (o InstanceOutput) SecurityGroupIds() pulumi.StringArrayOutput

, Available since 1.69.0) The list IDs to join ECS Security Group. At most supports three security groups.

func (InstanceOutput) SecurityIpMode added in v3.27.0

func (o InstanceOutput) SecurityIpMode() pulumi.StringPtrOutput

Valid values are `normal`, `safety`, Default to `normal`. support `safety` switch to high security access mode.

func (InstanceOutput) SecurityIpType added in v3.27.0

func (o InstanceOutput) SecurityIpType() pulumi.StringPtrOutput

The type of IP address in the IP address whitelist.

func (InstanceOutput) SecurityIps added in v3.27.0

func (o InstanceOutput) SecurityIps() pulumi.StringArrayOutput

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]).

func (InstanceOutput) ServerCert added in v3.27.0

func (o InstanceOutput) ServerCert() pulumi.StringOutput

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.

func (InstanceOutput) ServerKey added in v3.27.0

func (o InstanceOutput) ServerKey() pulumi.StringOutput

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.

func (InstanceOutput) ServerlessConfigs added in v3.33.0

The settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for Serverless instance. See `serverlessConfig` below.

func (InstanceOutput) SqlCollectorConfigValue added in v3.27.0

func (o InstanceOutput) SqlCollectorConfigValue() pulumi.IntPtrOutput

The sql collector keep time of the instance. Valid values are `30`, `180`, `365`, `1095`, `1825`, Default to `30`.

func (InstanceOutput) SqlCollectorStatus added in v3.27.0

func (o InstanceOutput) SqlCollectorStatus() pulumi.StringOutput

The sql collector status of the instance. Valid values are `Enabled`, `Disabled`, Default to `Disabled`.

func (InstanceOutput) SslAction added in v3.27.0

func (o InstanceOutput) SslAction() pulumi.StringOutput

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).

> **NOTE:** The attribute `sslAction` will be ignored when setting `instanceChargeType = "Serverless"` for SQLServer, PostgreSQL or MariaDB.

func (InstanceOutput) SslConnectionString added in v3.31.0

func (o InstanceOutput) SslConnectionString() pulumi.StringOutput

The internal or public endpoint for which the server certificate needs to be created or updated.

func (InstanceOutput) SslStatus added in v3.27.0

func (o InstanceOutput) SslStatus() pulumi.StringOutput

Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.

func (InstanceOutput) Status added in v3.37.0

func (o InstanceOutput) Status() pulumi.StringOutput

(Available since 1.204.1) The status of db instance.

func (InstanceOutput) StorageAutoScale added in v3.27.0

func (o InstanceOutput) StorageAutoScale() pulumi.StringPtrOutput

Automatic storage space expansion switch. Valid values: - Enable - Disable

> **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.

func (InstanceOutput) StorageThreshold added in v3.27.0

func (o InstanceOutput) StorageThreshold() pulumi.IntPtrOutput

The threshold in percentage based on which an automatic storage expansion is triggered. If the available storage reaches the threshold, ApsaraDB RDS increases the storage capacity of the instance. Valid values: [10, 20, 30, 40, 50].

> **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.

func (InstanceOutput) StorageUpperBound added in v3.27.0

func (o InstanceOutput) StorageUpperBound() pulumi.IntPtrOutput

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.

> **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.

func (InstanceOutput) SwitchTime added in v3.27.0

func (o InstanceOutput) SwitchTime() pulumi.StringPtrOutput

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 `targetMinorVersion` is changed. The time must be in UTC.

> **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.

func (InstanceOutput) Tags added in v3.27.0

func (o InstanceOutput) Tags() pulumi.MapOutput

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.

Note: From 1.63.0, the tag key and value are case sensitive. Before that, they are not case sensitive.

func (InstanceOutput) TargetMinorVersion added in v3.27.0

func (o InstanceOutput) TargetMinorVersion() pulumi.StringOutput

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. 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.

> **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.

func (InstanceOutput) TcpConnectionType added in v3.27.0

func (o InstanceOutput) TcpConnectionType() pulumi.StringOutput

The availability check method of the instance. Valid values: - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance. - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.

func (InstanceOutput) TdeStatus added in v3.27.0

func (o InstanceOutput) TdeStatus() pulumi.StringOutput

The TDE(Transparent Data Encryption) status. After TDE is turned on, it cannot be turned off. See more [engine and engineVersion limitation](https://www.alibabacloud.com/help/zh/doc-detail/26256.htm).

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) UpgradeDbInstanceKernelVersion deprecated added in v3.27.0

func (o InstanceOutput) UpgradeDbInstanceKernelVersion() pulumi.BoolPtrOutput

Whether to upgrade a minor version of the kernel. Valid values: - true: upgrade - false: not to upgrade

Deprecated: Attribute `upgradeDbInstanceKernelVersion` has been deprecated from 1.198.0 and use `targetMinorVersion` instead.

func (InstanceOutput) UpgradeTime added in v3.27.0

func (o InstanceOutput) UpgradeTime() pulumi.StringPtrOutput

The method to update the minor engine version. Default value: Immediate. It is valid only when `targetMinorVersion` is changed. 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.

func (InstanceOutput) VpcId added in v3.29.0

The VPC ID of the instance.

> **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).

func (InstanceOutput) VswitchId added in v3.27.0

func (o InstanceOutput) VswitchId() pulumi.StringPtrOutput

The virtual switch ID to launch DB instances in one VPC. If there are multiple vswitches, separate them with commas.

func (InstanceOutput) WhitelistNetworkType added in v3.27.0

func (o InstanceOutput) WhitelistNetworkType() pulumi.StringPtrOutput

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

> **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.

func (InstanceOutput) ZoneId added in v3.27.0

func (o InstanceOutput) ZoneId() pulumi.StringOutput

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`.

func (InstanceOutput) ZoneIdSlaveA added in v3.27.0

func (o InstanceOutput) ZoneIdSlaveA() pulumi.StringOutput

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.

type InstanceParameter

type InstanceParameter struct {
	// The parameter name.
	Name string `pulumi:"name"`
	// The parameter value.
	Value string `pulumi:"value"`
}

type InstanceParameterArgs

type InstanceParameterArgs struct {
	// The parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The parameter value.
	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

The parameter name.

func (InstanceParameterOutput) ToInstanceParameterOutput

func (o InstanceParameterOutput) ToInstanceParameterOutput() InstanceParameterOutput

func (InstanceParameterOutput) ToInstanceParameterOutputWithContext

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

func (InstanceParameterOutput) Value

The parameter value.

type InstancePgHbaConf added in v3.18.0

type InstancePgHbaConf struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address string `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database string `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask *string `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method string `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option *string `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId int `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type string `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User string `pulumi:"user"`
}

type InstancePgHbaConfArgs added in v3.18.0

type InstancePgHbaConfArgs struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address pulumi.StringInput `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database pulumi.StringInput `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask pulumi.StringPtrInput `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method pulumi.StringInput `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option pulumi.StringPtrInput `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId pulumi.IntInput `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type pulumi.StringInput `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User pulumi.StringInput `pulumi:"user"`
}

func (InstancePgHbaConfArgs) ElementType added in v3.18.0

func (InstancePgHbaConfArgs) ElementType() reflect.Type

func (InstancePgHbaConfArgs) ToInstancePgHbaConfOutput added in v3.18.0

func (i InstancePgHbaConfArgs) ToInstancePgHbaConfOutput() InstancePgHbaConfOutput

func (InstancePgHbaConfArgs) ToInstancePgHbaConfOutputWithContext added in v3.18.0

func (i InstancePgHbaConfArgs) ToInstancePgHbaConfOutputWithContext(ctx context.Context) InstancePgHbaConfOutput

type InstancePgHbaConfArray added in v3.18.0

type InstancePgHbaConfArray []InstancePgHbaConfInput

func (InstancePgHbaConfArray) ElementType added in v3.18.0

func (InstancePgHbaConfArray) ElementType() reflect.Type

func (InstancePgHbaConfArray) ToInstancePgHbaConfArrayOutput added in v3.18.0

func (i InstancePgHbaConfArray) ToInstancePgHbaConfArrayOutput() InstancePgHbaConfArrayOutput

func (InstancePgHbaConfArray) ToInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (i InstancePgHbaConfArray) ToInstancePgHbaConfArrayOutputWithContext(ctx context.Context) InstancePgHbaConfArrayOutput

type InstancePgHbaConfArrayInput added in v3.18.0

type InstancePgHbaConfArrayInput interface {
	pulumi.Input

	ToInstancePgHbaConfArrayOutput() InstancePgHbaConfArrayOutput
	ToInstancePgHbaConfArrayOutputWithContext(context.Context) InstancePgHbaConfArrayOutput
}

InstancePgHbaConfArrayInput is an input type that accepts InstancePgHbaConfArray and InstancePgHbaConfArrayOutput values. You can construct a concrete instance of `InstancePgHbaConfArrayInput` via:

InstancePgHbaConfArray{ InstancePgHbaConfArgs{...} }

type InstancePgHbaConfArrayOutput added in v3.18.0

type InstancePgHbaConfArrayOutput struct{ *pulumi.OutputState }

func (InstancePgHbaConfArrayOutput) ElementType added in v3.18.0

func (InstancePgHbaConfArrayOutput) Index added in v3.18.0

func (InstancePgHbaConfArrayOutput) ToInstancePgHbaConfArrayOutput added in v3.18.0

func (o InstancePgHbaConfArrayOutput) ToInstancePgHbaConfArrayOutput() InstancePgHbaConfArrayOutput

func (InstancePgHbaConfArrayOutput) ToInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (o InstancePgHbaConfArrayOutput) ToInstancePgHbaConfArrayOutputWithContext(ctx context.Context) InstancePgHbaConfArrayOutput

type InstancePgHbaConfInput added in v3.18.0

type InstancePgHbaConfInput interface {
	pulumi.Input

	ToInstancePgHbaConfOutput() InstancePgHbaConfOutput
	ToInstancePgHbaConfOutputWithContext(context.Context) InstancePgHbaConfOutput
}

InstancePgHbaConfInput is an input type that accepts InstancePgHbaConfArgs and InstancePgHbaConfOutput values. You can construct a concrete instance of `InstancePgHbaConfInput` via:

InstancePgHbaConfArgs{...}

type InstancePgHbaConfOutput added in v3.18.0

type InstancePgHbaConfOutput struct{ *pulumi.OutputState }

func (InstancePgHbaConfOutput) Address added in v3.18.0

The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.

func (InstancePgHbaConfOutput) Database added in v3.18.0

The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).

func (InstancePgHbaConfOutput) ElementType added in v3.18.0

func (InstancePgHbaConfOutput) ElementType() reflect.Type

func (InstancePgHbaConfOutput) Mask added in v3.18.0

The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.

func (InstancePgHbaConfOutput) Method added in v3.18.0

The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.

func (InstancePgHbaConfOutput) Option added in v3.18.0

Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).

func (InstancePgHbaConfOutput) PriorityId added in v3.18.0

func (o InstancePgHbaConfOutput) PriorityId() pulumi.IntOutput

The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.

func (InstancePgHbaConfOutput) ToInstancePgHbaConfOutput added in v3.18.0

func (o InstancePgHbaConfOutput) ToInstancePgHbaConfOutput() InstancePgHbaConfOutput

func (InstancePgHbaConfOutput) ToInstancePgHbaConfOutputWithContext added in v3.18.0

func (o InstancePgHbaConfOutput) ToInstancePgHbaConfOutputWithContext(ctx context.Context) InstancePgHbaConfOutput

func (InstancePgHbaConfOutput) Type added in v3.18.0

The type of connection to the instance. Valid values: * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections. * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections. * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.

> **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).

func (InstancePgHbaConfOutput) User added in v3.18.0

The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).

type InstanceServerlessConfig added in v3.33.0

type InstanceServerlessConfig struct {
	AutoPause *bool `pulumi:"autoPause"`
	// The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values:
	// - MySQL: 1~8
	// - SQLServer: 2~8
	// - PostgreSQL: 1~12
	MaxCapacity float64 `pulumi:"maxCapacity"`
	// The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values:
	// - MySQL: 0.5~8
	// - SQLServer: 2~8 \(Supports integers only\).
	// - PostgreSQL: 0.5~12
	MinCapacity float64 `pulumi:"minCapacity"`
	// Specifies whether to enable the forced scaling feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation.
	// > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.
	SwitchForce *bool `pulumi:"switchForce"`
}

type InstanceServerlessConfigArgs added in v3.33.0

type InstanceServerlessConfigArgs struct {
	AutoPause pulumi.BoolPtrInput `pulumi:"autoPause"`
	// The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values:
	// - MySQL: 1~8
	// - SQLServer: 2~8
	// - PostgreSQL: 1~12
	MaxCapacity pulumi.Float64Input `pulumi:"maxCapacity"`
	// The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values:
	// - MySQL: 0.5~8
	// - SQLServer: 2~8 \(Supports integers only\).
	// - PostgreSQL: 0.5~12
	MinCapacity pulumi.Float64Input `pulumi:"minCapacity"`
	// Specifies whether to enable the forced scaling feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation.
	// > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.
	SwitchForce pulumi.BoolPtrInput `pulumi:"switchForce"`
}

func (InstanceServerlessConfigArgs) ElementType added in v3.33.0

func (InstanceServerlessConfigArgs) ToInstanceServerlessConfigOutput added in v3.33.0

func (i InstanceServerlessConfigArgs) ToInstanceServerlessConfigOutput() InstanceServerlessConfigOutput

func (InstanceServerlessConfigArgs) ToInstanceServerlessConfigOutputWithContext added in v3.33.0

func (i InstanceServerlessConfigArgs) ToInstanceServerlessConfigOutputWithContext(ctx context.Context) InstanceServerlessConfigOutput

type InstanceServerlessConfigArray added in v3.33.0

type InstanceServerlessConfigArray []InstanceServerlessConfigInput

func (InstanceServerlessConfigArray) ElementType added in v3.33.0

func (InstanceServerlessConfigArray) ToInstanceServerlessConfigArrayOutput added in v3.33.0

func (i InstanceServerlessConfigArray) ToInstanceServerlessConfigArrayOutput() InstanceServerlessConfigArrayOutput

func (InstanceServerlessConfigArray) ToInstanceServerlessConfigArrayOutputWithContext added in v3.33.0

func (i InstanceServerlessConfigArray) ToInstanceServerlessConfigArrayOutputWithContext(ctx context.Context) InstanceServerlessConfigArrayOutput

type InstanceServerlessConfigArrayInput added in v3.33.0

type InstanceServerlessConfigArrayInput interface {
	pulumi.Input

	ToInstanceServerlessConfigArrayOutput() InstanceServerlessConfigArrayOutput
	ToInstanceServerlessConfigArrayOutputWithContext(context.Context) InstanceServerlessConfigArrayOutput
}

InstanceServerlessConfigArrayInput is an input type that accepts InstanceServerlessConfigArray and InstanceServerlessConfigArrayOutput values. You can construct a concrete instance of `InstanceServerlessConfigArrayInput` via:

InstanceServerlessConfigArray{ InstanceServerlessConfigArgs{...} }

type InstanceServerlessConfigArrayOutput added in v3.33.0

type InstanceServerlessConfigArrayOutput struct{ *pulumi.OutputState }

func (InstanceServerlessConfigArrayOutput) ElementType added in v3.33.0

func (InstanceServerlessConfigArrayOutput) Index added in v3.33.0

func (InstanceServerlessConfigArrayOutput) ToInstanceServerlessConfigArrayOutput added in v3.33.0

func (o InstanceServerlessConfigArrayOutput) ToInstanceServerlessConfigArrayOutput() InstanceServerlessConfigArrayOutput

func (InstanceServerlessConfigArrayOutput) ToInstanceServerlessConfigArrayOutputWithContext added in v3.33.0

func (o InstanceServerlessConfigArrayOutput) ToInstanceServerlessConfigArrayOutputWithContext(ctx context.Context) InstanceServerlessConfigArrayOutput

type InstanceServerlessConfigInput added in v3.33.0

type InstanceServerlessConfigInput interface {
	pulumi.Input

	ToInstanceServerlessConfigOutput() InstanceServerlessConfigOutput
	ToInstanceServerlessConfigOutputWithContext(context.Context) InstanceServerlessConfigOutput
}

InstanceServerlessConfigInput is an input type that accepts InstanceServerlessConfigArgs and InstanceServerlessConfigOutput values. You can construct a concrete instance of `InstanceServerlessConfigInput` via:

InstanceServerlessConfigArgs{...}

type InstanceServerlessConfigOutput added in v3.33.0

type InstanceServerlessConfigOutput struct{ *pulumi.OutputState }

func (InstanceServerlessConfigOutput) AutoPause added in v3.33.0

func (InstanceServerlessConfigOutput) ElementType added in v3.33.0

func (InstanceServerlessConfigOutput) MaxCapacity added in v3.33.0

The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values: - MySQL: 1~8 - SQLServer: 2~8 - PostgreSQL: 1~12

func (InstanceServerlessConfigOutput) MinCapacity added in v3.33.0

The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values: - MySQL: 0.5~8 - SQLServer: 2~8 \(Supports integers only\). - PostgreSQL: 0.5~12

func (InstanceServerlessConfigOutput) SwitchForce added in v3.33.0

Specifies whether to enable the forced scaling feature for the serverless instance. Valid values: - true: enables the feature. - false: disables the feature. This is the default value. > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation. > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.

func (InstanceServerlessConfigOutput) ToInstanceServerlessConfigOutput added in v3.33.0

func (o InstanceServerlessConfigOutput) ToInstanceServerlessConfigOutput() InstanceServerlessConfigOutput

func (InstanceServerlessConfigOutput) ToInstanceServerlessConfigOutputWithContext added in v3.33.0

func (o InstanceServerlessConfigOutput) ToInstanceServerlessConfigOutputWithContext(ctx context.Context) InstanceServerlessConfigOutput

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.
	//
	// See more [details and limitation](https://www.alibabacloud.com/help/doc-detail/123605.htm).
	AutoUpgradeMinorVersion pulumi.StringPtrInput
	// The configuration of an ApsaraDB RDS for PostgreSQL instance for which Babelfish is enabled. See `babelfishConfig` below.
	//
	// > **NOTE:** This parameter takes effect only when you create an ApsaraDB RDS for PostgreSQL instance. For more information, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishConfigs InstanceBabelfishConfigArrayInput
	// The TDS port of the instance for which Babelfish is enabled.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for PostgreSQL instances. For more information about Babelfish for ApsaraDB RDS for PostgreSQL, see [Introduction to Babelfish](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/babelfish-for-pg).
	BabelfishPort 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 RDS edition of the instance. If you want to create a serverless instance, you must use this value. Valid values:
	// * **Basic**: Basic Edition.
	// * **HighAvailability**: High-availability Edition.
	// * **AlwaysOn**: Cluster Edition.
	// * **Finance**: Enterprise Edition.
	// * **cluster**: MySQL Cluster Edition. (Available since 1.202.0)
	// * **serverless_basic**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.200.0)
	// * **serverless_standard**: RDS Serverless Basic Edition. This edition is available only for instances that run MySQL and PostgreSQL. (Available since 1.204.0)
	// * **serverless_ha**: RDS Serverless High-availability Edition for SQL Server. (Available since 1.204.0)
	//
	// > **NOTE:** `zoneIdSlaveA` and `zoneIdSlaveB` can specify slave zone ids when creating the high-availability or enterprise edition instances. Meanwhile, `vswitchId` needs to pass in the corresponding vswitch id to the slave zone by order (If the `vswitchId` is not specified, the classic network version will be created). For example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "zone-c", `zoneIdSlaveB` = "zone-b", then the `vswitchId` must be "vsw-zone-a,vsw-zone-c,vsw-zone-b". Of course, you can also choose automatic allocation , for example, `zoneId` = "zone-a" and `zoneIdSlaveA` = "Auto",`zoneIdSlaveB` = "Auto", then the `vswitchId` must be "vsw-zone-a,Auto,Auto". The list contains up to 2 slave zone ids , separated by commas.
	Category 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
	// The private connection string prefix. If you want to update public connection string prefix, please use resource rds.Connection connection_prefix.
	// > **NOTE:** The prefix must be 8 to 64 characters in length and can contain letters, digits, and hyphens (-). It cannot contain Chinese characters and special characters ~!#%^&*=+\|{};:'",<>/?
	ConnectionStringPrefix pulumi.StringPtrInput
	// (Available since 1.204.1) The creation time of db instance.
	CreateTime pulumi.StringPtrInput
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	DbInstanceIpArrayName pulumi.StringPtrInput
	// The storage type of the instance. Serverless instance, only `cloudEssd` can be selected. 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
	// (Available since 1.197.0) The type of db instance.
	DbInstanceType pulumi.StringPtrInput
	// Specifies whether table names on the instance are case-sensitive. Valid values: `true`, `false`.
	DbIsIgnoreCase pulumi.BoolPtrInput
	// Parameter template ID. Only MySQL and PostgreSQL support this parameter. If this parameter is not specified, the default parameter template is used. You can also customize a parameter template and use it here.
	DbParamGroupId 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.
	//
	// > **NOTE:** You can specify the time zone when you create a primary instance. You cannot specify the time zone when you create a read-only instance. Read-only instances inherit the time zone of their primary instance. If you do not specify this parameter, the system assigns the default time zone of the region where the instance resides.
	DbTimeZone pulumi.StringPtrInput
	// The switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `instanceChargeType` is set to `Postpaid` or `Serverless`, supported engine type: `MySQL`, `PostgreSQL`, `MariaDB`, `MSSQL`.
	DeletionProtection pulumi.BoolPtrInput
	// The instance configuration type. Valid values: ["Up", "Down", "TempUpgrade", "Serverless"]
	Direction pulumi.StringPtrInput
	// The method to update the engine version and change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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, MariaDB.
	//
	// > **NOTE:** When the 'engine_version' changes, it can be used as the target database version for the large version upgrade of RDS for MySQL instance.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/26228.htm) `EngineVersion`.
	// - MySQL: [ 5.5、5.6、5.7、8.0 ]
	// - SQLServer: [ 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: [ 10.0、11.0、12.0、13.0、14.0、15.0 ]
	// - MariaDB: [ 10.3 ]
	// - Serverless
	// > - MySQL: [ 5.7、8.0 ]
	// > - SQLServer: [ 2016_std_sl、2017_std_sl、2019_std_sl ]
	// > - PostgreSQL: [ 14.0 ]
	// > - MariaDB does not support creating serverless instances.
	EngineVersion pulumi.StringPtrInput
	// Specifies whether to enable forcible switching. Valid values:
	// - Yes
	// - No
	Force 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.
	//
	// > **NOTE:** If you set this parameter to Manual, you must specify the ManualHATime parameter.
	HaConfig pulumi.StringPtrInput
	// Valid values are `Prepaid`, `Postpaid`, `Serverless`, Default to `Postpaid`. Currently, the resource only supports PostPaid to PrePaid. For more information, see [Overview](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/what-is-serverless?spm=a2c63.p38356.0.0.772a28cfTAGqIv).
	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 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).
	// - To create a serverless instance, please pass the following values:
	// - MySQL basic: mysql.n2.serverless.1c
	// - MySQL high availability: mysql.n2.serverless.2c
	// - SQLServer high availability: mssql.mem2.serverless.s2
	// - PostgreSQL basic: pg.n2.serverless.1c
	//
	// > **NOTE:** When `storage_auto_scale="Enable"`, do not perform `instanceStorage` check. when `storage_auto_scale="Disable"`, if the instance itself `instanceStorage`has changed. You need to manually revise the `instanceStorage` in the template value. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	//
	// > **NOTE:** This parameter only takes effect when the HAConfig parameter is set to Manual.
	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, 10, 60, 300. Defaults to 300.
	MonitoringPeriod pulumi.IntPtrInput
	// The globally unique identifier (GUID) of the secondary instance. You can call the DescribeDBInstanceHAConfig operation to query the GUID of the secondary instance.
	NodeId 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) . See `parameters` below.
	Parameters InstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	// > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.
	Period pulumi.IntPtrInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs InstancePgHbaConfArrayInput
	// The private port of the database service. If you want to update public port, please use resource rds.Connection port.
	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.
	//
	// > **NOTE:** This parameter is supported only when the instance runs the MySQL database engine.
	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
	// The Alibaba Cloud Resource Name (ARN) of the RAM role.
	RoleArn pulumi.StringPtrInput
	// It has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	//
	// Deprecated: Attribute `securityGroupId` has been deprecated from 1.69.0 and use `securityGroupIds` instead.
	SecurityGroupId pulumi.StringPtrInput
	// , Available since 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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for Serverless instance. See `serverlessConfig` below.
	ServerlessConfigs InstanceServerlessConfigArrayInput
	// 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).
	//
	// > **NOTE:** The attribute `sslAction` will be ignored when setting `instanceChargeType = "Serverless"` for SQLServer, PostgreSQL or MariaDB.
	SslAction pulumi.StringPtrInput
	// The internal or public endpoint for which the server certificate needs to be created or updated.
	SslConnectionString pulumi.StringPtrInput
	// Status of the SSL feature. `Yes`: SSL is turned on; `No`: SSL is turned off.
	SslStatus pulumi.StringPtrInput
	// (Available since 1.204.1) The status of db instance.
	Status pulumi.StringPtrInput
	// Automatic storage space expansion switch. Valid values:
	// - Enable
	// - Disable
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable.
	StorageAutoScale pulumi.StringPtrInput
	// The threshold in percentage based on which an automatic storage expansion is triggered. If the available storage reaches the threshold, ApsaraDB RDS increases the storage capacity of the instance.
	// Valid values: [10, 20, 30, 40, 50].
	//
	// > **NOTE:** This parameter only takes effect when the StorageAutoScale parameter is set to Enable. The value must be greater than or equal to the total size of the current storage space of the instance.
	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.
	//
	// > **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.
	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 `targetMinorVersion` is changed. The time must be in UTC.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// Note: From 1.63.0, the tag key and value are case sensitive. Before that, they are not case sensitive.
	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. 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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	TargetMinorVersion pulumi.StringPtrInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringPtrInput
	// The TDE(Transparent Data Encryption) status. After TDE is turned on, it cannot be turned off. 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
	//
	// Deprecated: Attribute `upgradeDbInstanceKernelVersion` has been deprecated from 1.198.0 and use `targetMinorVersion` instead.
	UpgradeDbInstanceKernelVersion pulumi.BoolPtrInput
	// The method to update the minor engine version. Default value: Immediate. It is valid only when `targetMinorVersion` is changed. 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 VPC ID of the instance.
	//
	// > **NOTE:** This parameter applies only to ApsaraDB RDS for MySQL instances. For more information about Upgrade the major engine version of an ApsaraDB RDS for MySQL instance, see [Upgrade the major engine version of an RDS instance in the ApsaraDB RDS console](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/upgrade-the-major-engine-version-of-an-apsaradb-rds-for-mysql-instance-1).
	VpcId 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
	//
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	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
}

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"`
	// The attribute has been deprecated from 1.120.0 and using `accountDescription` instead.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringOutput `pulumi:"description"`
	// The attribute has been deprecated from 1.120.0 and using `dbInstanceId` instead.
	//
	// 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"`
	// The attribute has been deprecated from 1.120.0 and using `accountName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// The attribute has been deprecated from 1.120.0 and using `accountPassword` instead.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringOutput `pulumi:"password"`
	// Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
	ResetPermissionFlag pulumi.BoolPtrOutput `pulumi:"resetPermissionFlag"`
	// The status of the resource. Valid values: `Available`, `Unavailable`.
	Status pulumi.StringOutput `pulumi:"status"`
	// The attribute has been deprecated from 1.120.0 and using `accountType` instead.
	//
	// > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
	//
	// 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/apsaradb-for-rds/latest/api-rds-2014-08-15-createaccount).

> **NOTE:** Available since 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-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_example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:        pulumi.StringRef(_default.Ids[0]),
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Ids[0]),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:          pulumi.String("MySQL"),
			EngineVersion:   pulumi.String("5.6"),
			InstanceType:    pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage: pulumi.Int(10),
			VswitchId:       defaultSwitch.ID(),
			InstanceName:    pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsAccount(ctx, "default", &rds.RdsAccountArgs{
			DbInstanceId:    defaultInstance.ID(),
			AccountName:     pulumi.String(name),
			AccountPassword: pulumi.String("Example1234"),
		})
		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

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
	// The attribute has been deprecated from 1.120.0 and using `accountDescription` instead.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// The attribute has been deprecated from 1.120.0 and using `dbInstanceId` instead.
	//
	// 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
	// The attribute has been deprecated from 1.120.0 and using `accountName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// The attribute has been deprecated from 1.120.0 and using `accountPassword` instead.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	// Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
	ResetPermissionFlag pulumi.BoolPtrInput
	// The attribute has been deprecated from 1.120.0 and using `accountType` instead.
	//
	// > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
	//
	// 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) AccountDescription added in v3.27.0

func (o RdsAccountOutput) AccountDescription() pulumi.StringOutput

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.

func (RdsAccountOutput) AccountName added in v3.27.0

func (o RdsAccountOutput) AccountName() pulumi.StringOutput

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.

func (RdsAccountOutput) AccountPassword added in v3.27.0

func (o RdsAccountOutput) AccountPassword() pulumi.StringOutput

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.

func (RdsAccountOutput) AccountType added in v3.27.0

func (o RdsAccountOutput) AccountType() pulumi.StringOutput

Privilege type of account. Default to `Normal`. `Normal`: Common privilege. `Super`: High privilege.

func (RdsAccountOutput) DbInstanceId added in v3.27.0

func (o RdsAccountOutput) DbInstanceId() pulumi.StringOutput

The Id of instance in which account belongs.

func (RdsAccountOutput) Description deprecated added in v3.27.0

func (o RdsAccountOutput) Description() pulumi.StringOutput

The attribute has been deprecated from 1.120.0 and using `accountDescription` instead.

Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.

func (RdsAccountOutput) ElementType

func (RdsAccountOutput) ElementType() reflect.Type

func (RdsAccountOutput) InstanceId deprecated added in v3.27.0

func (o RdsAccountOutput) InstanceId() pulumi.StringOutput

The attribute has been deprecated from 1.120.0 and using `dbInstanceId` instead.

Deprecated: Field 'instance_id' has been deprecated from provider version 1.120.0. New field 'db_instance_id' instead.

func (RdsAccountOutput) KmsEncryptedPassword added in v3.27.0

func (o RdsAccountOutput) KmsEncryptedPassword() pulumi.StringPtrOutput

An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.

func (RdsAccountOutput) KmsEncryptionContext added in v3.27.0

func (o RdsAccountOutput) KmsEncryptionContext() pulumi.MapOutput

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.

func (RdsAccountOutput) Name deprecated added in v3.27.0

The attribute has been deprecated from 1.120.0 and using `accountName` instead.

Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.

func (RdsAccountOutput) Password deprecated added in v3.27.0

func (o RdsAccountOutput) Password() pulumi.StringOutput

The attribute has been deprecated from 1.120.0 and using `accountPassword` instead.

Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.

func (RdsAccountOutput) ResetPermissionFlag added in v3.31.0

func (o RdsAccountOutput) ResetPermissionFlag() pulumi.BoolPtrOutput

Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.

func (RdsAccountOutput) Status added in v3.27.0

The status of the resource. Valid values: `Available`, `Unavailable`.

func (RdsAccountOutput) ToRdsAccountOutput

func (o RdsAccountOutput) ToRdsAccountOutput() RdsAccountOutput

func (RdsAccountOutput) ToRdsAccountOutputWithContext

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

func (RdsAccountOutput) Type deprecated added in v3.27.0

The attribute has been deprecated from 1.120.0 and using `accountType` instead.

> **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.

Deprecated: Field 'type' has been deprecated from provider version 1.120.0. New field 'account_type' instead.

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
	// The attribute has been deprecated from 1.120.0 and using `accountDescription` instead.
	//
	// Deprecated: Field 'description' has been deprecated from provider version 1.120.0. New field 'account_description' instead.
	Description pulumi.StringPtrInput
	// The attribute has been deprecated from 1.120.0 and using `dbInstanceId` instead.
	//
	// 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
	// The attribute has been deprecated from 1.120.0 and using `accountName` instead.
	//
	// Deprecated: Field 'name' has been deprecated from provider version 1.120.0. New field 'account_name' instead.
	Name pulumi.StringPtrInput
	// The attribute has been deprecated from 1.120.0 and using `accountPassword` instead.
	//
	// Deprecated: Field 'password' has been deprecated from provider version 1.120.0. New field 'account_password' instead.
	Password pulumi.StringPtrInput
	// Resets permissions flag of the privileged account. Default to `false`. Set it to `true` can resets permissions of the privileged account.
	ResetPermissionFlag pulumi.BoolPtrInput
	// The status of the resource. Valid values: `Available`, `Unavailable`.
	Status pulumi.StringPtrInput
	// The attribute has been deprecated from 1.120.0 and using `accountType` instead.
	//
	// > **NOTE**: Only MySQL engine is supported resets permissions of the privileged account.
	//
	// 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/en/rds/developer-reference/api-rds-2014-08-15-createbackup).

> **NOTE:** Available since 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.NewInstance(ctx, "example", &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, "example", &rds.RdsBackupArgs{
			DbInstanceId: example.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

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) BackupId added in v3.27.0

func (o RdsBackupOutput) BackupId() pulumi.StringOutput

The backup id.

func (RdsBackupOutput) BackupMethod added in v3.27.0

func (o RdsBackupOutput) BackupMethod() pulumi.StringOutput

The type of backup that you want to perform. Default value: `Physical`. Valid values: `Logical`, `Physical` and `Snapshot`.

func (RdsBackupOutput) BackupStrategy added in v3.27.0

func (o RdsBackupOutput) BackupStrategy() pulumi.StringPtrOutput

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.

func (RdsBackupOutput) BackupType added in v3.27.0

func (o RdsBackupOutput) BackupType() pulumi.StringOutput

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.

func (RdsBackupOutput) DbInstanceId added in v3.27.0

func (o RdsBackupOutput) DbInstanceId() pulumi.StringOutput

The db instance id.

func (RdsBackupOutput) DbName added in v3.27.0

The names of the databases whose data you want to back up. Separate the names of the databases with commas (,).

func (RdsBackupOutput) ElementType added in v3.13.0

func (RdsBackupOutput) ElementType() reflect.Type

func (RdsBackupOutput) RemoveFromState added in v3.27.0

func (o RdsBackupOutput) RemoveFromState() pulumi.BoolPtrOutput

Remove form state when resource cannot be deleted. Valid values: `true` and `false`.

func (RdsBackupOutput) StoreStatus added in v3.27.0

func (o RdsBackupOutput) StoreStatus() pulumi.StringOutput

Indicates whether the data backup file can be deleted. Valid values: `Enabled` and `Disabled`.

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

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.
	//
	// > **NOTE:** You must specify at least one of the BackupId and RestoreTime parameters. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	// * **serverless_basic**: Serverless Basic Edition. (Available in 1.200.0+)
	// * **serverless_standard**: MySQL Serverless High Availability Edition. (Available in 1.207.0+)
	// * **serverless_ha**: SQLServer Serverless High Availability Edition. (Available in 1.207.0+)
	// * **cluster**: MySQL Cluster Edition. (Available in 1.207.0+)
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// 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.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrOutput `pulumi:"encryptionKey"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.
	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**
	// * 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).See `parameters` below.
	Parameters RdsCloneDbInstanceParameterArrayOutput `pulumi:"parameters"`
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription` and `Serverless`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The period. Valid values: `Month`, `Year`.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the period parameter.
	Period pulumi.StringPtrOutput `pulumi:"period"`
	// The details of the AD domain.See `pgHbaConf` below.
	PgHbaConfs RdsCloneDbInstancePgHbaConfArrayOutput `pulumi:"pgHbaConfs"`
	// 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.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for MySQL instance.See `serverlessConfig` below.
	ServerlessConfigs RdsCloneDbInstanceServerlessConfigArrayOutput `pulumi:"serverlessConfigs"`
	// 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
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	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"`
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringOutput `pulumi:"tcpConnectionType"`
	// 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.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the usedTime parameter.
	UsedTime pulumi.IntPtrOutput `pulumi:"usedTime"`
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The ID of the vSwitch associated with the specified VPC. If there are multiple vswitches, separate them with commas. The first vswitch is a primary zone switch and the query only returns that vswitch. If there are multiple vswitches, do not perform `vswitchId` check.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	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/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	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.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneIdSlaveB pulumi.StringOutput `pulumi:"zoneIdSlaveB"`
}

Provides an 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/rds/product-overview/what-is-apsaradb-rds).

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

## Example Usage

### Create an RDS MySQL clone instance

```go package main

import (

"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"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("PostgreSQL"),
			EngineVersion:         pulumi.StringRef("13.0"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
		}, nil)
		if err != nil {
			return err
		}
		exampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(example.Zones[0].Id),
			Engine:                pulumi.StringRef("PostgreSQL"),
			EngineVersion:         pulumi.StringRef("13.0"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
		}, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "example", &vpc.NetworkArgs{
			VpcName:   pulumi.String("terraform-example"),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "example", &vpc.SwitchArgs{
			VpcId:       exampleNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(example.Zones[0].Id),
			VswitchName: pulumi.String("terraform-example"),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "example", &rds.InstanceArgs{
			Engine:             pulumi.String("PostgreSQL"),
			EngineVersion:      pulumi.String("13.0"),
			InstanceType:       pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:    pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType: pulumi.String("Postpaid"),
			InstanceName:       pulumi.String("terraform-example"),
			VswitchId:          exampleSwitch.ID(),
			MonitoringPeriod:   pulumi.Int(60),
		})
		if err != nil {
			return err
		}
		exampleRdsBackup, err := rds.NewRdsBackup(ctx, "example", &rds.RdsBackupArgs{
			DbInstanceId:    exampleInstance.ID(),
			RemoveFromState: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsCloneDbInstance(ctx, "example", &rds.RdsCloneDbInstanceArgs{
			SourceDbInstanceId:    exampleInstance.ID(),
			DbInstanceStorageType: pulumi.String("cloud_essd"),
			PaymentType:           pulumi.String("PayAsYouGo"),
			BackupId:              exampleRdsBackup.BackupId,
		})
		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

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.
	//
	// > **NOTE:** You must specify at least one of the BackupId and RestoreTime parameters. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	// * **serverless_basic**: Serverless Basic Edition. (Available in 1.200.0+)
	// * **serverless_standard**: MySQL Serverless High Availability Edition. (Available in 1.207.0+)
	// * **serverless_ha**: SQLServer Serverless High Availability Edition. (Available in 1.207.0+)
	// * **cluster**: MySQL Cluster Edition. (Available in 1.207.0+)
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.
	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**
	// * 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).See `parameters` below.
	Parameters RdsCloneDbInstanceParameterArrayInput
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription` and `Serverless`.
	PaymentType pulumi.StringInput
	// The period. Valid values: `Month`, `Year`.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the period parameter.
	Period pulumi.StringPtrInput
	// The details of the AD domain.See `pgHbaConf` below.
	PgHbaConfs RdsCloneDbInstancePgHbaConfArrayInput
	// 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.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for MySQL instance.See `serverlessConfig` below.
	ServerlessConfigs RdsCloneDbInstanceServerlessConfigArrayInput
	// 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
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	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
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType 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.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the usedTime parameter.
	UsedTime pulumi.IntPtrInput
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC. If there are multiple vswitches, separate them with commas. The first vswitch is a primary zone switch and the query only returns that vswitch. If there are multiple vswitches, do not perform `vswitchId` check.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	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.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneIdSlaveB 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) Acl added in v3.27.0

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)`.

func (RdsCloneDbInstanceOutput) AutoUpgradeMinorVersion added in v3.27.0

func (o RdsCloneDbInstanceOutput) AutoUpgradeMinorVersion() pulumi.StringOutput

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.

func (RdsCloneDbInstanceOutput) BackupId added in v3.27.0

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.

> **NOTE:** You must specify at least one of the BackupId and RestoreTime parameters. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.

func (RdsCloneDbInstanceOutput) BackupType added in v3.27.0

The type of backup that is used to restore the data of the original instance. Valid values: * **FullBackup**: full backup * **IncrementalBackup**: incremental backup

func (RdsCloneDbInstanceOutput) CaType added in v3.27.0

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`.

func (RdsCloneDbInstanceOutput) Category added in v3.27.0

Instance series. Valid values: * **Basic**: Basic Edition * **HighAvailability**: High availability * **AlwaysOn**: Cluster Edition * **Finance**: Three-node Enterprise Edition. * **serverless_basic**: Serverless Basic Edition. (Available in 1.200.0+) * **serverless_standard**: MySQL Serverless High Availability Edition. (Available in 1.207.0+) * **serverless_ha**: SQLServer Serverless High Availability Edition. (Available in 1.207.0+) * **cluster**: MySQL Cluster Edition. (Available in 1.207.0+)

func (RdsCloneDbInstanceOutput) Certificate added in v3.27.0

The file that contains the certificate used for TDE.

func (RdsCloneDbInstanceOutput) ClientCaCert added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) ClientCaEnabled added in v3.27.0

func (o RdsCloneDbInstanceOutput) ClientCaEnabled() pulumi.IntPtrOutput

The client ca enabled.

func (RdsCloneDbInstanceOutput) ClientCertRevocationList added in v3.27.0

func (o RdsCloneDbInstanceOutput) ClientCertRevocationList() pulumi.StringPtrOutput

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.

func (RdsCloneDbInstanceOutput) ClientCrlEnabled added in v3.27.0

func (o RdsCloneDbInstanceOutput) ClientCrlEnabled() pulumi.IntPtrOutput

The client crl enabled.

func (RdsCloneDbInstanceOutput) ConnectionString added in v3.27.0

func (o RdsCloneDbInstanceOutput) ConnectionString() pulumi.StringOutput

The database connection address.

func (RdsCloneDbInstanceOutput) ConnectionStringPrefix added in v3.27.0

func (o RdsCloneDbInstanceOutput) ConnectionStringPrefix() pulumi.StringPtrOutput

The connection string prefix.

func (RdsCloneDbInstanceOutput) DbInstanceClass added in v3.27.0

func (o RdsCloneDbInstanceOutput) DbInstanceClass() pulumi.StringOutput

The instance type of the new instance. For information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).

func (RdsCloneDbInstanceOutput) DbInstanceDescription added in v3.27.0

func (o RdsCloneDbInstanceOutput) DbInstanceDescription() pulumi.StringPtrOutput

The db instance description.

func (RdsCloneDbInstanceOutput) DbInstanceStorage added in v3.27.0

func (o RdsCloneDbInstanceOutput) DbInstanceStorage() pulumi.IntOutput

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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).

> **NOTE:** The default value of this parameter is the storage capacity of the original instance.

func (RdsCloneDbInstanceOutput) DbInstanceStorageType added in v3.27.0

func (o RdsCloneDbInstanceOutput) DbInstanceStorageType() pulumi.StringOutput

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

func (RdsCloneDbInstanceOutput) DbName added in v3.27.0

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 (,).

> **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.

func (RdsCloneDbInstanceOutput) DbNames added in v3.27.0

The names of the databases that you want to create on the new instance.

func (RdsCloneDbInstanceOutput) DedicatedHostGroupId added in v3.27.0

func (o RdsCloneDbInstanceOutput) DedicatedHostGroupId() pulumi.StringPtrOutput

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.

func (RdsCloneDbInstanceOutput) DeletionProtection added in v3.27.0

func (o RdsCloneDbInstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

The switch of delete protection. Valid values: - true: delete protect. - false: no delete protect.

> **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.

func (RdsCloneDbInstanceOutput) Direction added in v3.27.0

The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.

func (RdsCloneDbInstanceOutput) EffectiveTime added in v3.27.0

The effective time.

func (RdsCloneDbInstanceOutput) ElementType added in v3.13.0

func (RdsCloneDbInstanceOutput) ElementType() reflect.Type

func (RdsCloneDbInstanceOutput) EncryptionKey added in v3.27.0

The ID of the private key.

> **NOTE:** This parameter is available only when the instance runs MySQL.

func (RdsCloneDbInstanceOutput) Engine added in v3.27.0

Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.

func (RdsCloneDbInstanceOutput) EngineVersion added in v3.27.0

func (o RdsCloneDbInstanceOutput) EngineVersion() pulumi.StringOutput

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** * MariaDB:**10.3**.

func (RdsCloneDbInstanceOutput) ForceRestart added in v3.27.0

Set it to true to make some parameter efficient when modifying them. Default to false.

func (RdsCloneDbInstanceOutput) HaMode added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) InstanceNetworkType added in v3.27.0

func (o RdsCloneDbInstanceOutput) InstanceNetworkType() pulumi.StringOutput

The network type of the instance. Valid values: * **Classic**: Classic Network * **VPC**: VPC.

func (RdsCloneDbInstanceOutput) MaintainTime added in v3.27.0

func (o RdsCloneDbInstanceOutput) MaintainTime() pulumi.StringOutput

The maintainable time period of the instance. Format: <I> HH:mm</I> Z-<I> HH:mm</I> Z(UTC time).

func (RdsCloneDbInstanceOutput) Parameters added in v3.27.0

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).See `parameters` below.

func (RdsCloneDbInstanceOutput) Password added in v3.27.0

The password of the certificate.

> **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.

func (RdsCloneDbInstanceOutput) PaymentType added in v3.27.0

The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription` and `Serverless`.

func (RdsCloneDbInstanceOutput) Period added in v3.27.0

The period. Valid values: `Month`, `Year`.

> **NOTE:** If you set the paymentType parameter to Subscription, you must specify the period parameter.

func (RdsCloneDbInstanceOutput) PgHbaConfs added in v3.27.0

The details of the AD domain.See `pgHbaConf` below.

func (RdsCloneDbInstanceOutput) Port added in v3.27.0

The port.

func (RdsCloneDbInstanceOutput) PrivateIpAddress added in v3.27.0

func (o RdsCloneDbInstanceOutput) PrivateIpAddress() pulumi.StringOutput

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**.

func (RdsCloneDbInstanceOutput) PrivateKey added in v3.27.0

The file that contains the private key used for TDE.

func (RdsCloneDbInstanceOutput) ReleasedKeepPolicy added in v3.27.0

func (o RdsCloneDbInstanceOutput) ReleasedKeepPolicy() pulumi.StringPtrOutput

The released keep policy.

func (RdsCloneDbInstanceOutput) ReplicationAcl added in v3.27.0

func (o RdsCloneDbInstanceOutput) ReplicationAcl() pulumi.StringOutput

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)`.

func (RdsCloneDbInstanceOutput) ResourceGroupId added in v3.27.0

func (o RdsCloneDbInstanceOutput) ResourceGroupId() pulumi.StringPtrOutput

The resource group id.

func (RdsCloneDbInstanceOutput) RestoreTable added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) RestoreTime added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) RoleArn added in v3.27.0

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.

> **NOTE:** This parameter is available only when the instance runs MySQL.

func (RdsCloneDbInstanceOutput) SecurityIps added in v3.27.0

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).

> **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.

func (RdsCloneDbInstanceOutput) ServerCert added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) ServerKey added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) ServerlessConfigs added in v3.33.0

The settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for MySQL instance.See `serverlessConfig` below.

func (RdsCloneDbInstanceOutput) SourceBiz added in v3.27.0

The source biz.

func (RdsCloneDbInstanceOutput) SourceDbInstanceId added in v3.27.0

func (o RdsCloneDbInstanceOutput) SourceDbInstanceId() pulumi.StringOutput

The source db instance id.

func (RdsCloneDbInstanceOutput) SslEnabled added in v3.27.0

func (o RdsCloneDbInstanceOutput) SslEnabled() pulumi.IntOutput

Enable or disable SSL. Valid values: `0` and `1`.

func (RdsCloneDbInstanceOutput) SwitchTime added in v3.27.0

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.

func (RdsCloneDbInstanceOutput) SyncMode added in v3.27.0

[The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values: * **Sync**: strong synchronization * **Semi-sync**: Semi-synchronous * **Async**: asynchronous

> **NOTE:** SQL Server 2017 cluster version is currently not supported.

func (RdsCloneDbInstanceOutput) TableMeta added in v3.27.0

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"}]}]

func (RdsCloneDbInstanceOutput) TcpConnectionType added in v3.27.0

func (o RdsCloneDbInstanceOutput) TcpConnectionType() pulumi.StringOutput

The availability check method of the instance. Valid values: - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance. - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.

func (RdsCloneDbInstanceOutput) TdeStatus added in v3.27.0

Specifies whether to enable TDE. Valid values: * Enabled * Disabled

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) UsedTime added in v3.27.0

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.

> **NOTE:** If you set the paymentType parameter to Subscription, you must specify the usedTime parameter.

func (RdsCloneDbInstanceOutput) VpcId added in v3.27.0

The ID of the VPC to which the new instance belongs.

> **NOTE:** Make sure that the VPC resides in the specified region.

func (RdsCloneDbInstanceOutput) VswitchId added in v3.27.0

The ID of the vSwitch associated with the specified VPC. If there are multiple vswitches, separate them with commas. The first vswitch is a primary zone switch and the query only returns that vswitch. If there are multiple vswitches, do not perform `vswitchId` check.

> **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.

func (RdsCloneDbInstanceOutput) ZoneId added in v3.27.0

The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.

func (RdsCloneDbInstanceOutput) ZoneIdSlaveA added in v3.39.0

func (o RdsCloneDbInstanceOutput) ZoneIdSlaveA() pulumi.StringOutput

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 (RdsCloneDbInstanceOutput) ZoneIdSlaveB added in v3.39.0

func (o RdsCloneDbInstanceOutput) ZoneIdSlaveB() pulumi.StringOutput

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.

> **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.

type RdsCloneDbInstanceParameter added in v3.13.0

type RdsCloneDbInstanceParameter struct {
	// The parameters name.
	Name string `pulumi:"name"`
	// The parameters value.
	Value string `pulumi:"value"`
}

type RdsCloneDbInstanceParameterArgs added in v3.13.0

type RdsCloneDbInstanceParameterArgs struct {
	// The parameters name.
	Name pulumi.StringInput `pulumi:"name"`
	// The parameters value.
	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

The parameters name.

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

The parameters value.

type RdsCloneDbInstancePgHbaConf added in v3.18.0

type RdsCloneDbInstancePgHbaConf struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address string `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database string `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask *string `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method string `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option *string `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId int `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type string `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User string `pulumi:"user"`
}

type RdsCloneDbInstancePgHbaConfArgs added in v3.18.0

type RdsCloneDbInstancePgHbaConfArgs struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address pulumi.StringInput `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database pulumi.StringInput `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask pulumi.StringPtrInput `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method pulumi.StringInput `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option pulumi.StringPtrInput `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId pulumi.IntInput `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type pulumi.StringInput `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User pulumi.StringInput `pulumi:"user"`
}

func (RdsCloneDbInstancePgHbaConfArgs) ElementType added in v3.18.0

func (RdsCloneDbInstancePgHbaConfArgs) ToRdsCloneDbInstancePgHbaConfOutput added in v3.18.0

func (i RdsCloneDbInstancePgHbaConfArgs) ToRdsCloneDbInstancePgHbaConfOutput() RdsCloneDbInstancePgHbaConfOutput

func (RdsCloneDbInstancePgHbaConfArgs) ToRdsCloneDbInstancePgHbaConfOutputWithContext added in v3.18.0

func (i RdsCloneDbInstancePgHbaConfArgs) ToRdsCloneDbInstancePgHbaConfOutputWithContext(ctx context.Context) RdsCloneDbInstancePgHbaConfOutput

type RdsCloneDbInstancePgHbaConfArray added in v3.18.0

type RdsCloneDbInstancePgHbaConfArray []RdsCloneDbInstancePgHbaConfInput

func (RdsCloneDbInstancePgHbaConfArray) ElementType added in v3.18.0

func (RdsCloneDbInstancePgHbaConfArray) ToRdsCloneDbInstancePgHbaConfArrayOutput added in v3.18.0

func (i RdsCloneDbInstancePgHbaConfArray) ToRdsCloneDbInstancePgHbaConfArrayOutput() RdsCloneDbInstancePgHbaConfArrayOutput

func (RdsCloneDbInstancePgHbaConfArray) ToRdsCloneDbInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (i RdsCloneDbInstancePgHbaConfArray) ToRdsCloneDbInstancePgHbaConfArrayOutputWithContext(ctx context.Context) RdsCloneDbInstancePgHbaConfArrayOutput

type RdsCloneDbInstancePgHbaConfArrayInput added in v3.18.0

type RdsCloneDbInstancePgHbaConfArrayInput interface {
	pulumi.Input

	ToRdsCloneDbInstancePgHbaConfArrayOutput() RdsCloneDbInstancePgHbaConfArrayOutput
	ToRdsCloneDbInstancePgHbaConfArrayOutputWithContext(context.Context) RdsCloneDbInstancePgHbaConfArrayOutput
}

RdsCloneDbInstancePgHbaConfArrayInput is an input type that accepts RdsCloneDbInstancePgHbaConfArray and RdsCloneDbInstancePgHbaConfArrayOutput values. You can construct a concrete instance of `RdsCloneDbInstancePgHbaConfArrayInput` via:

RdsCloneDbInstancePgHbaConfArray{ RdsCloneDbInstancePgHbaConfArgs{...} }

type RdsCloneDbInstancePgHbaConfArrayOutput added in v3.18.0

type RdsCloneDbInstancePgHbaConfArrayOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstancePgHbaConfArrayOutput) ElementType added in v3.18.0

func (RdsCloneDbInstancePgHbaConfArrayOutput) Index added in v3.18.0

func (RdsCloneDbInstancePgHbaConfArrayOutput) ToRdsCloneDbInstancePgHbaConfArrayOutput added in v3.18.0

func (o RdsCloneDbInstancePgHbaConfArrayOutput) ToRdsCloneDbInstancePgHbaConfArrayOutput() RdsCloneDbInstancePgHbaConfArrayOutput

func (RdsCloneDbInstancePgHbaConfArrayOutput) ToRdsCloneDbInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (o RdsCloneDbInstancePgHbaConfArrayOutput) ToRdsCloneDbInstancePgHbaConfArrayOutputWithContext(ctx context.Context) RdsCloneDbInstancePgHbaConfArrayOutput

type RdsCloneDbInstancePgHbaConfInput added in v3.18.0

type RdsCloneDbInstancePgHbaConfInput interface {
	pulumi.Input

	ToRdsCloneDbInstancePgHbaConfOutput() RdsCloneDbInstancePgHbaConfOutput
	ToRdsCloneDbInstancePgHbaConfOutputWithContext(context.Context) RdsCloneDbInstancePgHbaConfOutput
}

RdsCloneDbInstancePgHbaConfInput is an input type that accepts RdsCloneDbInstancePgHbaConfArgs and RdsCloneDbInstancePgHbaConfOutput values. You can construct a concrete instance of `RdsCloneDbInstancePgHbaConfInput` via:

RdsCloneDbInstancePgHbaConfArgs{...}

type RdsCloneDbInstancePgHbaConfOutput added in v3.18.0

type RdsCloneDbInstancePgHbaConfOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstancePgHbaConfOutput) Address added in v3.18.0

The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.

func (RdsCloneDbInstancePgHbaConfOutput) Database added in v3.18.0

The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).

func (RdsCloneDbInstancePgHbaConfOutput) ElementType added in v3.18.0

func (RdsCloneDbInstancePgHbaConfOutput) Mask added in v3.18.0

The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.

func (RdsCloneDbInstancePgHbaConfOutput) Method added in v3.18.0

The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.

func (RdsCloneDbInstancePgHbaConfOutput) Option added in v3.18.0

Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).

func (RdsCloneDbInstancePgHbaConfOutput) PriorityId added in v3.18.0

The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.

func (RdsCloneDbInstancePgHbaConfOutput) ToRdsCloneDbInstancePgHbaConfOutput added in v3.18.0

func (o RdsCloneDbInstancePgHbaConfOutput) ToRdsCloneDbInstancePgHbaConfOutput() RdsCloneDbInstancePgHbaConfOutput

func (RdsCloneDbInstancePgHbaConfOutput) ToRdsCloneDbInstancePgHbaConfOutputWithContext added in v3.18.0

func (o RdsCloneDbInstancePgHbaConfOutput) ToRdsCloneDbInstancePgHbaConfOutputWithContext(ctx context.Context) RdsCloneDbInstancePgHbaConfOutput

func (RdsCloneDbInstancePgHbaConfOutput) Type added in v3.18.0

The type of connection to the instance. Valid values: * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections. * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections. * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.

> **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).

func (RdsCloneDbInstancePgHbaConfOutput) User added in v3.18.0

The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).

type RdsCloneDbInstanceServerlessConfig added in v3.33.0

type RdsCloneDbInstanceServerlessConfig struct {
	// Specifies whether to enable the smart startup and stop feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. If there is no connection within 10 minutes, it will enter a paused state and automatically wake up when the connection enters.
	AutoPause *bool `pulumi:"autoPause"`
	// The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values:
	// - MySQL: 1~8
	// - SQLServer: 2~8
	// - PostgreSQL: 1~12
	MaxCapacity float64 `pulumi:"maxCapacity"`
	// The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values:
	// - MySQL: 0.5~8
	// - SQLServer: 2~8 \(Supports integers only\).
	// - PostgreSQL: 0.5~12
	MinCapacity float64 `pulumi:"minCapacity"`
	// Specifies whether to enable the forced scaling feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation.
	// > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.
	SwitchForce *bool `pulumi:"switchForce"`
}

type RdsCloneDbInstanceServerlessConfigArgs added in v3.33.0

type RdsCloneDbInstanceServerlessConfigArgs struct {
	// Specifies whether to enable the smart startup and stop feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. If there is no connection within 10 minutes, it will enter a paused state and automatically wake up when the connection enters.
	AutoPause pulumi.BoolPtrInput `pulumi:"autoPause"`
	// The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values:
	// - MySQL: 1~8
	// - SQLServer: 2~8
	// - PostgreSQL: 1~12
	MaxCapacity pulumi.Float64Input `pulumi:"maxCapacity"`
	// The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values:
	// - MySQL: 0.5~8
	// - SQLServer: 2~8 \(Supports integers only\).
	// - PostgreSQL: 0.5~12
	MinCapacity pulumi.Float64Input `pulumi:"minCapacity"`
	// Specifies whether to enable the forced scaling feature for the serverless instance. Valid values:
	// - true: enables the feature.
	// - false: disables the feature. This is the default value.
	// > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation.
	// > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.
	SwitchForce pulumi.BoolPtrInput `pulumi:"switchForce"`
}

func (RdsCloneDbInstanceServerlessConfigArgs) ElementType added in v3.33.0

func (RdsCloneDbInstanceServerlessConfigArgs) ToRdsCloneDbInstanceServerlessConfigOutput added in v3.33.0

func (i RdsCloneDbInstanceServerlessConfigArgs) ToRdsCloneDbInstanceServerlessConfigOutput() RdsCloneDbInstanceServerlessConfigOutput

func (RdsCloneDbInstanceServerlessConfigArgs) ToRdsCloneDbInstanceServerlessConfigOutputWithContext added in v3.33.0

func (i RdsCloneDbInstanceServerlessConfigArgs) ToRdsCloneDbInstanceServerlessConfigOutputWithContext(ctx context.Context) RdsCloneDbInstanceServerlessConfigOutput

type RdsCloneDbInstanceServerlessConfigArray added in v3.33.0

type RdsCloneDbInstanceServerlessConfigArray []RdsCloneDbInstanceServerlessConfigInput

func (RdsCloneDbInstanceServerlessConfigArray) ElementType added in v3.33.0

func (RdsCloneDbInstanceServerlessConfigArray) ToRdsCloneDbInstanceServerlessConfigArrayOutput added in v3.33.0

func (i RdsCloneDbInstanceServerlessConfigArray) ToRdsCloneDbInstanceServerlessConfigArrayOutput() RdsCloneDbInstanceServerlessConfigArrayOutput

func (RdsCloneDbInstanceServerlessConfigArray) ToRdsCloneDbInstanceServerlessConfigArrayOutputWithContext added in v3.33.0

func (i RdsCloneDbInstanceServerlessConfigArray) ToRdsCloneDbInstanceServerlessConfigArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceServerlessConfigArrayOutput

type RdsCloneDbInstanceServerlessConfigArrayInput added in v3.33.0

type RdsCloneDbInstanceServerlessConfigArrayInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceServerlessConfigArrayOutput() RdsCloneDbInstanceServerlessConfigArrayOutput
	ToRdsCloneDbInstanceServerlessConfigArrayOutputWithContext(context.Context) RdsCloneDbInstanceServerlessConfigArrayOutput
}

RdsCloneDbInstanceServerlessConfigArrayInput is an input type that accepts RdsCloneDbInstanceServerlessConfigArray and RdsCloneDbInstanceServerlessConfigArrayOutput values. You can construct a concrete instance of `RdsCloneDbInstanceServerlessConfigArrayInput` via:

RdsCloneDbInstanceServerlessConfigArray{ RdsCloneDbInstanceServerlessConfigArgs{...} }

type RdsCloneDbInstanceServerlessConfigArrayOutput added in v3.33.0

type RdsCloneDbInstanceServerlessConfigArrayOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceServerlessConfigArrayOutput) ElementType added in v3.33.0

func (RdsCloneDbInstanceServerlessConfigArrayOutput) Index added in v3.33.0

func (RdsCloneDbInstanceServerlessConfigArrayOutput) ToRdsCloneDbInstanceServerlessConfigArrayOutput added in v3.33.0

func (o RdsCloneDbInstanceServerlessConfigArrayOutput) ToRdsCloneDbInstanceServerlessConfigArrayOutput() RdsCloneDbInstanceServerlessConfigArrayOutput

func (RdsCloneDbInstanceServerlessConfigArrayOutput) ToRdsCloneDbInstanceServerlessConfigArrayOutputWithContext added in v3.33.0

func (o RdsCloneDbInstanceServerlessConfigArrayOutput) ToRdsCloneDbInstanceServerlessConfigArrayOutputWithContext(ctx context.Context) RdsCloneDbInstanceServerlessConfigArrayOutput

type RdsCloneDbInstanceServerlessConfigInput added in v3.33.0

type RdsCloneDbInstanceServerlessConfigInput interface {
	pulumi.Input

	ToRdsCloneDbInstanceServerlessConfigOutput() RdsCloneDbInstanceServerlessConfigOutput
	ToRdsCloneDbInstanceServerlessConfigOutputWithContext(context.Context) RdsCloneDbInstanceServerlessConfigOutput
}

RdsCloneDbInstanceServerlessConfigInput is an input type that accepts RdsCloneDbInstanceServerlessConfigArgs and RdsCloneDbInstanceServerlessConfigOutput values. You can construct a concrete instance of `RdsCloneDbInstanceServerlessConfigInput` via:

RdsCloneDbInstanceServerlessConfigArgs{...}

type RdsCloneDbInstanceServerlessConfigOutput added in v3.33.0

type RdsCloneDbInstanceServerlessConfigOutput struct{ *pulumi.OutputState }

func (RdsCloneDbInstanceServerlessConfigOutput) AutoPause added in v3.33.0

Specifies whether to enable the smart startup and stop feature for the serverless instance. Valid values: - true: enables the feature. - false: disables the feature. This is the default value. > - Only MySQL Serverless instances need to set this parameter. If there is no connection within 10 minutes, it will enter a paused state and automatically wake up when the connection enters.

func (RdsCloneDbInstanceServerlessConfigOutput) ElementType added in v3.33.0

func (RdsCloneDbInstanceServerlessConfigOutput) MaxCapacity added in v3.33.0

The maximum number of RDS Capacity Units (RCUs). The value of this parameter must be greater than or equal to `minCapacity` and only supports passing integers. Valid values: - MySQL: 1~8 - SQLServer: 2~8 - PostgreSQL: 1~12

func (RdsCloneDbInstanceServerlessConfigOutput) MinCapacity added in v3.33.0

The minimum number of RCUs. The value of this parameter must be less than or equal to `maxCapacity`. Valid values: - MySQL: 0.5~8 - SQLServer: 2~8 \(Supports integers only\). - PostgreSQL: 0.5~12

func (RdsCloneDbInstanceServerlessConfigOutput) SwitchForce added in v3.33.0

Specifies whether to enable the forced scaling feature for the serverless instance. Valid values: - true: enables the feature. - false: disables the feature. This is the default value. > - Only MySQL Serverless instances need to set this parameter. After enabling this parameter, there will be a flash break within 1 minute when the instance is forced to expand or shrink. Please use it with caution according to the actual situation. > - The elastic scaling of an instance RCU usually takes effect immediately, but in some special circumstances (such as during large transaction execution), it is not possible to complete scaling immediately. In this case, this parameter can be enabled to force scaling.

func (RdsCloneDbInstanceServerlessConfigOutput) ToRdsCloneDbInstanceServerlessConfigOutput added in v3.33.0

func (o RdsCloneDbInstanceServerlessConfigOutput) ToRdsCloneDbInstanceServerlessConfigOutput() RdsCloneDbInstanceServerlessConfigOutput

func (RdsCloneDbInstanceServerlessConfigOutput) ToRdsCloneDbInstanceServerlessConfigOutputWithContext added in v3.33.0

func (o RdsCloneDbInstanceServerlessConfigOutput) ToRdsCloneDbInstanceServerlessConfigOutputWithContext(ctx context.Context) RdsCloneDbInstanceServerlessConfigOutput

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.
	//
	// > **NOTE:** You must specify at least one of the BackupId and RestoreTime parameters. When `payment_type="Serverless"` and when modifying, do not perform `instanceStorage` check. Otherwise, check.
	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.
	// * **serverless_basic**: Serverless Basic Edition. (Available in 1.200.0+)
	// * **serverless_standard**: MySQL Serverless High Availability Edition. (Available in 1.207.0+)
	// * **serverless_ha**: SQLServer Serverless High Availability Edition. (Available in 1.207.0+)
	// * **cluster**: MySQL Cluster Edition. (Available in 1.207.0+)
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL, MariaDB.
	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**
	// * 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).See `parameters` below.
	Parameters RdsCloneDbInstanceParameterArrayInput
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription` and `Serverless`.
	PaymentType pulumi.StringPtrInput
	// The period. Valid values: `Month`, `Year`.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the period parameter.
	Period pulumi.StringPtrInput
	// The details of the AD domain.See `pgHbaConf` below.
	PgHbaConfs RdsCloneDbInstancePgHbaConfArrayInput
	// 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.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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 settings of the serverless instance. This parameter is required when you create a serverless instance. This parameter takes effect only when you create an ApsaraDB RDS for MySQL instance.See `serverlessConfig` below.
	ServerlessConfigs RdsCloneDbInstanceServerlessConfigArrayInput
	// 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
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	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
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType 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.
	//
	// > **NOTE:** If you set the paymentType parameter to Subscription, you must specify the usedTime parameter.
	UsedTime pulumi.IntPtrInput
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC. If there are multiple vswitches, separate them with commas. The first vswitch is a primary zone switch and the query only returns that vswitch. If there are multiple vswitches, do not perform `vswitchId` check.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	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.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneIdSlaveB pulumi.StringPtrInput
}

func (RdsCloneDbInstanceState) ElementType added in v3.13.0

func (RdsCloneDbInstanceState) ElementType() reflect.Type

type RdsDbProxy added in v3.29.0

type RdsDbProxy struct {
	pulumi.CustomResourceState

	// The port number that is associated with the proxy endpoint.
	DbProxyConnectStringPort pulumi.IntOutput `pulumi:"dbProxyConnectStringPort"`
	// The new prefix of the proxy endpoint. Enter a prefix.
	DbProxyConnectionPrefix pulumi.StringOutput `pulumi:"dbProxyConnectionPrefix"`
	// Connection instance string.
	DbProxyConnectionString pulumi.StringOutput `pulumi:"dbProxyConnectionString"`
	// Remarks of agent terminal.
	DbProxyEndpointAliases pulumi.StringOutput `pulumi:"dbProxyEndpointAliases"`
	// Proxy connection address ID.
	DbProxyEndpointId pulumi.StringOutput `pulumi:"dbProxyEndpointId"`
	// The read and write attributes of the proxy terminal. Valid values:
	// - ReadWrite: The proxy terminal connects to the primary instance and can receive both read and write requests.
	// - ReadOnly: The proxy terminal does not connect to the primary instance and can receive only read requests. This is the default value.
	//
	// > **NOTE:** Note This setting causes your instance to restart. Proceed with caution.
	DbProxyEndpointReadWriteMode pulumi.StringOutput `pulumi:"dbProxyEndpointReadWriteMode"`
	// The features that you want to enable for the proxy endpoint. If you specify more than one feature, separate the features with semicolons (;). Format: Feature 1:Status;Feature 2:Status;.... Do not add a semicolon (;) at the end of the last value. Valid feature values:
	// - ReadWriteSpliting: read/write splitting.
	// - ConnectionPersist: connection pooling.
	// - TransactionReadSqlRouteOptimizeStatus: transaction splitting.
	//   Valid status values:
	// - 1: enabled.
	// - 0: disabled.
	//
	// > **NOTE:** Note You must specify this parameter only when the read/write splitting feature is enabled.
	DbProxyFeatures pulumi.StringOutput `pulumi:"dbProxyFeatures"`
	// The number of proxy instances that are enabled. Valid values: 1 to 60.
	DbProxyInstanceNum pulumi.IntOutput `pulumi:"dbProxyInstanceNum"`
	// The SSL configuration setting that you want to apply on the instance. Valid values:
	// - Close: disables SSL encryption.
	// - Open: enables SSL encryption or modifies the endpoint that requires SSL encryption.
	// - Update: updates the validity period of the SSL certificate.
	DbProxySslEnabled pulumi.StringOutput `pulumi:"dbProxySslEnabled"`
	// The point in time at which you want to apply the new database proxy settings. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	EffectiveSpecificTime pulumi.StringOutput `pulumi:"effectiveSpecificTime"`
	// When modifying the number of proxy instances,The time when you want to apply the new database proxy settings.Valid values:
	// - Immediate: ApsaraDB RDS immediately applies the new settings.
	// - MaintainTime: ApsaraDB RDS applies the new settings during the maintenance window that you specified. For more information, see Modify the maintenance window.
	// - SpecificTime: ApsaraDB RDS applies the new settings at a specified point in time.
	//
	// > **NOTE:** Note If you set the EffectiveTime parameter to SpecificTime, you must specify the EffectiveSpecificTime parameter.
	EffectiveTime pulumi.StringOutput `pulumi:"effectiveTime"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The network type of the instance. Set the value to VPC.
	InstanceNetworkType pulumi.StringOutput `pulumi:"instanceNetworkType"`
	// Network type of proxy connection address.
	NetType pulumi.StringOutput `pulumi:"netType"`
	// The policy that is used to allocate read weights. Valid values:
	// - Standard: ApsaraDB RDS automatically allocates read weights to the instance and its read-only instances based on the specifications of the instances.
	// - Custom: You must manually allocate read weights to the instance and its read-only instances.
	//
	// > **NOTE:** Note If you set the ReadOnlyInstanceDistributionType parameter to Custom, you must specify the ReadOnlyInstanceWeight parameter.
	ReadOnlyInstanceDistributionType pulumi.StringOutput `pulumi:"readOnlyInstanceDistributionType"`
	// The maximum latency threshold that is allowed for read/write splitting. If the latency on a read-only instance exceeds the threshold that you specified, ApsaraDB RDS no longer forwards read requests to the read-only instance. If you do not specify this parameter, the default value of this parameter is retained. Unit: seconds. Valid values: 0 to 3600.
	//
	// > **NOTE:** Note If the instance runs PostgreSQL, you can enable only the read/write splitting feature, which is specified by ReadWriteSpliting.
	ReadOnlyInstanceMaxDelayTime pulumi.IntOutput `pulumi:"readOnlyInstanceMaxDelayTime"`
	// A list of the read weights of the instance and its read-only instances.  It contains two sub-fields(instance_id and weight). Read weights increase in increments of 100, and the maximum read weight is 10000. See `readOnlyInstanceWeight` below.
	ReadOnlyInstanceWeights RdsDbProxyReadOnlyInstanceWeightArrayOutput `pulumi:"readOnlyInstanceWeights"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// The time when the certificate expires.
	SslExpiredTime pulumi.StringOutput `pulumi:"sslExpiredTime"`
	// The point in time at which you want to upgrade the database proxy version of the instance. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrOutput `pulumi:"switchTime"`
	// The time when you want to upgrade the database proxy version of the instance. Valid values:
	// - MaintainTime: ApsaraDB RDS performs the upgrade during the maintenance window that you specified. This is the default value. For more information, see Modify the maintenance window.
	// - Immediate: ApsaraDB RDS immediately performs the upgrade.
	// - SpecificTime: ApsaraDB RDS performs the upgrade at a specified point in time.
	UpgradeTime pulumi.StringPtrOutput `pulumi:"upgradeTime"`
	// The ID of the virtual private cloud (VPC) to which the instance belongs.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The ID of the vSwitch that is associated with the specified VPC.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Information about RDS database exclusive agent and its usage, see [What is RDS DB Proxy](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-modifydbproxy).

> **NOTE:** Available since v1.193.0.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("5.7"),
			InstanceType:          pulumi.String("rds.mysql.c1.large"),
			InstanceStorage:       pulumi.Int(20),
			InstanceChargeType:    pulumi.String("Postpaid"),
			InstanceName:          pulumi.String(name),
			VswitchId:             defaultSwitch.ID(),
			DbInstanceStorageType: pulumi.String("local_ssd"),
		})
		if err != nil {
			return err
		}
		defaultReadOnlyInstance, err := rds.NewReadOnlyInstance(ctx, "default", &rds.ReadOnlyInstanceArgs{
			ZoneId:             defaultInstance.ZoneId,
			MasterDbInstanceId: defaultInstance.ID(),
			EngineVersion:      defaultInstance.EngineVersion,
			InstanceStorage:    defaultInstance.InstanceStorage,
			InstanceType:       defaultInstance.InstanceType,
			InstanceName:       pulumi.String(fmt.Sprintf("%vreadonly", name)),
			VswitchId:          defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsDbProxy(ctx, "default", &rds.RdsDbProxyArgs{
			InstanceId:                       defaultInstance.ID(),
			InstanceNetworkType:              pulumi.String("VPC"),
			VpcId:                            defaultInstance.VpcId,
			VswitchId:                        defaultInstance.VswitchId,
			DbProxyInstanceNum:               pulumi.Int(2),
			DbProxyConnectionPrefix:          pulumi.String("example"),
			DbProxyConnectStringPort:         pulumi.Int(3306),
			DbProxyEndpointReadWriteMode:     pulumi.String("ReadWrite"),
			ReadOnlyInstanceMaxDelayTime:     pulumi.Int(90),
			DbProxyFeatures:                  pulumi.String("TransactionReadSqlRouteOptimizeStatus:1;ConnectionPersist:1;ReadWriteSpliting:1"),
			ReadOnlyInstanceDistributionType: pulumi.String("Custom"),
			ReadOnlyInstanceWeights: rds.RdsDbProxyReadOnlyInstanceWeightArray{
				&rds.RdsDbProxyReadOnlyInstanceWeightArgs{
					InstanceId: defaultInstance.ID(),
					Weight:     pulumi.String("100"),
				},
				&rds.RdsDbProxyReadOnlyInstanceWeightArgs{
					InstanceId: defaultReadOnlyInstance.ID(),
					Weight:     pulumi.String("500"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

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

## Import

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

```sh $ pulumi import alicloud:rds/rdsDbProxy:RdsDbProxy example abc12345678 ```

func GetRdsDbProxy added in v3.29.0

func GetRdsDbProxy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsDbProxyState, opts ...pulumi.ResourceOption) (*RdsDbProxy, error)

GetRdsDbProxy gets an existing RdsDbProxy 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 NewRdsDbProxy added in v3.29.0

func NewRdsDbProxy(ctx *pulumi.Context,
	name string, args *RdsDbProxyArgs, opts ...pulumi.ResourceOption) (*RdsDbProxy, error)

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

func (*RdsDbProxy) ElementType added in v3.29.0

func (*RdsDbProxy) ElementType() reflect.Type

func (*RdsDbProxy) ToRdsDbProxyOutput added in v3.29.0

func (i *RdsDbProxy) ToRdsDbProxyOutput() RdsDbProxyOutput

func (*RdsDbProxy) ToRdsDbProxyOutputWithContext added in v3.29.0

func (i *RdsDbProxy) ToRdsDbProxyOutputWithContext(ctx context.Context) RdsDbProxyOutput

type RdsDbProxyArgs added in v3.29.0

type RdsDbProxyArgs struct {
	// The port number that is associated with the proxy endpoint.
	DbProxyConnectStringPort pulumi.IntPtrInput
	// The new prefix of the proxy endpoint. Enter a prefix.
	DbProxyConnectionPrefix pulumi.StringPtrInput
	// The read and write attributes of the proxy terminal. Valid values:
	// - ReadWrite: The proxy terminal connects to the primary instance and can receive both read and write requests.
	// - ReadOnly: The proxy terminal does not connect to the primary instance and can receive only read requests. This is the default value.
	//
	// > **NOTE:** Note This setting causes your instance to restart. Proceed with caution.
	DbProxyEndpointReadWriteMode pulumi.StringPtrInput
	// The features that you want to enable for the proxy endpoint. If you specify more than one feature, separate the features with semicolons (;). Format: Feature 1:Status;Feature 2:Status;.... Do not add a semicolon (;) at the end of the last value. Valid feature values:
	// - ReadWriteSpliting: read/write splitting.
	// - ConnectionPersist: connection pooling.
	// - TransactionReadSqlRouteOptimizeStatus: transaction splitting.
	//   Valid status values:
	// - 1: enabled.
	// - 0: disabled.
	//
	// > **NOTE:** Note You must specify this parameter only when the read/write splitting feature is enabled.
	DbProxyFeatures pulumi.StringPtrInput
	// The number of proxy instances that are enabled. Valid values: 1 to 60.
	DbProxyInstanceNum pulumi.IntInput
	// The SSL configuration setting that you want to apply on the instance. Valid values:
	// - Close: disables SSL encryption.
	// - Open: enables SSL encryption or modifies the endpoint that requires SSL encryption.
	// - Update: updates the validity period of the SSL certificate.
	DbProxySslEnabled pulumi.StringPtrInput
	// The point in time at which you want to apply the new database proxy settings. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	EffectiveSpecificTime pulumi.StringPtrInput
	// When modifying the number of proxy instances,The time when you want to apply the new database proxy settings.Valid values:
	// - Immediate: ApsaraDB RDS immediately applies the new settings.
	// - MaintainTime: ApsaraDB RDS applies the new settings during the maintenance window that you specified. For more information, see Modify the maintenance window.
	// - SpecificTime: ApsaraDB RDS applies the new settings at a specified point in time.
	//
	// > **NOTE:** Note If you set the EffectiveTime parameter to SpecificTime, you must specify the EffectiveSpecificTime parameter.
	EffectiveTime pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// The network type of the instance. Set the value to VPC.
	InstanceNetworkType pulumi.StringInput
	// The policy that is used to allocate read weights. Valid values:
	// - Standard: ApsaraDB RDS automatically allocates read weights to the instance and its read-only instances based on the specifications of the instances.
	// - Custom: You must manually allocate read weights to the instance and its read-only instances.
	//
	// > **NOTE:** Note If you set the ReadOnlyInstanceDistributionType parameter to Custom, you must specify the ReadOnlyInstanceWeight parameter.
	ReadOnlyInstanceDistributionType pulumi.StringPtrInput
	// The maximum latency threshold that is allowed for read/write splitting. If the latency on a read-only instance exceeds the threshold that you specified, ApsaraDB RDS no longer forwards read requests to the read-only instance. If you do not specify this parameter, the default value of this parameter is retained. Unit: seconds. Valid values: 0 to 3600.
	//
	// > **NOTE:** Note If the instance runs PostgreSQL, you can enable only the read/write splitting feature, which is specified by ReadWriteSpliting.
	ReadOnlyInstanceMaxDelayTime pulumi.IntPtrInput
	// A list of the read weights of the instance and its read-only instances.  It contains two sub-fields(instance_id and weight). Read weights increase in increments of 100, and the maximum read weight is 10000. See `readOnlyInstanceWeight` below.
	ReadOnlyInstanceWeights RdsDbProxyReadOnlyInstanceWeightArrayInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The point in time at which you want to upgrade the database proxy version of the instance. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// The time when you want to upgrade the database proxy version of the instance. Valid values:
	// - MaintainTime: ApsaraDB RDS performs the upgrade during the maintenance window that you specified. This is the default value. For more information, see Modify the maintenance window.
	// - Immediate: ApsaraDB RDS immediately performs the upgrade.
	// - SpecificTime: ApsaraDB RDS performs the upgrade at a specified point in time.
	UpgradeTime pulumi.StringPtrInput
	// The ID of the virtual private cloud (VPC) to which the instance belongs.
	VpcId pulumi.StringInput
	// The ID of the vSwitch that is associated with the specified VPC.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a RdsDbProxy resource.

func (RdsDbProxyArgs) ElementType added in v3.29.0

func (RdsDbProxyArgs) ElementType() reflect.Type

type RdsDbProxyArray added in v3.29.0

type RdsDbProxyArray []RdsDbProxyInput

func (RdsDbProxyArray) ElementType added in v3.29.0

func (RdsDbProxyArray) ElementType() reflect.Type

func (RdsDbProxyArray) ToRdsDbProxyArrayOutput added in v3.29.0

func (i RdsDbProxyArray) ToRdsDbProxyArrayOutput() RdsDbProxyArrayOutput

func (RdsDbProxyArray) ToRdsDbProxyArrayOutputWithContext added in v3.29.0

func (i RdsDbProxyArray) ToRdsDbProxyArrayOutputWithContext(ctx context.Context) RdsDbProxyArrayOutput

type RdsDbProxyArrayInput added in v3.29.0

type RdsDbProxyArrayInput interface {
	pulumi.Input

	ToRdsDbProxyArrayOutput() RdsDbProxyArrayOutput
	ToRdsDbProxyArrayOutputWithContext(context.Context) RdsDbProxyArrayOutput
}

RdsDbProxyArrayInput is an input type that accepts RdsDbProxyArray and RdsDbProxyArrayOutput values. You can construct a concrete instance of `RdsDbProxyArrayInput` via:

RdsDbProxyArray{ RdsDbProxyArgs{...} }

type RdsDbProxyArrayOutput added in v3.29.0

type RdsDbProxyArrayOutput struct{ *pulumi.OutputState }

func (RdsDbProxyArrayOutput) ElementType added in v3.29.0

func (RdsDbProxyArrayOutput) ElementType() reflect.Type

func (RdsDbProxyArrayOutput) Index added in v3.29.0

func (RdsDbProxyArrayOutput) ToRdsDbProxyArrayOutput added in v3.29.0

func (o RdsDbProxyArrayOutput) ToRdsDbProxyArrayOutput() RdsDbProxyArrayOutput

func (RdsDbProxyArrayOutput) ToRdsDbProxyArrayOutputWithContext added in v3.29.0

func (o RdsDbProxyArrayOutput) ToRdsDbProxyArrayOutputWithContext(ctx context.Context) RdsDbProxyArrayOutput

type RdsDbProxyInput added in v3.29.0

type RdsDbProxyInput interface {
	pulumi.Input

	ToRdsDbProxyOutput() RdsDbProxyOutput
	ToRdsDbProxyOutputWithContext(ctx context.Context) RdsDbProxyOutput
}

type RdsDbProxyMap added in v3.29.0

type RdsDbProxyMap map[string]RdsDbProxyInput

func (RdsDbProxyMap) ElementType added in v3.29.0

func (RdsDbProxyMap) ElementType() reflect.Type

func (RdsDbProxyMap) ToRdsDbProxyMapOutput added in v3.29.0

func (i RdsDbProxyMap) ToRdsDbProxyMapOutput() RdsDbProxyMapOutput

func (RdsDbProxyMap) ToRdsDbProxyMapOutputWithContext added in v3.29.0

func (i RdsDbProxyMap) ToRdsDbProxyMapOutputWithContext(ctx context.Context) RdsDbProxyMapOutput

type RdsDbProxyMapInput added in v3.29.0

type RdsDbProxyMapInput interface {
	pulumi.Input

	ToRdsDbProxyMapOutput() RdsDbProxyMapOutput
	ToRdsDbProxyMapOutputWithContext(context.Context) RdsDbProxyMapOutput
}

RdsDbProxyMapInput is an input type that accepts RdsDbProxyMap and RdsDbProxyMapOutput values. You can construct a concrete instance of `RdsDbProxyMapInput` via:

RdsDbProxyMap{ "key": RdsDbProxyArgs{...} }

type RdsDbProxyMapOutput added in v3.29.0

type RdsDbProxyMapOutput struct{ *pulumi.OutputState }

func (RdsDbProxyMapOutput) ElementType added in v3.29.0

func (RdsDbProxyMapOutput) ElementType() reflect.Type

func (RdsDbProxyMapOutput) MapIndex added in v3.29.0

func (RdsDbProxyMapOutput) ToRdsDbProxyMapOutput added in v3.29.0

func (o RdsDbProxyMapOutput) ToRdsDbProxyMapOutput() RdsDbProxyMapOutput

func (RdsDbProxyMapOutput) ToRdsDbProxyMapOutputWithContext added in v3.29.0

func (o RdsDbProxyMapOutput) ToRdsDbProxyMapOutputWithContext(ctx context.Context) RdsDbProxyMapOutput

type RdsDbProxyOutput added in v3.29.0

type RdsDbProxyOutput struct{ *pulumi.OutputState }

func (RdsDbProxyOutput) DbProxyConnectStringPort added in v3.29.0

func (o RdsDbProxyOutput) DbProxyConnectStringPort() pulumi.IntOutput

The port number that is associated with the proxy endpoint.

func (RdsDbProxyOutput) DbProxyConnectionPrefix added in v3.29.0

func (o RdsDbProxyOutput) DbProxyConnectionPrefix() pulumi.StringOutput

The new prefix of the proxy endpoint. Enter a prefix.

func (RdsDbProxyOutput) DbProxyConnectionString added in v3.29.0

func (o RdsDbProxyOutput) DbProxyConnectionString() pulumi.StringOutput

Connection instance string.

func (RdsDbProxyOutput) DbProxyEndpointAliases added in v3.29.0

func (o RdsDbProxyOutput) DbProxyEndpointAliases() pulumi.StringOutput

Remarks of agent terminal.

func (RdsDbProxyOutput) DbProxyEndpointId added in v3.29.0

func (o RdsDbProxyOutput) DbProxyEndpointId() pulumi.StringOutput

Proxy connection address ID.

func (RdsDbProxyOutput) DbProxyEndpointReadWriteMode added in v3.29.0

func (o RdsDbProxyOutput) DbProxyEndpointReadWriteMode() pulumi.StringOutput

The read and write attributes of the proxy terminal. Valid values: - ReadWrite: The proxy terminal connects to the primary instance and can receive both read and write requests. - ReadOnly: The proxy terminal does not connect to the primary instance and can receive only read requests. This is the default value.

> **NOTE:** Note This setting causes your instance to restart. Proceed with caution.

func (RdsDbProxyOutput) DbProxyFeatures added in v3.29.0

func (o RdsDbProxyOutput) DbProxyFeatures() pulumi.StringOutput

The features that you want to enable for the proxy endpoint. If you specify more than one feature, separate the features with semicolons (;). Format: Feature 1:Status;Feature 2:Status;.... Do not add a semicolon (;) at the end of the last value. Valid feature values:

  • ReadWriteSpliting: read/write splitting.
  • ConnectionPersist: connection pooling.
  • TransactionReadSqlRouteOptimizeStatus: transaction splitting. Valid status values:
  • 1: enabled.
  • 0: disabled.

> **NOTE:** Note You must specify this parameter only when the read/write splitting feature is enabled.

func (RdsDbProxyOutput) DbProxyInstanceNum added in v3.29.0

func (o RdsDbProxyOutput) DbProxyInstanceNum() pulumi.IntOutput

The number of proxy instances that are enabled. Valid values: 1 to 60.

func (RdsDbProxyOutput) DbProxySslEnabled added in v3.29.0

func (o RdsDbProxyOutput) DbProxySslEnabled() pulumi.StringOutput

The SSL configuration setting that you want to apply on the instance. Valid values: - Close: disables SSL encryption. - Open: enables SSL encryption or modifies the endpoint that requires SSL encryption. - Update: updates the validity period of the SSL certificate.

func (RdsDbProxyOutput) EffectiveSpecificTime added in v3.29.0

func (o RdsDbProxyOutput) EffectiveSpecificTime() pulumi.StringOutput

The point in time at which you want to apply the new database proxy settings. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

func (RdsDbProxyOutput) EffectiveTime added in v3.29.0

func (o RdsDbProxyOutput) EffectiveTime() pulumi.StringOutput

When modifying the number of proxy instances,The time when you want to apply the new database proxy settings.Valid values: - Immediate: ApsaraDB RDS immediately applies the new settings. - MaintainTime: ApsaraDB RDS applies the new settings during the maintenance window that you specified. For more information, see Modify the maintenance window. - SpecificTime: ApsaraDB RDS applies the new settings at a specified point in time.

> **NOTE:** Note If you set the EffectiveTime parameter to SpecificTime, you must specify the EffectiveSpecificTime parameter.

func (RdsDbProxyOutput) ElementType added in v3.29.0

func (RdsDbProxyOutput) ElementType() reflect.Type

func (RdsDbProxyOutput) InstanceId added in v3.29.0

func (o RdsDbProxyOutput) InstanceId() pulumi.StringOutput

The Id of instance that can run database.

func (RdsDbProxyOutput) InstanceNetworkType added in v3.29.0

func (o RdsDbProxyOutput) InstanceNetworkType() pulumi.StringOutput

The network type of the instance. Set the value to VPC.

func (RdsDbProxyOutput) NetType added in v3.29.0

func (o RdsDbProxyOutput) NetType() pulumi.StringOutput

Network type of proxy connection address.

func (RdsDbProxyOutput) ReadOnlyInstanceDistributionType added in v3.29.0

func (o RdsDbProxyOutput) ReadOnlyInstanceDistributionType() pulumi.StringOutput

The policy that is used to allocate read weights. Valid values: - Standard: ApsaraDB RDS automatically allocates read weights to the instance and its read-only instances based on the specifications of the instances. - Custom: You must manually allocate read weights to the instance and its read-only instances.

> **NOTE:** Note If you set the ReadOnlyInstanceDistributionType parameter to Custom, you must specify the ReadOnlyInstanceWeight parameter.

func (RdsDbProxyOutput) ReadOnlyInstanceMaxDelayTime added in v3.29.0

func (o RdsDbProxyOutput) ReadOnlyInstanceMaxDelayTime() pulumi.IntOutput

The maximum latency threshold that is allowed for read/write splitting. If the latency on a read-only instance exceeds the threshold that you specified, ApsaraDB RDS no longer forwards read requests to the read-only instance. If you do not specify this parameter, the default value of this parameter is retained. Unit: seconds. Valid values: 0 to 3600.

> **NOTE:** Note If the instance runs PostgreSQL, you can enable only the read/write splitting feature, which is specified by ReadWriteSpliting.

func (RdsDbProxyOutput) ReadOnlyInstanceWeights added in v3.29.0

A list of the read weights of the instance and its read-only instances. It contains two sub-fields(instance_id and weight). Read weights increase in increments of 100, and the maximum read weight is 10000. See `readOnlyInstanceWeight` below.

func (RdsDbProxyOutput) ResourceGroupId added in v3.29.0

func (o RdsDbProxyOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (RdsDbProxyOutput) SslExpiredTime added in v3.29.0

func (o RdsDbProxyOutput) SslExpiredTime() pulumi.StringOutput

The time when the certificate expires.

func (RdsDbProxyOutput) SwitchTime added in v3.29.0

func (o RdsDbProxyOutput) SwitchTime() pulumi.StringPtrOutput

The point in time at which you want to upgrade the database proxy version of the instance. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.

func (RdsDbProxyOutput) ToRdsDbProxyOutput added in v3.29.0

func (o RdsDbProxyOutput) ToRdsDbProxyOutput() RdsDbProxyOutput

func (RdsDbProxyOutput) ToRdsDbProxyOutputWithContext added in v3.29.0

func (o RdsDbProxyOutput) ToRdsDbProxyOutputWithContext(ctx context.Context) RdsDbProxyOutput

func (RdsDbProxyOutput) UpgradeTime added in v3.29.0

func (o RdsDbProxyOutput) UpgradeTime() pulumi.StringPtrOutput

The time when you want to upgrade the database proxy version of the instance. Valid values: - MaintainTime: ApsaraDB RDS performs the upgrade during the maintenance window that you specified. This is the default value. For more information, see Modify the maintenance window. - Immediate: ApsaraDB RDS immediately performs the upgrade. - SpecificTime: ApsaraDB RDS performs the upgrade at a specified point in time.

func (RdsDbProxyOutput) VpcId added in v3.29.0

The ID of the virtual private cloud (VPC) to which the instance belongs.

func (RdsDbProxyOutput) VswitchId added in v3.29.0

func (o RdsDbProxyOutput) VswitchId() pulumi.StringOutput

The ID of the vSwitch that is associated with the specified VPC.

type RdsDbProxyReadOnlyInstanceWeight added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeight struct {
	// The Id of the instance and its read-only instances that can run database.
	InstanceId string `pulumi:"instanceId"`
	// Weight of instances that can run the database and their read-only instances. Read weights increase in increments of 100, and the maximum read weight is 10000.
	Weight string `pulumi:"weight"`
}

type RdsDbProxyReadOnlyInstanceWeightArgs added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightArgs struct {
	// The Id of the instance and its read-only instances that can run database.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Weight of instances that can run the database and their read-only instances. Read weights increase in increments of 100, and the maximum read weight is 10000.
	Weight pulumi.StringInput `pulumi:"weight"`
}

func (RdsDbProxyReadOnlyInstanceWeightArgs) ElementType added in v3.29.0

func (RdsDbProxyReadOnlyInstanceWeightArgs) ToRdsDbProxyReadOnlyInstanceWeightOutput added in v3.29.0

func (i RdsDbProxyReadOnlyInstanceWeightArgs) ToRdsDbProxyReadOnlyInstanceWeightOutput() RdsDbProxyReadOnlyInstanceWeightOutput

func (RdsDbProxyReadOnlyInstanceWeightArgs) ToRdsDbProxyReadOnlyInstanceWeightOutputWithContext added in v3.29.0

func (i RdsDbProxyReadOnlyInstanceWeightArgs) ToRdsDbProxyReadOnlyInstanceWeightOutputWithContext(ctx context.Context) RdsDbProxyReadOnlyInstanceWeightOutput

type RdsDbProxyReadOnlyInstanceWeightArray added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightArray []RdsDbProxyReadOnlyInstanceWeightInput

func (RdsDbProxyReadOnlyInstanceWeightArray) ElementType added in v3.29.0

func (RdsDbProxyReadOnlyInstanceWeightArray) ToRdsDbProxyReadOnlyInstanceWeightArrayOutput added in v3.29.0

func (i RdsDbProxyReadOnlyInstanceWeightArray) ToRdsDbProxyReadOnlyInstanceWeightArrayOutput() RdsDbProxyReadOnlyInstanceWeightArrayOutput

func (RdsDbProxyReadOnlyInstanceWeightArray) ToRdsDbProxyReadOnlyInstanceWeightArrayOutputWithContext added in v3.29.0

func (i RdsDbProxyReadOnlyInstanceWeightArray) ToRdsDbProxyReadOnlyInstanceWeightArrayOutputWithContext(ctx context.Context) RdsDbProxyReadOnlyInstanceWeightArrayOutput

type RdsDbProxyReadOnlyInstanceWeightArrayInput added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightArrayInput interface {
	pulumi.Input

	ToRdsDbProxyReadOnlyInstanceWeightArrayOutput() RdsDbProxyReadOnlyInstanceWeightArrayOutput
	ToRdsDbProxyReadOnlyInstanceWeightArrayOutputWithContext(context.Context) RdsDbProxyReadOnlyInstanceWeightArrayOutput
}

RdsDbProxyReadOnlyInstanceWeightArrayInput is an input type that accepts RdsDbProxyReadOnlyInstanceWeightArray and RdsDbProxyReadOnlyInstanceWeightArrayOutput values. You can construct a concrete instance of `RdsDbProxyReadOnlyInstanceWeightArrayInput` via:

RdsDbProxyReadOnlyInstanceWeightArray{ RdsDbProxyReadOnlyInstanceWeightArgs{...} }

type RdsDbProxyReadOnlyInstanceWeightArrayOutput added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightArrayOutput struct{ *pulumi.OutputState }

func (RdsDbProxyReadOnlyInstanceWeightArrayOutput) ElementType added in v3.29.0

func (RdsDbProxyReadOnlyInstanceWeightArrayOutput) Index added in v3.29.0

func (RdsDbProxyReadOnlyInstanceWeightArrayOutput) ToRdsDbProxyReadOnlyInstanceWeightArrayOutput added in v3.29.0

func (o RdsDbProxyReadOnlyInstanceWeightArrayOutput) ToRdsDbProxyReadOnlyInstanceWeightArrayOutput() RdsDbProxyReadOnlyInstanceWeightArrayOutput

func (RdsDbProxyReadOnlyInstanceWeightArrayOutput) ToRdsDbProxyReadOnlyInstanceWeightArrayOutputWithContext added in v3.29.0

func (o RdsDbProxyReadOnlyInstanceWeightArrayOutput) ToRdsDbProxyReadOnlyInstanceWeightArrayOutputWithContext(ctx context.Context) RdsDbProxyReadOnlyInstanceWeightArrayOutput

type RdsDbProxyReadOnlyInstanceWeightInput added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightInput interface {
	pulumi.Input

	ToRdsDbProxyReadOnlyInstanceWeightOutput() RdsDbProxyReadOnlyInstanceWeightOutput
	ToRdsDbProxyReadOnlyInstanceWeightOutputWithContext(context.Context) RdsDbProxyReadOnlyInstanceWeightOutput
}

RdsDbProxyReadOnlyInstanceWeightInput is an input type that accepts RdsDbProxyReadOnlyInstanceWeightArgs and RdsDbProxyReadOnlyInstanceWeightOutput values. You can construct a concrete instance of `RdsDbProxyReadOnlyInstanceWeightInput` via:

RdsDbProxyReadOnlyInstanceWeightArgs{...}

type RdsDbProxyReadOnlyInstanceWeightOutput added in v3.29.0

type RdsDbProxyReadOnlyInstanceWeightOutput struct{ *pulumi.OutputState }

func (RdsDbProxyReadOnlyInstanceWeightOutput) ElementType added in v3.29.0

func (RdsDbProxyReadOnlyInstanceWeightOutput) InstanceId added in v3.29.0

The Id of the instance and its read-only instances that can run database.

func (RdsDbProxyReadOnlyInstanceWeightOutput) ToRdsDbProxyReadOnlyInstanceWeightOutput added in v3.29.0

func (o RdsDbProxyReadOnlyInstanceWeightOutput) ToRdsDbProxyReadOnlyInstanceWeightOutput() RdsDbProxyReadOnlyInstanceWeightOutput

func (RdsDbProxyReadOnlyInstanceWeightOutput) ToRdsDbProxyReadOnlyInstanceWeightOutputWithContext added in v3.29.0

func (o RdsDbProxyReadOnlyInstanceWeightOutput) ToRdsDbProxyReadOnlyInstanceWeightOutputWithContext(ctx context.Context) RdsDbProxyReadOnlyInstanceWeightOutput

func (RdsDbProxyReadOnlyInstanceWeightOutput) Weight added in v3.29.0

Weight of instances that can run the database and their read-only instances. Read weights increase in increments of 100, and the maximum read weight is 10000.

type RdsDbProxyState added in v3.29.0

type RdsDbProxyState struct {
	// The port number that is associated with the proxy endpoint.
	DbProxyConnectStringPort pulumi.IntPtrInput
	// The new prefix of the proxy endpoint. Enter a prefix.
	DbProxyConnectionPrefix pulumi.StringPtrInput
	// Connection instance string.
	DbProxyConnectionString pulumi.StringPtrInput
	// Remarks of agent terminal.
	DbProxyEndpointAliases pulumi.StringPtrInput
	// Proxy connection address ID.
	DbProxyEndpointId pulumi.StringPtrInput
	// The read and write attributes of the proxy terminal. Valid values:
	// - ReadWrite: The proxy terminal connects to the primary instance and can receive both read and write requests.
	// - ReadOnly: The proxy terminal does not connect to the primary instance and can receive only read requests. This is the default value.
	//
	// > **NOTE:** Note This setting causes your instance to restart. Proceed with caution.
	DbProxyEndpointReadWriteMode pulumi.StringPtrInput
	// The features that you want to enable for the proxy endpoint. If you specify more than one feature, separate the features with semicolons (;). Format: Feature 1:Status;Feature 2:Status;.... Do not add a semicolon (;) at the end of the last value. Valid feature values:
	// - ReadWriteSpliting: read/write splitting.
	// - ConnectionPersist: connection pooling.
	// - TransactionReadSqlRouteOptimizeStatus: transaction splitting.
	//   Valid status values:
	// - 1: enabled.
	// - 0: disabled.
	//
	// > **NOTE:** Note You must specify this parameter only when the read/write splitting feature is enabled.
	DbProxyFeatures pulumi.StringPtrInput
	// The number of proxy instances that are enabled. Valid values: 1 to 60.
	DbProxyInstanceNum pulumi.IntPtrInput
	// The SSL configuration setting that you want to apply on the instance. Valid values:
	// - Close: disables SSL encryption.
	// - Open: enables SSL encryption or modifies the endpoint that requires SSL encryption.
	// - Update: updates the validity period of the SSL certificate.
	DbProxySslEnabled pulumi.StringPtrInput
	// The point in time at which you want to apply the new database proxy settings. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	EffectiveSpecificTime pulumi.StringPtrInput
	// When modifying the number of proxy instances,The time when you want to apply the new database proxy settings.Valid values:
	// - Immediate: ApsaraDB RDS immediately applies the new settings.
	// - MaintainTime: ApsaraDB RDS applies the new settings during the maintenance window that you specified. For more information, see Modify the maintenance window.
	// - SpecificTime: ApsaraDB RDS applies the new settings at a specified point in time.
	//
	// > **NOTE:** Note If you set the EffectiveTime parameter to SpecificTime, you must specify the EffectiveSpecificTime parameter.
	EffectiveTime pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// The network type of the instance. Set the value to VPC.
	InstanceNetworkType pulumi.StringPtrInput
	// Network type of proxy connection address.
	NetType pulumi.StringPtrInput
	// The policy that is used to allocate read weights. Valid values:
	// - Standard: ApsaraDB RDS automatically allocates read weights to the instance and its read-only instances based on the specifications of the instances.
	// - Custom: You must manually allocate read weights to the instance and its read-only instances.
	//
	// > **NOTE:** Note If you set the ReadOnlyInstanceDistributionType parameter to Custom, you must specify the ReadOnlyInstanceWeight parameter.
	ReadOnlyInstanceDistributionType pulumi.StringPtrInput
	// The maximum latency threshold that is allowed for read/write splitting. If the latency on a read-only instance exceeds the threshold that you specified, ApsaraDB RDS no longer forwards read requests to the read-only instance. If you do not specify this parameter, the default value of this parameter is retained. Unit: seconds. Valid values: 0 to 3600.
	//
	// > **NOTE:** Note If the instance runs PostgreSQL, you can enable only the read/write splitting feature, which is specified by ReadWriteSpliting.
	ReadOnlyInstanceMaxDelayTime pulumi.IntPtrInput
	// A list of the read weights of the instance and its read-only instances.  It contains two sub-fields(instance_id and weight). Read weights increase in increments of 100, and the maximum read weight is 10000. See `readOnlyInstanceWeight` below.
	ReadOnlyInstanceWeights RdsDbProxyReadOnlyInstanceWeightArrayInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// The time when the certificate expires.
	SslExpiredTime pulumi.StringPtrInput
	// The point in time at which you want to upgrade the database proxy version of the instance. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.
	SwitchTime pulumi.StringPtrInput
	// The time when you want to upgrade the database proxy version of the instance. Valid values:
	// - MaintainTime: ApsaraDB RDS performs the upgrade during the maintenance window that you specified. This is the default value. For more information, see Modify the maintenance window.
	// - Immediate: ApsaraDB RDS immediately performs the upgrade.
	// - SpecificTime: ApsaraDB RDS performs the upgrade at a specified point in time.
	UpgradeTime pulumi.StringPtrInput
	// The ID of the virtual private cloud (VPC) to which the instance belongs.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch that is associated with the specified VPC.
	VswitchId pulumi.StringPtrInput
}

func (RdsDbProxyState) ElementType added in v3.29.0

func (RdsDbProxyState) ElementType() reflect.Type

type RdsInstanceCrossBackupPolicy added in v3.29.0

type RdsInstanceCrossBackupPolicy struct {
	pulumi.CustomResourceState

	// The status of the overall cross-region backup switch on the instance. Valid values:
	// - Disabled
	// - Enable
	BackupEnabled pulumi.StringOutput `pulumi:"backupEnabled"`
	// The time when cross-region backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	BackupEnabledTime pulumi.StringOutput `pulumi:"backupEnabledTime"`
	// The ID of the destination region where the cross-region backup files of the instance are stored.
	CrossBackupRegion pulumi.StringOutput `pulumi:"crossBackupRegion"`
	// The policy that is used to save cross-region backups of the instance. Default value: 1. The default value 1 indicates that all cross-region backups are saved.
	CrossBackupType pulumi.StringOutput `pulumi:"crossBackupType"`
	// The state of the instance. For more information, see Instance status.
	DbInstanceStatus pulumi.StringOutput `pulumi:"dbInstanceStatus"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The lock status of the instance. Valid values:
	// - Unlock: The instance is not locked.
	// - ManualLock: The instance is manually locked.
	// - LockByExpiration: The instance is locked upon expiration.
	// - LockByRestoration: The instance is automatically locked before a rollback.
	// - LockByDiskQuota: The instance is automatically locked because its storage space is exhausted. In this situation, the instance is inaccessible.
	LockMode pulumi.StringOutput `pulumi:"lockMode"`
	// The status of the cross-region log backup feature on the instance. Valid values:
	// - Enable: Enables the feature.
	// - Disabled: Disables the feature.
	LogBackupEnabled pulumi.StringOutput `pulumi:"logBackupEnabled"`
	// The time when cross-region log backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	LogBackupEnabledTime pulumi.StringOutput `pulumi:"logBackupEnabledTime"`
	// The policy that is used to retain cross-region backups of the instance. Default value: 1. The default value 1 indicate that cross-region backups are retained based on the specified retention period.
	RetentType pulumi.StringOutput `pulumi:"retentType"`
	// The number of days for which the cross-region backup files of the instance are retained. Valid values: 7 to 1825. Default value: 7.
	Retention pulumi.IntOutput `pulumi:"retention"`
}

Provides an RDS instance emote disaster recovery strategy policy resource and used to configure instance emote disaster recovery strategy policy.

For information about RDS cross region backup settings and how to use them, see [What is cross region backup](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/modify-cross-region-backup-settings).

> **NOTE:** Available since v1.195.0.

## Example Usage

```go package main

import (

"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_default, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			DbInstanceStorageType: pulumi.StringRef("local_ssd"),
			Category:              pulumi.StringRef("HighAvailability"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(_default.Ids[0]),
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("8.0"),
			DbInstanceStorageType: pulumi.StringRef("local_ssd"),
			Category:              pulumi.StringRef("HighAvailability"),
		}, nil)
		if err != nil {
			return err
		}
		regions, err := rds.GetCrossRegions(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(_default.Ids[0]),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := rds.NewInstance(ctx, "default", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("8.0"),
			InstanceType:          pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(defaultGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			Category:              pulumi.String("HighAvailability"),
			InstanceName:          pulumi.String(name),
			VswitchId:             defaultSwitch.ID(),
			DbInstanceStorageType: pulumi.String("local_ssd"),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsInstanceCrossBackupPolicy(ctx, "default", &rds.RdsInstanceCrossBackupPolicyArgs{
			InstanceId:        defaultInstance.ID(),
			CrossBackupRegion: pulumi.String(regions.Ids[0]),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS remote disaster recovery policies can be imported using id or instance id, e.g.

```sh $ pulumi import alicloud:rds/rdsInstanceCrossBackupPolicy:RdsInstanceCrossBackupPolicy example "rm-12345678" ```

func GetRdsInstanceCrossBackupPolicy added in v3.29.0

func GetRdsInstanceCrossBackupPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsInstanceCrossBackupPolicyState, opts ...pulumi.ResourceOption) (*RdsInstanceCrossBackupPolicy, error)

GetRdsInstanceCrossBackupPolicy gets an existing RdsInstanceCrossBackupPolicy 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 NewRdsInstanceCrossBackupPolicy added in v3.29.0

func NewRdsInstanceCrossBackupPolicy(ctx *pulumi.Context,
	name string, args *RdsInstanceCrossBackupPolicyArgs, opts ...pulumi.ResourceOption) (*RdsInstanceCrossBackupPolicy, error)

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

func (*RdsInstanceCrossBackupPolicy) ElementType added in v3.29.0

func (*RdsInstanceCrossBackupPolicy) ElementType() reflect.Type

func (*RdsInstanceCrossBackupPolicy) ToRdsInstanceCrossBackupPolicyOutput added in v3.29.0

func (i *RdsInstanceCrossBackupPolicy) ToRdsInstanceCrossBackupPolicyOutput() RdsInstanceCrossBackupPolicyOutput

func (*RdsInstanceCrossBackupPolicy) ToRdsInstanceCrossBackupPolicyOutputWithContext added in v3.29.0

func (i *RdsInstanceCrossBackupPolicy) ToRdsInstanceCrossBackupPolicyOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyOutput

type RdsInstanceCrossBackupPolicyArgs added in v3.29.0

type RdsInstanceCrossBackupPolicyArgs struct {
	// The ID of the destination region where the cross-region backup files of the instance are stored.
	CrossBackupRegion pulumi.StringInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
	// The status of the cross-region log backup feature on the instance. Valid values:
	// - Enable: Enables the feature.
	// - Disabled: Disables the feature.
	LogBackupEnabled pulumi.StringPtrInput
	// The number of days for which the cross-region backup files of the instance are retained. Valid values: 7 to 1825. Default value: 7.
	Retention pulumi.IntPtrInput
}

The set of arguments for constructing a RdsInstanceCrossBackupPolicy resource.

func (RdsInstanceCrossBackupPolicyArgs) ElementType added in v3.29.0

type RdsInstanceCrossBackupPolicyArray added in v3.29.0

type RdsInstanceCrossBackupPolicyArray []RdsInstanceCrossBackupPolicyInput

func (RdsInstanceCrossBackupPolicyArray) ElementType added in v3.29.0

func (RdsInstanceCrossBackupPolicyArray) ToRdsInstanceCrossBackupPolicyArrayOutput added in v3.29.0

func (i RdsInstanceCrossBackupPolicyArray) ToRdsInstanceCrossBackupPolicyArrayOutput() RdsInstanceCrossBackupPolicyArrayOutput

func (RdsInstanceCrossBackupPolicyArray) ToRdsInstanceCrossBackupPolicyArrayOutputWithContext added in v3.29.0

func (i RdsInstanceCrossBackupPolicyArray) ToRdsInstanceCrossBackupPolicyArrayOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyArrayOutput

type RdsInstanceCrossBackupPolicyArrayInput added in v3.29.0

type RdsInstanceCrossBackupPolicyArrayInput interface {
	pulumi.Input

	ToRdsInstanceCrossBackupPolicyArrayOutput() RdsInstanceCrossBackupPolicyArrayOutput
	ToRdsInstanceCrossBackupPolicyArrayOutputWithContext(context.Context) RdsInstanceCrossBackupPolicyArrayOutput
}

RdsInstanceCrossBackupPolicyArrayInput is an input type that accepts RdsInstanceCrossBackupPolicyArray and RdsInstanceCrossBackupPolicyArrayOutput values. You can construct a concrete instance of `RdsInstanceCrossBackupPolicyArrayInput` via:

RdsInstanceCrossBackupPolicyArray{ RdsInstanceCrossBackupPolicyArgs{...} }

type RdsInstanceCrossBackupPolicyArrayOutput added in v3.29.0

type RdsInstanceCrossBackupPolicyArrayOutput struct{ *pulumi.OutputState }

func (RdsInstanceCrossBackupPolicyArrayOutput) ElementType added in v3.29.0

func (RdsInstanceCrossBackupPolicyArrayOutput) Index added in v3.29.0

func (RdsInstanceCrossBackupPolicyArrayOutput) ToRdsInstanceCrossBackupPolicyArrayOutput added in v3.29.0

func (o RdsInstanceCrossBackupPolicyArrayOutput) ToRdsInstanceCrossBackupPolicyArrayOutput() RdsInstanceCrossBackupPolicyArrayOutput

func (RdsInstanceCrossBackupPolicyArrayOutput) ToRdsInstanceCrossBackupPolicyArrayOutputWithContext added in v3.29.0

func (o RdsInstanceCrossBackupPolicyArrayOutput) ToRdsInstanceCrossBackupPolicyArrayOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyArrayOutput

type RdsInstanceCrossBackupPolicyInput added in v3.29.0

type RdsInstanceCrossBackupPolicyInput interface {
	pulumi.Input

	ToRdsInstanceCrossBackupPolicyOutput() RdsInstanceCrossBackupPolicyOutput
	ToRdsInstanceCrossBackupPolicyOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyOutput
}

type RdsInstanceCrossBackupPolicyMap added in v3.29.0

type RdsInstanceCrossBackupPolicyMap map[string]RdsInstanceCrossBackupPolicyInput

func (RdsInstanceCrossBackupPolicyMap) ElementType added in v3.29.0

func (RdsInstanceCrossBackupPolicyMap) ToRdsInstanceCrossBackupPolicyMapOutput added in v3.29.0

func (i RdsInstanceCrossBackupPolicyMap) ToRdsInstanceCrossBackupPolicyMapOutput() RdsInstanceCrossBackupPolicyMapOutput

func (RdsInstanceCrossBackupPolicyMap) ToRdsInstanceCrossBackupPolicyMapOutputWithContext added in v3.29.0

func (i RdsInstanceCrossBackupPolicyMap) ToRdsInstanceCrossBackupPolicyMapOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyMapOutput

type RdsInstanceCrossBackupPolicyMapInput added in v3.29.0

type RdsInstanceCrossBackupPolicyMapInput interface {
	pulumi.Input

	ToRdsInstanceCrossBackupPolicyMapOutput() RdsInstanceCrossBackupPolicyMapOutput
	ToRdsInstanceCrossBackupPolicyMapOutputWithContext(context.Context) RdsInstanceCrossBackupPolicyMapOutput
}

RdsInstanceCrossBackupPolicyMapInput is an input type that accepts RdsInstanceCrossBackupPolicyMap and RdsInstanceCrossBackupPolicyMapOutput values. You can construct a concrete instance of `RdsInstanceCrossBackupPolicyMapInput` via:

RdsInstanceCrossBackupPolicyMap{ "key": RdsInstanceCrossBackupPolicyArgs{...} }

type RdsInstanceCrossBackupPolicyMapOutput added in v3.29.0

type RdsInstanceCrossBackupPolicyMapOutput struct{ *pulumi.OutputState }

func (RdsInstanceCrossBackupPolicyMapOutput) ElementType added in v3.29.0

func (RdsInstanceCrossBackupPolicyMapOutput) MapIndex added in v3.29.0

func (RdsInstanceCrossBackupPolicyMapOutput) ToRdsInstanceCrossBackupPolicyMapOutput added in v3.29.0

func (o RdsInstanceCrossBackupPolicyMapOutput) ToRdsInstanceCrossBackupPolicyMapOutput() RdsInstanceCrossBackupPolicyMapOutput

func (RdsInstanceCrossBackupPolicyMapOutput) ToRdsInstanceCrossBackupPolicyMapOutputWithContext added in v3.29.0

func (o RdsInstanceCrossBackupPolicyMapOutput) ToRdsInstanceCrossBackupPolicyMapOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyMapOutput

type RdsInstanceCrossBackupPolicyOutput added in v3.29.0

type RdsInstanceCrossBackupPolicyOutput struct{ *pulumi.OutputState }

func (RdsInstanceCrossBackupPolicyOutput) BackupEnabled added in v3.29.0

The status of the overall cross-region backup switch on the instance. Valid values: - Disabled - Enable

func (RdsInstanceCrossBackupPolicyOutput) BackupEnabledTime added in v3.29.0

The time when cross-region backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (RdsInstanceCrossBackupPolicyOutput) CrossBackupRegion added in v3.29.0

The ID of the destination region where the cross-region backup files of the instance are stored.

func (RdsInstanceCrossBackupPolicyOutput) CrossBackupType added in v3.29.0

The policy that is used to save cross-region backups of the instance. Default value: 1. The default value 1 indicates that all cross-region backups are saved.

func (RdsInstanceCrossBackupPolicyOutput) DbInstanceStatus added in v3.29.0

The state of the instance. For more information, see Instance status.

func (RdsInstanceCrossBackupPolicyOutput) ElementType added in v3.29.0

func (RdsInstanceCrossBackupPolicyOutput) InstanceId added in v3.29.0

The ID of the instance.

func (RdsInstanceCrossBackupPolicyOutput) LockMode added in v3.29.0

The lock status of the instance. Valid values: - Unlock: The instance is not locked. - ManualLock: The instance is manually locked. - LockByExpiration: The instance is locked upon expiration. - LockByRestoration: The instance is automatically locked before a rollback. - LockByDiskQuota: The instance is automatically locked because its storage space is exhausted. In this situation, the instance is inaccessible.

func (RdsInstanceCrossBackupPolicyOutput) LogBackupEnabled added in v3.29.0

The status of the cross-region log backup feature on the instance. Valid values: - Enable: Enables the feature. - Disabled: Disables the feature.

func (RdsInstanceCrossBackupPolicyOutput) LogBackupEnabledTime added in v3.29.0

func (o RdsInstanceCrossBackupPolicyOutput) LogBackupEnabledTime() pulumi.StringOutput

The time when cross-region log backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.

func (RdsInstanceCrossBackupPolicyOutput) RetentType added in v3.29.0

The policy that is used to retain cross-region backups of the instance. Default value: 1. The default value 1 indicate that cross-region backups are retained based on the specified retention period.

func (RdsInstanceCrossBackupPolicyOutput) Retention added in v3.29.0

The number of days for which the cross-region backup files of the instance are retained. Valid values: 7 to 1825. Default value: 7.

func (RdsInstanceCrossBackupPolicyOutput) ToRdsInstanceCrossBackupPolicyOutput added in v3.29.0

func (o RdsInstanceCrossBackupPolicyOutput) ToRdsInstanceCrossBackupPolicyOutput() RdsInstanceCrossBackupPolicyOutput

func (RdsInstanceCrossBackupPolicyOutput) ToRdsInstanceCrossBackupPolicyOutputWithContext added in v3.29.0

func (o RdsInstanceCrossBackupPolicyOutput) ToRdsInstanceCrossBackupPolicyOutputWithContext(ctx context.Context) RdsInstanceCrossBackupPolicyOutput

type RdsInstanceCrossBackupPolicyState added in v3.29.0

type RdsInstanceCrossBackupPolicyState struct {
	// The status of the overall cross-region backup switch on the instance. Valid values:
	// - Disabled
	// - Enable
	BackupEnabled pulumi.StringPtrInput
	// The time when cross-region backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	BackupEnabledTime pulumi.StringPtrInput
	// The ID of the destination region where the cross-region backup files of the instance are stored.
	CrossBackupRegion pulumi.StringPtrInput
	// The policy that is used to save cross-region backups of the instance. Default value: 1. The default value 1 indicates that all cross-region backups are saved.
	CrossBackupType pulumi.StringPtrInput
	// The state of the instance. For more information, see Instance status.
	DbInstanceStatus pulumi.StringPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// The lock status of the instance. Valid values:
	// - Unlock: The instance is not locked.
	// - ManualLock: The instance is manually locked.
	// - LockByExpiration: The instance is locked upon expiration.
	// - LockByRestoration: The instance is automatically locked before a rollback.
	// - LockByDiskQuota: The instance is automatically locked because its storage space is exhausted. In this situation, the instance is inaccessible.
	LockMode pulumi.StringPtrInput
	// The status of the cross-region log backup feature on the instance. Valid values:
	// - Enable: Enables the feature.
	// - Disabled: Disables the feature.
	LogBackupEnabled pulumi.StringPtrInput
	// The time when cross-region log backup was enabled on the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	LogBackupEnabledTime pulumi.StringPtrInput
	// The policy that is used to retain cross-region backups of the instance. Default value: 1. The default value 1 indicate that cross-region backups are retained based on the specified retention period.
	RetentType pulumi.StringPtrInput
	// The number of days for which the cross-region backup files of the instance are retained. Valid values: 7 to 1825. Default value: 7.
	Retention pulumi.IntPtrInput
}

func (RdsInstanceCrossBackupPolicyState) ElementType added in v3.29.0

type RdsParameterGroup

type RdsParameterGroup struct {
	pulumi.CustomResourceState

	// The database engine. Valid values: `mysql`, `mariadb`, `PostgreSQL`.
	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`; PostgreSQL: `10.0`, `11.0`, `12.0`, `13.0`, `14.0`, `15.0`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Parameter list. See `paramDetail` below.
	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 since 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"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "tf_example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, 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(name),
			ParameterGroupName: pulumi.String(name),
		})
		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

type RdsParameterGroupArgs

type RdsParameterGroupArgs struct {
	// The database engine. Valid values: `mysql`, `mariadb`, `PostgreSQL`.
	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`; PostgreSQL: `10.0`, `11.0`, `12.0`, `13.0`, `14.0`, `15.0`.
	EngineVersion pulumi.StringInput
	// Parameter list. See `paramDetail` below.
	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) Engine added in v3.27.0

The database engine. Valid values: `mysql`, `mariadb`, `PostgreSQL`.

func (RdsParameterGroupOutput) EngineVersion added in v3.27.0

func (o RdsParameterGroupOutput) EngineVersion() pulumi.StringOutput

The version of the database engine. Valid values: mysql: `5.1`, `5.5`, `5.6`, `5.7`, `8.0`; mariadb: `10.3`; PostgreSQL: `10.0`, `11.0`, `12.0`, `13.0`, `14.0`, `15.0`.

func (RdsParameterGroupOutput) ParamDetails added in v3.27.0

Parameter list. See `paramDetail` below.

func (RdsParameterGroupOutput) ParameterGroupDesc added in v3.27.0

func (o RdsParameterGroupOutput) ParameterGroupDesc() pulumi.StringPtrOutput

The description of the parameter template.

func (RdsParameterGroupOutput) ParameterGroupName added in v3.27.0

func (o RdsParameterGroupOutput) ParameterGroupName() pulumi.StringOutput

The name of the parameter template.

func (RdsParameterGroupOutput) ToRdsParameterGroupOutput

func (o RdsParameterGroupOutput) ToRdsParameterGroupOutput() RdsParameterGroupOutput

func (RdsParameterGroupOutput) ToRdsParameterGroupOutputWithContext

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

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 RdsParameterGroupState

type RdsParameterGroupState struct {
	// The database engine. Valid values: `mysql`, `mariadb`, `PostgreSQL`.
	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`; PostgreSQL: `10.0`, `11.0`, `12.0`, `13.0`, `14.0`, `15.0`.
	EngineVersion pulumi.StringPtrInput
	// Parameter list. See `paramDetail` below.
	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 RdsServiceLinkedRole added in v3.29.0

type RdsServiceLinkedRole struct {
	pulumi.CustomResourceState

	// The Alibaba Cloud Resource Name (ARN) of the role.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The ID of the role.
	RoleId pulumi.StringOutput `pulumi:"roleId"`
	// The name of the role.
	RoleName pulumi.StringOutput `pulumi:"roleName"`
	// The product name for SLR. RDS can automatically create the following service-linked roles: `AliyunServiceRoleForRdsPgsqlOnEcs`, `AliyunServiceRoleForRDSProxyOnEcs`.
	ServiceName pulumi.StringOutput `pulumi:"serviceName"`
}

Provides a RDS Service Linked Role.

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

> **NOTE:** Available since v1.189.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.NewRdsServiceLinkedRole(ctx, "default", &rds.RdsServiceLinkedRoleArgs{
			ServiceName: pulumi.String("AliyunServiceRoleForRdsPgsqlOnEcs"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

RDS Service Linked Role can be imported using the id, e.g.

```sh $ pulumi import alicloud:rds/rdsServiceLinkedRole:RdsServiceLinkedRole default <service_name> ```

func GetRdsServiceLinkedRole added in v3.29.0

func GetRdsServiceLinkedRole(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsServiceLinkedRoleState, opts ...pulumi.ResourceOption) (*RdsServiceLinkedRole, error)

GetRdsServiceLinkedRole gets an existing RdsServiceLinkedRole 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 NewRdsServiceLinkedRole added in v3.29.0

func NewRdsServiceLinkedRole(ctx *pulumi.Context,
	name string, args *RdsServiceLinkedRoleArgs, opts ...pulumi.ResourceOption) (*RdsServiceLinkedRole, error)

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

func (*RdsServiceLinkedRole) ElementType added in v3.29.0

func (*RdsServiceLinkedRole) ElementType() reflect.Type

func (*RdsServiceLinkedRole) ToRdsServiceLinkedRoleOutput added in v3.29.0

func (i *RdsServiceLinkedRole) ToRdsServiceLinkedRoleOutput() RdsServiceLinkedRoleOutput

func (*RdsServiceLinkedRole) ToRdsServiceLinkedRoleOutputWithContext added in v3.29.0

func (i *RdsServiceLinkedRole) ToRdsServiceLinkedRoleOutputWithContext(ctx context.Context) RdsServiceLinkedRoleOutput

type RdsServiceLinkedRoleArgs added in v3.29.0

type RdsServiceLinkedRoleArgs struct {
	// The product name for SLR. RDS can automatically create the following service-linked roles: `AliyunServiceRoleForRdsPgsqlOnEcs`, `AliyunServiceRoleForRDSProxyOnEcs`.
	ServiceName pulumi.StringInput
}

The set of arguments for constructing a RdsServiceLinkedRole resource.

func (RdsServiceLinkedRoleArgs) ElementType added in v3.29.0

func (RdsServiceLinkedRoleArgs) ElementType() reflect.Type

type RdsServiceLinkedRoleArray added in v3.29.0

type RdsServiceLinkedRoleArray []RdsServiceLinkedRoleInput

func (RdsServiceLinkedRoleArray) ElementType added in v3.29.0

func (RdsServiceLinkedRoleArray) ElementType() reflect.Type

func (RdsServiceLinkedRoleArray) ToRdsServiceLinkedRoleArrayOutput added in v3.29.0

func (i RdsServiceLinkedRoleArray) ToRdsServiceLinkedRoleArrayOutput() RdsServiceLinkedRoleArrayOutput

func (RdsServiceLinkedRoleArray) ToRdsServiceLinkedRoleArrayOutputWithContext added in v3.29.0

func (i RdsServiceLinkedRoleArray) ToRdsServiceLinkedRoleArrayOutputWithContext(ctx context.Context) RdsServiceLinkedRoleArrayOutput

type RdsServiceLinkedRoleArrayInput added in v3.29.0

type RdsServiceLinkedRoleArrayInput interface {
	pulumi.Input

	ToRdsServiceLinkedRoleArrayOutput() RdsServiceLinkedRoleArrayOutput
	ToRdsServiceLinkedRoleArrayOutputWithContext(context.Context) RdsServiceLinkedRoleArrayOutput
}

RdsServiceLinkedRoleArrayInput is an input type that accepts RdsServiceLinkedRoleArray and RdsServiceLinkedRoleArrayOutput values. You can construct a concrete instance of `RdsServiceLinkedRoleArrayInput` via:

RdsServiceLinkedRoleArray{ RdsServiceLinkedRoleArgs{...} }

type RdsServiceLinkedRoleArrayOutput added in v3.29.0

type RdsServiceLinkedRoleArrayOutput struct{ *pulumi.OutputState }

func (RdsServiceLinkedRoleArrayOutput) ElementType added in v3.29.0

func (RdsServiceLinkedRoleArrayOutput) Index added in v3.29.0

func (RdsServiceLinkedRoleArrayOutput) ToRdsServiceLinkedRoleArrayOutput added in v3.29.0

func (o RdsServiceLinkedRoleArrayOutput) ToRdsServiceLinkedRoleArrayOutput() RdsServiceLinkedRoleArrayOutput

func (RdsServiceLinkedRoleArrayOutput) ToRdsServiceLinkedRoleArrayOutputWithContext added in v3.29.0

func (o RdsServiceLinkedRoleArrayOutput) ToRdsServiceLinkedRoleArrayOutputWithContext(ctx context.Context) RdsServiceLinkedRoleArrayOutput

type RdsServiceLinkedRoleInput added in v3.29.0

type RdsServiceLinkedRoleInput interface {
	pulumi.Input

	ToRdsServiceLinkedRoleOutput() RdsServiceLinkedRoleOutput
	ToRdsServiceLinkedRoleOutputWithContext(ctx context.Context) RdsServiceLinkedRoleOutput
}

type RdsServiceLinkedRoleMap added in v3.29.0

type RdsServiceLinkedRoleMap map[string]RdsServiceLinkedRoleInput

func (RdsServiceLinkedRoleMap) ElementType added in v3.29.0

func (RdsServiceLinkedRoleMap) ElementType() reflect.Type

func (RdsServiceLinkedRoleMap) ToRdsServiceLinkedRoleMapOutput added in v3.29.0

func (i RdsServiceLinkedRoleMap) ToRdsServiceLinkedRoleMapOutput() RdsServiceLinkedRoleMapOutput

func (RdsServiceLinkedRoleMap) ToRdsServiceLinkedRoleMapOutputWithContext added in v3.29.0

func (i RdsServiceLinkedRoleMap) ToRdsServiceLinkedRoleMapOutputWithContext(ctx context.Context) RdsServiceLinkedRoleMapOutput

type RdsServiceLinkedRoleMapInput added in v3.29.0

type RdsServiceLinkedRoleMapInput interface {
	pulumi.Input

	ToRdsServiceLinkedRoleMapOutput() RdsServiceLinkedRoleMapOutput
	ToRdsServiceLinkedRoleMapOutputWithContext(context.Context) RdsServiceLinkedRoleMapOutput
}

RdsServiceLinkedRoleMapInput is an input type that accepts RdsServiceLinkedRoleMap and RdsServiceLinkedRoleMapOutput values. You can construct a concrete instance of `RdsServiceLinkedRoleMapInput` via:

RdsServiceLinkedRoleMap{ "key": RdsServiceLinkedRoleArgs{...} }

type RdsServiceLinkedRoleMapOutput added in v3.29.0

type RdsServiceLinkedRoleMapOutput struct{ *pulumi.OutputState }

func (RdsServiceLinkedRoleMapOutput) ElementType added in v3.29.0

func (RdsServiceLinkedRoleMapOutput) MapIndex added in v3.29.0

func (RdsServiceLinkedRoleMapOutput) ToRdsServiceLinkedRoleMapOutput added in v3.29.0

func (o RdsServiceLinkedRoleMapOutput) ToRdsServiceLinkedRoleMapOutput() RdsServiceLinkedRoleMapOutput

func (RdsServiceLinkedRoleMapOutput) ToRdsServiceLinkedRoleMapOutputWithContext added in v3.29.0

func (o RdsServiceLinkedRoleMapOutput) ToRdsServiceLinkedRoleMapOutputWithContext(ctx context.Context) RdsServiceLinkedRoleMapOutput

type RdsServiceLinkedRoleOutput added in v3.29.0

type RdsServiceLinkedRoleOutput struct{ *pulumi.OutputState }

func (RdsServiceLinkedRoleOutput) Arn added in v3.29.0

The Alibaba Cloud Resource Name (ARN) of the role.

func (RdsServiceLinkedRoleOutput) ElementType added in v3.29.0

func (RdsServiceLinkedRoleOutput) ElementType() reflect.Type

func (RdsServiceLinkedRoleOutput) RoleId added in v3.29.0

The ID of the role.

func (RdsServiceLinkedRoleOutput) RoleName added in v3.29.0

The name of the role.

func (RdsServiceLinkedRoleOutput) ServiceName added in v3.29.0

The product name for SLR. RDS can automatically create the following service-linked roles: `AliyunServiceRoleForRdsPgsqlOnEcs`, `AliyunServiceRoleForRDSProxyOnEcs`.

func (RdsServiceLinkedRoleOutput) ToRdsServiceLinkedRoleOutput added in v3.29.0

func (o RdsServiceLinkedRoleOutput) ToRdsServiceLinkedRoleOutput() RdsServiceLinkedRoleOutput

func (RdsServiceLinkedRoleOutput) ToRdsServiceLinkedRoleOutputWithContext added in v3.29.0

func (o RdsServiceLinkedRoleOutput) ToRdsServiceLinkedRoleOutputWithContext(ctx context.Context) RdsServiceLinkedRoleOutput

type RdsServiceLinkedRoleState added in v3.29.0

type RdsServiceLinkedRoleState struct {
	// The Alibaba Cloud Resource Name (ARN) of the role.
	Arn pulumi.StringPtrInput
	// The ID of the role.
	RoleId pulumi.StringPtrInput
	// The name of the role.
	RoleName pulumi.StringPtrInput
	// The product name for SLR. RDS can automatically create the following service-linked roles: `AliyunServiceRoleForRdsPgsqlOnEcs`, `AliyunServiceRoleForRDSProxyOnEcs`.
	ServiceName pulumi.StringPtrInput
}

func (RdsServiceLinkedRoleState) ElementType added in v3.29.0

func (RdsServiceLinkedRoleState) ElementType() reflect.Type

type RdsUpgradeDbInstance added in v3.16.0

type RdsUpgradeDbInstance 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"`
	// 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"`
	// 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 time at which ApsaraDB RDS collects the statistics of the new instance.
	// * **Before**: ApsaraDB RDS collects the statistics of the new instance before the switchover to ensure service stability. If the original instance contains a large amount of data, the upgrade may require a long period of time.
	// * **After**: ApsaraDB RDS collects the statistics of the new instance after the switchover to accelerate the upgrade. If you access tables for which no statistics are generated, the query plans that you specify may be inaccurately executed. In addition, your database service may be unavailable during peak hours.
	//
	// > **NOTE** If you set the SwitchOver parameter to false, the value Before specifies that ApsaraDB RDS collects the statistics of the new instance before the new instance starts to process read and write requests, and the value After specifies that ApsaraDB RDS collects the statistics of the new instance after the new instance starts to process read and write requests.
	CollectStatMode pulumi.StringOutput `pulumi:"collectStatMode"`
	// 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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	DbInstanceClass pulumi.StringOutput `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription pulumi.StringOutput `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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	DbName pulumi.StringPtrOutput `pulumi:"dbName"`
	// 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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// 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.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrOutput `pulumi:"encryptionKey"`
	// Database type. Value options: MySQL, SQLServer, PostgreSQL.
	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**.
	// * 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). See `parameters` below.
	Parameters RdsUpgradeDbInstanceParameterArrayOutput `pulumi:"parameters"`
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs RdsUpgradeDbInstancePgHbaConfArrayOutput `pulumi:"pgHbaConfs"`
	// 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"`
	// 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/help/en/ram/user-guide/ram-role-overview).
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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"`
	// Specifies whether ApsaraDB RDS automatically switches your workloads over to the new instance after data is migrated to the new instance. Valid values:
	// * **true**: ApsaraDB RDS automatically switches workloads over to the new instance. If you set this parameter to true, you must take note of the following information:
	// * After the switchover is complete, you cannot roll your workloads back to the original instance. Proceed with caution.
	// * During the switchover, the original instance processes only read requests. You must perform the switchover during off-peak hours.
	// * If read-only instances are attached to the original instance, you can set this parameter only to false. In this case, the read-only instances that are attached to the original instance cannot be cloned. After the upgrade is complete, you must create read-only instances for the new instance.
	// * **false**: ApsaraDB RDS does not automatically switch your workloads over to the new instance. Before you perform an upgrade, we recommend that you set this parameter to false to test whether the new major engine version is compatible with your workloads. If you set this parameter to false, you must take note of the following information:
	// * The data migration does not interrupt your workloads on the original instance.
	// * After data is migrated to the new instance, you must update the endpoint configuration on your application. This update requires you to replace the endpoint of the original instance with the endpoint of the new instance. For more information about how to view the endpoint of an instance, see [View and change the internal and public endpoints and port numbers of an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/doc-detail/96788.htm).
	SwitchOver pulumi.StringOutput `pulumi:"switchOver"`
	// 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 time at which ApsaraDB RDS switches your workloads over to the new instance. This parameter is used together with the SwitchOver parameter and takes effect only when you set the SwitchOver parameter to true. Valid values:
	// * **Immediate**: After data is migrated to the new instance, ApsaraDB RDS immediately switches your workloads over to the new instance.
	// * **MaintainTime**: After data is migrated to the new instance, ApsaraDB RDS switches your workloads over to the new instance during the maintenance window that you specify. You can call the [ModifyDBInstanceMaintainTime](https://www.alibabacloud.com/help/doc-detail/26249.htm) operation to change the maintenance window of an instance.
	SwitchTimeMode pulumi.StringPtrOutput `pulumi:"switchTimeMode"`
	// [The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values:
	// * **Sync**: strong synchronization.
	// * **Semi-sync**: Semi-synchronous.
	// * **Async**: asynchronous.
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	SyncMode pulumi.StringOutput `pulumi:"syncMode"`
	// The major engine version of the new instance. The value of this parameter must be the major engine version on which an upgrade check is performed.
	//
	// > **NOTE** You can call the [UpgradeDBInstanceMajorVersionPrecheck](https://www.alibabacloud.com/help/doc-detail/330050.htm) operation to perform an upgrade check on a major engine version.
	TargetMajorVersion pulumi.StringOutput `pulumi:"targetMajorVersion"`
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringOutput `pulumi:"tcpConnectionType"`
	// Specifies whether to enable TDE. Valid values: `Enabled` and `Disabled`.
	TdeStatus pulumi.StringPtrOutput `pulumi:"tdeStatus"`
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The ID of the vSwitch associated with the specified VPC.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	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/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
	// The ID of the zone to which the secondary instance of the new instance belongs. You can specify this parameter only when the original instance runs RDS High-availability Edition. You can select a zone that belongs to the region where the original instance resides. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query zone IDs.
	ZoneIdSlave1 pulumi.StringOutput `pulumi:"zoneIdSlave1"`
}

Provides a RDS Upgrade DB Instance resource.

For information about RDS Upgrade 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 since v1.153.0+.

## Example Usage

### Create a RDS PostgreSQL upgrade instance

```go package main

import (

"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"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("PostgreSQL"),
			EngineVersion:         pulumi.StringRef("13.0"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
		}, nil)
		if err != nil {
			return err
		}
		exampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(example.Zones[0].Id),
			Engine:                pulumi.StringRef("PostgreSQL"),
			EngineVersion:         pulumi.StringRef("13.0"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("cloud_essd"),
			InstanceChargeType:    pulumi.StringRef("PostPaid"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = rds.GetCrossRegions(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "example", &vpc.NetworkArgs{
			VpcName:   pulumi.String("terraform-example"),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "example", &vpc.SwitchArgs{
			VpcId:       exampleNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(example.Zones[0].Id),
			VswitchName: pulumi.String("terraform-example"),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "example", &rds.InstanceArgs{
			Engine:                pulumi.String("PostgreSQL"),
			EngineVersion:         pulumi.String("13.0"),
			DbInstanceStorageType: pulumi.String("cloud_essd"),
			InstanceType:          pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			InstanceName:          pulumi.String("terraform-example"),
			VswitchId:             exampleSwitch.ID(),
			MonitoringPeriod:      pulumi.Int(60),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewRdsUpgradeDbInstance(ctx, "example", &rds.RdsUpgradeDbInstanceArgs{
			SourceDbInstanceId:    exampleInstance.ID(),
			TargetMajorVersion:    pulumi.String("14.0"),
			DbInstanceClass:       exampleInstance.InstanceType,
			DbInstanceStorage:     exampleInstance.InstanceStorage,
			DbInstanceStorageType: exampleInstance.DbInstanceStorageType,
			InstanceNetworkType:   pulumi.String("VPC"),
			CollectStatMode:       pulumi.String("After"),
			SwitchOver:            pulumi.String("false"),
			PaymentType:           pulumi.String("PayAsYouGo"),
			DbInstanceDescription: pulumi.String("terraform-example"),
			VswitchId:             exampleSwitch.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh $ pulumi import alicloud:rds/rdsUpgradeDbInstance:RdsUpgradeDbInstance example <id> ```

func GetRdsUpgradeDbInstance added in v3.16.0

func GetRdsUpgradeDbInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RdsUpgradeDbInstanceState, opts ...pulumi.ResourceOption) (*RdsUpgradeDbInstance, error)

GetRdsUpgradeDbInstance gets an existing RdsUpgradeDbInstance 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 NewRdsUpgradeDbInstance added in v3.16.0

func NewRdsUpgradeDbInstance(ctx *pulumi.Context,
	name string, args *RdsUpgradeDbInstanceArgs, opts ...pulumi.ResourceOption) (*RdsUpgradeDbInstance, error)

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

func (*RdsUpgradeDbInstance) ElementType added in v3.16.0

func (*RdsUpgradeDbInstance) ElementType() reflect.Type

func (*RdsUpgradeDbInstance) ToRdsUpgradeDbInstanceOutput added in v3.16.0

func (i *RdsUpgradeDbInstance) ToRdsUpgradeDbInstanceOutput() RdsUpgradeDbInstanceOutput

func (*RdsUpgradeDbInstance) ToRdsUpgradeDbInstanceOutputWithContext added in v3.16.0

func (i *RdsUpgradeDbInstance) ToRdsUpgradeDbInstanceOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceOutput

type RdsUpgradeDbInstanceArgs added in v3.16.0

type RdsUpgradeDbInstanceArgs 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
	// 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
	// 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 time at which ApsaraDB RDS collects the statistics of the new instance.
	// * **Before**: ApsaraDB RDS collects the statistics of the new instance before the switchover to ensure service stability. If the original instance contains a large amount of data, the upgrade may require a long period of time.
	// * **After**: ApsaraDB RDS collects the statistics of the new instance after the switchover to accelerate the upgrade. If you access tables for which no statistics are generated, the query plans that you specify may be inaccurately executed. In addition, your database service may be unavailable during peak hours.
	//
	// > **NOTE** If you set the SwitchOver parameter to false, the value Before specifies that ApsaraDB RDS collects the statistics of the new instance before the new instance starts to process read and write requests, and the value After specifies that ApsaraDB RDS collects the statistics of the new instance after the new instance starts to process read and write requests.
	CollectStatMode pulumi.StringInput
	// 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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	DbInstanceClass pulumi.StringInput
	// 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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	DbInstanceStorage pulumi.IntInput
	// 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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	DbName 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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL.
	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**.
	// * 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.StringInput
	// 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). See `parameters` below.
	Parameters RdsUpgradeDbInstanceParameterArrayInput
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs RdsUpgradeDbInstancePgHbaConfArrayInput
	// 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
	// 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/help/en/ram/user-guide/ram-role-overview).
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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
	// Specifies whether ApsaraDB RDS automatically switches your workloads over to the new instance after data is migrated to the new instance. Valid values:
	// * **true**: ApsaraDB RDS automatically switches workloads over to the new instance. If you set this parameter to true, you must take note of the following information:
	// * After the switchover is complete, you cannot roll your workloads back to the original instance. Proceed with caution.
	// * During the switchover, the original instance processes only read requests. You must perform the switchover during off-peak hours.
	// * If read-only instances are attached to the original instance, you can set this parameter only to false. In this case, the read-only instances that are attached to the original instance cannot be cloned. After the upgrade is complete, you must create read-only instances for the new instance.
	// * **false**: ApsaraDB RDS does not automatically switch your workloads over to the new instance. Before you perform an upgrade, we recommend that you set this parameter to false to test whether the new major engine version is compatible with your workloads. If you set this parameter to false, you must take note of the following information:
	// * The data migration does not interrupt your workloads on the original instance.
	// * After data is migrated to the new instance, you must update the endpoint configuration on your application. This update requires you to replace the endpoint of the original instance with the endpoint of the new instance. For more information about how to view the endpoint of an instance, see [View and change the internal and public endpoints and port numbers of an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/doc-detail/96788.htm).
	SwitchOver pulumi.StringInput
	// 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 time at which ApsaraDB RDS switches your workloads over to the new instance. This parameter is used together with the SwitchOver parameter and takes effect only when you set the SwitchOver parameter to true. Valid values:
	// * **Immediate**: After data is migrated to the new instance, ApsaraDB RDS immediately switches your workloads over to the new instance.
	// * **MaintainTime**: After data is migrated to the new instance, ApsaraDB RDS switches your workloads over to the new instance during the maintenance window that you specify. You can call the [ModifyDBInstanceMaintainTime](https://www.alibabacloud.com/help/doc-detail/26249.htm) operation to change the maintenance window of an instance.
	SwitchTimeMode 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.
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	SyncMode pulumi.StringPtrInput
	// The major engine version of the new instance. The value of this parameter must be the major engine version on which an upgrade check is performed.
	//
	// > **NOTE** You can call the [UpgradeDBInstanceMajorVersionPrecheck](https://www.alibabacloud.com/help/doc-detail/330050.htm) operation to perform an upgrade check on a major engine version.
	TargetMajorVersion pulumi.StringInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringPtrInput
	// Specifies whether to enable TDE. Valid values: `Enabled` and `Disabled`.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneId pulumi.StringPtrInput
	// The ID of the zone to which the secondary instance of the new instance belongs. You can specify this parameter only when the original instance runs RDS High-availability Edition. You can select a zone that belongs to the region where the original instance resides. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query zone IDs.
	ZoneIdSlave1 pulumi.StringPtrInput
}

The set of arguments for constructing a RdsUpgradeDbInstance resource.

func (RdsUpgradeDbInstanceArgs) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceArgs) ElementType() reflect.Type

type RdsUpgradeDbInstanceArray added in v3.16.0

type RdsUpgradeDbInstanceArray []RdsUpgradeDbInstanceInput

func (RdsUpgradeDbInstanceArray) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceArray) ElementType() reflect.Type

func (RdsUpgradeDbInstanceArray) ToRdsUpgradeDbInstanceArrayOutput added in v3.16.0

func (i RdsUpgradeDbInstanceArray) ToRdsUpgradeDbInstanceArrayOutput() RdsUpgradeDbInstanceArrayOutput

func (RdsUpgradeDbInstanceArray) ToRdsUpgradeDbInstanceArrayOutputWithContext added in v3.16.0

func (i RdsUpgradeDbInstanceArray) ToRdsUpgradeDbInstanceArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceArrayOutput

type RdsUpgradeDbInstanceArrayInput added in v3.16.0

type RdsUpgradeDbInstanceArrayInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstanceArrayOutput() RdsUpgradeDbInstanceArrayOutput
	ToRdsUpgradeDbInstanceArrayOutputWithContext(context.Context) RdsUpgradeDbInstanceArrayOutput
}

RdsUpgradeDbInstanceArrayInput is an input type that accepts RdsUpgradeDbInstanceArray and RdsUpgradeDbInstanceArrayOutput values. You can construct a concrete instance of `RdsUpgradeDbInstanceArrayInput` via:

RdsUpgradeDbInstanceArray{ RdsUpgradeDbInstanceArgs{...} }

type RdsUpgradeDbInstanceArrayOutput added in v3.16.0

type RdsUpgradeDbInstanceArrayOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstanceArrayOutput) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceArrayOutput) Index added in v3.16.0

func (RdsUpgradeDbInstanceArrayOutput) ToRdsUpgradeDbInstanceArrayOutput added in v3.16.0

func (o RdsUpgradeDbInstanceArrayOutput) ToRdsUpgradeDbInstanceArrayOutput() RdsUpgradeDbInstanceArrayOutput

func (RdsUpgradeDbInstanceArrayOutput) ToRdsUpgradeDbInstanceArrayOutputWithContext added in v3.16.0

func (o RdsUpgradeDbInstanceArrayOutput) ToRdsUpgradeDbInstanceArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceArrayOutput

type RdsUpgradeDbInstanceInput added in v3.16.0

type RdsUpgradeDbInstanceInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstanceOutput() RdsUpgradeDbInstanceOutput
	ToRdsUpgradeDbInstanceOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceOutput
}

type RdsUpgradeDbInstanceMap added in v3.16.0

type RdsUpgradeDbInstanceMap map[string]RdsUpgradeDbInstanceInput

func (RdsUpgradeDbInstanceMap) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceMap) ElementType() reflect.Type

func (RdsUpgradeDbInstanceMap) ToRdsUpgradeDbInstanceMapOutput added in v3.16.0

func (i RdsUpgradeDbInstanceMap) ToRdsUpgradeDbInstanceMapOutput() RdsUpgradeDbInstanceMapOutput

func (RdsUpgradeDbInstanceMap) ToRdsUpgradeDbInstanceMapOutputWithContext added in v3.16.0

func (i RdsUpgradeDbInstanceMap) ToRdsUpgradeDbInstanceMapOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceMapOutput

type RdsUpgradeDbInstanceMapInput added in v3.16.0

type RdsUpgradeDbInstanceMapInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstanceMapOutput() RdsUpgradeDbInstanceMapOutput
	ToRdsUpgradeDbInstanceMapOutputWithContext(context.Context) RdsUpgradeDbInstanceMapOutput
}

RdsUpgradeDbInstanceMapInput is an input type that accepts RdsUpgradeDbInstanceMap and RdsUpgradeDbInstanceMapOutput values. You can construct a concrete instance of `RdsUpgradeDbInstanceMapInput` via:

RdsUpgradeDbInstanceMap{ "key": RdsUpgradeDbInstanceArgs{...} }

type RdsUpgradeDbInstanceMapOutput added in v3.16.0

type RdsUpgradeDbInstanceMapOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstanceMapOutput) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceMapOutput) MapIndex added in v3.16.0

func (RdsUpgradeDbInstanceMapOutput) ToRdsUpgradeDbInstanceMapOutput added in v3.16.0

func (o RdsUpgradeDbInstanceMapOutput) ToRdsUpgradeDbInstanceMapOutput() RdsUpgradeDbInstanceMapOutput

func (RdsUpgradeDbInstanceMapOutput) ToRdsUpgradeDbInstanceMapOutputWithContext added in v3.16.0

func (o RdsUpgradeDbInstanceMapOutput) ToRdsUpgradeDbInstanceMapOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceMapOutput

type RdsUpgradeDbInstanceOutput added in v3.16.0

type RdsUpgradeDbInstanceOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstanceOutput) Acl added in v3.27.0

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)`.

func (RdsUpgradeDbInstanceOutput) AutoUpgradeMinorVersion added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) AutoUpgradeMinorVersion() pulumi.StringOutput

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.

func (RdsUpgradeDbInstanceOutput) CaType added in v3.27.0

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`.

func (RdsUpgradeDbInstanceOutput) Certificate added in v3.27.0

The file that contains the certificate used for TDE.

func (RdsUpgradeDbInstanceOutput) ClientCaCert added in v3.27.0

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.

func (RdsUpgradeDbInstanceOutput) ClientCaEnabled added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ClientCaEnabled() pulumi.IntPtrOutput

The client ca enabled.

func (RdsUpgradeDbInstanceOutput) ClientCertRevocationList added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ClientCertRevocationList() pulumi.StringPtrOutput

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.

func (RdsUpgradeDbInstanceOutput) ClientCrlEnabled added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ClientCrlEnabled() pulumi.IntPtrOutput

The client crl enabled.

func (RdsUpgradeDbInstanceOutput) CollectStatMode added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) CollectStatMode() pulumi.StringOutput

The time at which ApsaraDB RDS collects the statistics of the new instance. * **Before**: ApsaraDB RDS collects the statistics of the new instance before the switchover to ensure service stability. If the original instance contains a large amount of data, the upgrade may require a long period of time. * **After**: ApsaraDB RDS collects the statistics of the new instance after the switchover to accelerate the upgrade. If you access tables for which no statistics are generated, the query plans that you specify may be inaccurately executed. In addition, your database service may be unavailable during peak hours.

> **NOTE** If you set the SwitchOver parameter to false, the value Before specifies that ApsaraDB RDS collects the statistics of the new instance before the new instance starts to process read and write requests, and the value After specifies that ApsaraDB RDS collects the statistics of the new instance after the new instance starts to process read and write requests.

func (RdsUpgradeDbInstanceOutput) ConnectionString added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ConnectionString() pulumi.StringOutput

The database connection address.

func (RdsUpgradeDbInstanceOutput) ConnectionStringPrefix added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ConnectionStringPrefix() pulumi.StringPtrOutput

The connection string prefix.

func (RdsUpgradeDbInstanceOutput) DbInstanceClass added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DbInstanceClass() pulumi.StringOutput

The instance type of the new instance. For information, see [Primary ApsaraDB RDS instance types](https://www.alibabacloud.com/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).

func (RdsUpgradeDbInstanceOutput) DbInstanceDescription added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DbInstanceDescription() pulumi.StringOutput

The db instance description.

func (RdsUpgradeDbInstanceOutput) DbInstanceStorage added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DbInstanceStorage() pulumi.IntOutput

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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).

> **NOTE:** The default value of this parameter is the storage capacity of the original instance.

func (RdsUpgradeDbInstanceOutput) DbInstanceStorageType added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DbInstanceStorageType() pulumi.StringOutput

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.

func (RdsUpgradeDbInstanceOutput) DbName added in v3.27.0

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 (,).

> **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.

func (RdsUpgradeDbInstanceOutput) DedicatedHostGroupId added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DedicatedHostGroupId() pulumi.StringPtrOutput

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.

func (RdsUpgradeDbInstanceOutput) DeletionProtection added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

The switch of delete protection. Valid values: - true: delete protect. - false: no delete protect.

> **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.

func (RdsUpgradeDbInstanceOutput) Direction added in v3.27.0

The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.

func (RdsUpgradeDbInstanceOutput) EffectiveTime added in v3.27.0

The effective time.

func (RdsUpgradeDbInstanceOutput) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceOutput) ElementType() reflect.Type

func (RdsUpgradeDbInstanceOutput) EncryptionKey added in v3.27.0

The ID of the private key.

> **NOTE:** This parameter is available only when the instance runs MySQL.

func (RdsUpgradeDbInstanceOutput) Engine added in v3.27.0

Database type. Value options: MySQL, SQLServer, PostgreSQL.

func (RdsUpgradeDbInstanceOutput) EngineVersion added in v3.27.0

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**. * MariaDB: **10.3**.

func (RdsUpgradeDbInstanceOutput) ForceRestart added in v3.27.0

Set it to true to make some parameter efficient when modifying them. Default to false.

func (RdsUpgradeDbInstanceOutput) HaMode added in v3.27.0

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.

func (RdsUpgradeDbInstanceOutput) InstanceNetworkType added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) InstanceNetworkType() pulumi.StringOutput

The network type of the instance. Valid values: * **Classic**: Classic Network. * **VPC**: VPC.

func (RdsUpgradeDbInstanceOutput) MaintainTime added in v3.27.0

The maintainable time period of the instance. Format: <I> HH:mm</I> Z-<I> HH:mm</I> Z(UTC time).

func (RdsUpgradeDbInstanceOutput) Parameters added in v3.27.0

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). See `parameters` below.

func (RdsUpgradeDbInstanceOutput) Password added in v3.27.0

The password of the certificate.

> **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.

func (RdsUpgradeDbInstanceOutput) PaymentType added in v3.27.0

The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.

func (RdsUpgradeDbInstanceOutput) PgHbaConfs added in v3.27.0

The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.

func (RdsUpgradeDbInstanceOutput) Port added in v3.27.0

The port.

func (RdsUpgradeDbInstanceOutput) PrivateIpAddress added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) PrivateIpAddress() pulumi.StringOutput

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**.

func (RdsUpgradeDbInstanceOutput) PrivateKey added in v3.27.0

The file that contains the private key used for TDE.

func (RdsUpgradeDbInstanceOutput) ReleasedKeepPolicy added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ReleasedKeepPolicy() pulumi.StringPtrOutput

The released keep policy.

func (RdsUpgradeDbInstanceOutput) ReplicationAcl added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) ReplicationAcl() pulumi.StringOutput

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)`.

func (RdsUpgradeDbInstanceOutput) ResourceGroupId added in v3.27.0

The resource group id.

func (RdsUpgradeDbInstanceOutput) RoleArn added in v3.27.0

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/help/en/ram/user-guide/ram-role-overview).

> **NOTE:** This parameter is available only when the instance runs MySQL.

func (RdsUpgradeDbInstanceOutput) SecurityIps added in v3.27.0

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).

> **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.

func (RdsUpgradeDbInstanceOutput) ServerCert added in v3.27.0

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.

func (RdsUpgradeDbInstanceOutput) ServerKey added in v3.27.0

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.

func (RdsUpgradeDbInstanceOutput) SourceBiz added in v3.27.0

The source biz.

func (RdsUpgradeDbInstanceOutput) SourceDbInstanceId added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) SourceDbInstanceId() pulumi.StringOutput

The source db instance id.

func (RdsUpgradeDbInstanceOutput) SslEnabled added in v3.27.0

Enable or disable SSL. Valid values: `0` and `1`.

func (RdsUpgradeDbInstanceOutput) SwitchOver added in v3.27.0

Specifies whether ApsaraDB RDS automatically switches your workloads over to the new instance after data is migrated to the new instance. Valid values: * **true**: ApsaraDB RDS automatically switches workloads over to the new instance. If you set this parameter to true, you must take note of the following information: * After the switchover is complete, you cannot roll your workloads back to the original instance. Proceed with caution. * During the switchover, the original instance processes only read requests. You must perform the switchover during off-peak hours. * If read-only instances are attached to the original instance, you can set this parameter only to false. In this case, the read-only instances that are attached to the original instance cannot be cloned. After the upgrade is complete, you must create read-only instances for the new instance. * **false**: ApsaraDB RDS does not automatically switch your workloads over to the new instance. Before you perform an upgrade, we recommend that you set this parameter to false to test whether the new major engine version is compatible with your workloads. If you set this parameter to false, you must take note of the following information: * The data migration does not interrupt your workloads on the original instance. * After data is migrated to the new instance, you must update the endpoint configuration on your application. This update requires you to replace the endpoint of the original instance with the endpoint of the new instance. For more information about how to view the endpoint of an instance, see [View and change the internal and public endpoints and port numbers of an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/doc-detail/96788.htm).

func (RdsUpgradeDbInstanceOutput) SwitchTime added in v3.27.0

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.

func (RdsUpgradeDbInstanceOutput) SwitchTimeMode added in v3.27.0

The time at which ApsaraDB RDS switches your workloads over to the new instance. This parameter is used together with the SwitchOver parameter and takes effect only when you set the SwitchOver parameter to true. Valid values: * **Immediate**: After data is migrated to the new instance, ApsaraDB RDS immediately switches your workloads over to the new instance. * **MaintainTime**: After data is migrated to the new instance, ApsaraDB RDS switches your workloads over to the new instance during the maintenance window that you specify. You can call the [ModifyDBInstanceMaintainTime](https://www.alibabacloud.com/help/doc-detail/26249.htm) operation to change the maintenance window of an instance.

func (RdsUpgradeDbInstanceOutput) SyncMode added in v3.27.0

[The data replication mode](https://www.alibabacloud.com/help/doc-detail/96055.htm). Valid values: * **Sync**: strong synchronization. * **Semi-sync**: Semi-synchronous. * **Async**: asynchronous.

> **NOTE:** SQL Server 2017 cluster version is currently not supported.

func (RdsUpgradeDbInstanceOutput) TargetMajorVersion added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) TargetMajorVersion() pulumi.StringOutput

The major engine version of the new instance. The value of this parameter must be the major engine version on which an upgrade check is performed.

> **NOTE** You can call the [UpgradeDBInstanceMajorVersionPrecheck](https://www.alibabacloud.com/help/doc-detail/330050.htm) operation to perform an upgrade check on a major engine version.

func (RdsUpgradeDbInstanceOutput) TcpConnectionType added in v3.27.0

func (o RdsUpgradeDbInstanceOutput) TcpConnectionType() pulumi.StringOutput

The availability check method of the instance. Valid values: - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance. - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.

func (RdsUpgradeDbInstanceOutput) TdeStatus added in v3.27.0

Specifies whether to enable TDE. Valid values: `Enabled` and `Disabled`.

func (RdsUpgradeDbInstanceOutput) ToRdsUpgradeDbInstanceOutput added in v3.16.0

func (o RdsUpgradeDbInstanceOutput) ToRdsUpgradeDbInstanceOutput() RdsUpgradeDbInstanceOutput

func (RdsUpgradeDbInstanceOutput) ToRdsUpgradeDbInstanceOutputWithContext added in v3.16.0

func (o RdsUpgradeDbInstanceOutput) ToRdsUpgradeDbInstanceOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceOutput

func (RdsUpgradeDbInstanceOutput) VpcId added in v3.27.0

The ID of the VPC to which the new instance belongs.

> **NOTE:** Make sure that the VPC resides in the specified region.

func (RdsUpgradeDbInstanceOutput) VswitchId added in v3.27.0

The ID of the vSwitch associated with the specified VPC.

> **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.

func (RdsUpgradeDbInstanceOutput) ZoneId added in v3.27.0

The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.

> **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.

func (RdsUpgradeDbInstanceOutput) ZoneIdSlave1 added in v3.27.0

The ID of the zone to which the secondary instance of the new instance belongs. You can specify this parameter only when the original instance runs RDS High-availability Edition. You can select a zone that belongs to the region where the original instance resides. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query zone IDs.

type RdsUpgradeDbInstanceParameter added in v3.16.0

type RdsUpgradeDbInstanceParameter struct {
	// The parameter name.
	Name string `pulumi:"name"`
	// The parameter value.
	Value string `pulumi:"value"`
}

type RdsUpgradeDbInstanceParameterArgs added in v3.16.0

type RdsUpgradeDbInstanceParameterArgs struct {
	// The parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The parameter value.
	Value pulumi.StringInput `pulumi:"value"`
}

func (RdsUpgradeDbInstanceParameterArgs) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceParameterArgs) ToRdsUpgradeDbInstanceParameterOutput added in v3.16.0

func (i RdsUpgradeDbInstanceParameterArgs) ToRdsUpgradeDbInstanceParameterOutput() RdsUpgradeDbInstanceParameterOutput

func (RdsUpgradeDbInstanceParameterArgs) ToRdsUpgradeDbInstanceParameterOutputWithContext added in v3.16.0

func (i RdsUpgradeDbInstanceParameterArgs) ToRdsUpgradeDbInstanceParameterOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceParameterOutput

type RdsUpgradeDbInstanceParameterArray added in v3.16.0

type RdsUpgradeDbInstanceParameterArray []RdsUpgradeDbInstanceParameterInput

func (RdsUpgradeDbInstanceParameterArray) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceParameterArray) ToRdsUpgradeDbInstanceParameterArrayOutput added in v3.16.0

func (i RdsUpgradeDbInstanceParameterArray) ToRdsUpgradeDbInstanceParameterArrayOutput() RdsUpgradeDbInstanceParameterArrayOutput

func (RdsUpgradeDbInstanceParameterArray) ToRdsUpgradeDbInstanceParameterArrayOutputWithContext added in v3.16.0

func (i RdsUpgradeDbInstanceParameterArray) ToRdsUpgradeDbInstanceParameterArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceParameterArrayOutput

type RdsUpgradeDbInstanceParameterArrayInput added in v3.16.0

type RdsUpgradeDbInstanceParameterArrayInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstanceParameterArrayOutput() RdsUpgradeDbInstanceParameterArrayOutput
	ToRdsUpgradeDbInstanceParameterArrayOutputWithContext(context.Context) RdsUpgradeDbInstanceParameterArrayOutput
}

RdsUpgradeDbInstanceParameterArrayInput is an input type that accepts RdsUpgradeDbInstanceParameterArray and RdsUpgradeDbInstanceParameterArrayOutput values. You can construct a concrete instance of `RdsUpgradeDbInstanceParameterArrayInput` via:

RdsUpgradeDbInstanceParameterArray{ RdsUpgradeDbInstanceParameterArgs{...} }

type RdsUpgradeDbInstanceParameterArrayOutput added in v3.16.0

type RdsUpgradeDbInstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstanceParameterArrayOutput) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceParameterArrayOutput) Index added in v3.16.0

func (RdsUpgradeDbInstanceParameterArrayOutput) ToRdsUpgradeDbInstanceParameterArrayOutput added in v3.16.0

func (o RdsUpgradeDbInstanceParameterArrayOutput) ToRdsUpgradeDbInstanceParameterArrayOutput() RdsUpgradeDbInstanceParameterArrayOutput

func (RdsUpgradeDbInstanceParameterArrayOutput) ToRdsUpgradeDbInstanceParameterArrayOutputWithContext added in v3.16.0

func (o RdsUpgradeDbInstanceParameterArrayOutput) ToRdsUpgradeDbInstanceParameterArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceParameterArrayOutput

type RdsUpgradeDbInstanceParameterInput added in v3.16.0

type RdsUpgradeDbInstanceParameterInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstanceParameterOutput() RdsUpgradeDbInstanceParameterOutput
	ToRdsUpgradeDbInstanceParameterOutputWithContext(context.Context) RdsUpgradeDbInstanceParameterOutput
}

RdsUpgradeDbInstanceParameterInput is an input type that accepts RdsUpgradeDbInstanceParameterArgs and RdsUpgradeDbInstanceParameterOutput values. You can construct a concrete instance of `RdsUpgradeDbInstanceParameterInput` via:

RdsUpgradeDbInstanceParameterArgs{...}

type RdsUpgradeDbInstanceParameterOutput added in v3.16.0

type RdsUpgradeDbInstanceParameterOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstanceParameterOutput) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceParameterOutput) Name added in v3.16.0

The parameter name.

func (RdsUpgradeDbInstanceParameterOutput) ToRdsUpgradeDbInstanceParameterOutput added in v3.16.0

func (o RdsUpgradeDbInstanceParameterOutput) ToRdsUpgradeDbInstanceParameterOutput() RdsUpgradeDbInstanceParameterOutput

func (RdsUpgradeDbInstanceParameterOutput) ToRdsUpgradeDbInstanceParameterOutputWithContext added in v3.16.0

func (o RdsUpgradeDbInstanceParameterOutput) ToRdsUpgradeDbInstanceParameterOutputWithContext(ctx context.Context) RdsUpgradeDbInstanceParameterOutput

func (RdsUpgradeDbInstanceParameterOutput) Value added in v3.16.0

The parameter value.

type RdsUpgradeDbInstancePgHbaConf added in v3.18.0

type RdsUpgradeDbInstancePgHbaConf struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address string `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database string `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask *string `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method string `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option *string `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId int `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type string `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User string `pulumi:"user"`
}

type RdsUpgradeDbInstancePgHbaConfArgs added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfArgs struct {
	// The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.
	Address pulumi.StringInput `pulumi:"address"`
	// The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).
	Database pulumi.StringInput `pulumi:"database"`
	// The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.
	Mask pulumi.StringPtrInput `pulumi:"mask"`
	// The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.
	Method pulumi.StringInput `pulumi:"method"`
	// Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).
	Option pulumi.StringPtrInput `pulumi:"option"`
	// The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.
	PriorityId pulumi.IntInput `pulumi:"priorityId"`
	// The type of connection to the instance. Valid values:
	// * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections.
	// * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections.
	// * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.
	//
	// > **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).
	Type pulumi.StringInput `pulumi:"type"`
	// The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).
	User pulumi.StringInput `pulumi:"user"`
}

func (RdsUpgradeDbInstancePgHbaConfArgs) ElementType added in v3.18.0

func (RdsUpgradeDbInstancePgHbaConfArgs) ToRdsUpgradeDbInstancePgHbaConfOutput added in v3.18.0

func (i RdsUpgradeDbInstancePgHbaConfArgs) ToRdsUpgradeDbInstancePgHbaConfOutput() RdsUpgradeDbInstancePgHbaConfOutput

func (RdsUpgradeDbInstancePgHbaConfArgs) ToRdsUpgradeDbInstancePgHbaConfOutputWithContext added in v3.18.0

func (i RdsUpgradeDbInstancePgHbaConfArgs) ToRdsUpgradeDbInstancePgHbaConfOutputWithContext(ctx context.Context) RdsUpgradeDbInstancePgHbaConfOutput

type RdsUpgradeDbInstancePgHbaConfArray added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfArray []RdsUpgradeDbInstancePgHbaConfInput

func (RdsUpgradeDbInstancePgHbaConfArray) ElementType added in v3.18.0

func (RdsUpgradeDbInstancePgHbaConfArray) ToRdsUpgradeDbInstancePgHbaConfArrayOutput added in v3.18.0

func (i RdsUpgradeDbInstancePgHbaConfArray) ToRdsUpgradeDbInstancePgHbaConfArrayOutput() RdsUpgradeDbInstancePgHbaConfArrayOutput

func (RdsUpgradeDbInstancePgHbaConfArray) ToRdsUpgradeDbInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (i RdsUpgradeDbInstancePgHbaConfArray) ToRdsUpgradeDbInstancePgHbaConfArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstancePgHbaConfArrayOutput

type RdsUpgradeDbInstancePgHbaConfArrayInput added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfArrayInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstancePgHbaConfArrayOutput() RdsUpgradeDbInstancePgHbaConfArrayOutput
	ToRdsUpgradeDbInstancePgHbaConfArrayOutputWithContext(context.Context) RdsUpgradeDbInstancePgHbaConfArrayOutput
}

RdsUpgradeDbInstancePgHbaConfArrayInput is an input type that accepts RdsUpgradeDbInstancePgHbaConfArray and RdsUpgradeDbInstancePgHbaConfArrayOutput values. You can construct a concrete instance of `RdsUpgradeDbInstancePgHbaConfArrayInput` via:

RdsUpgradeDbInstancePgHbaConfArray{ RdsUpgradeDbInstancePgHbaConfArgs{...} }

type RdsUpgradeDbInstancePgHbaConfArrayOutput added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfArrayOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstancePgHbaConfArrayOutput) ElementType added in v3.18.0

func (RdsUpgradeDbInstancePgHbaConfArrayOutput) Index added in v3.18.0

func (RdsUpgradeDbInstancePgHbaConfArrayOutput) ToRdsUpgradeDbInstancePgHbaConfArrayOutput added in v3.18.0

func (o RdsUpgradeDbInstancePgHbaConfArrayOutput) ToRdsUpgradeDbInstancePgHbaConfArrayOutput() RdsUpgradeDbInstancePgHbaConfArrayOutput

func (RdsUpgradeDbInstancePgHbaConfArrayOutput) ToRdsUpgradeDbInstancePgHbaConfArrayOutputWithContext added in v3.18.0

func (o RdsUpgradeDbInstancePgHbaConfArrayOutput) ToRdsUpgradeDbInstancePgHbaConfArrayOutputWithContext(ctx context.Context) RdsUpgradeDbInstancePgHbaConfArrayOutput

type RdsUpgradeDbInstancePgHbaConfInput added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfInput interface {
	pulumi.Input

	ToRdsUpgradeDbInstancePgHbaConfOutput() RdsUpgradeDbInstancePgHbaConfOutput
	ToRdsUpgradeDbInstancePgHbaConfOutputWithContext(context.Context) RdsUpgradeDbInstancePgHbaConfOutput
}

RdsUpgradeDbInstancePgHbaConfInput is an input type that accepts RdsUpgradeDbInstancePgHbaConfArgs and RdsUpgradeDbInstancePgHbaConfOutput values. You can construct a concrete instance of `RdsUpgradeDbInstancePgHbaConfInput` via:

RdsUpgradeDbInstancePgHbaConfArgs{...}

type RdsUpgradeDbInstancePgHbaConfOutput added in v3.18.0

type RdsUpgradeDbInstancePgHbaConfOutput struct{ *pulumi.OutputState }

func (RdsUpgradeDbInstancePgHbaConfOutput) Address added in v3.18.0

The IP addresses from which the specified users can access the specified databases. If you set this parameter to 0.0.0.0/0, the specified users are allowed to access the specified databases from all IP addresses.

func (RdsUpgradeDbInstancePgHbaConfOutput) Database added in v3.18.0

The name of the database that the specified users are allowed to access. If you set this parameter to all, the specified users are allowed to access all databases in the instance. If you specify multiple databases, separate the database names with commas (,).

func (RdsUpgradeDbInstancePgHbaConfOutput) ElementType added in v3.18.0

func (RdsUpgradeDbInstancePgHbaConfOutput) Mask added in v3.18.0

The mask of the instance. If the value of the `Address` parameter is an IP address, you can use this parameter to specify the mask of the IP address.

func (RdsUpgradeDbInstancePgHbaConfOutput) Method added in v3.18.0

The authentication method of Lightweight Directory Access Protocol (LDAP). Valid values: `trust`, `reject`, `scram-sha-256`, `md5`, `password`, `gss`, `sspi`, `ldap`, `radius`, `cert`, `pam`.

func (RdsUpgradeDbInstancePgHbaConfOutput) Option added in v3.18.0

Optional. The value of this parameter is based on the value of the HbaItem.N.Method parameter. In this topic, LDAP is used as an example. You must configure this parameter. For more information, see [Authentication Methods](https://www.postgresql.org/docs/11/auth-methods.html).

func (RdsUpgradeDbInstancePgHbaConfOutput) PriorityId added in v3.18.0

The priority of an AD domain. If you set this parameter to 0, the AD domain has the highest priority. Valid values: 0 to 10000. This parameter is used to identify each AD domain. When you add an AD domain, the value of the PriorityId parameter of the new AD domain cannot be the same as the value of the PriorityId parameter for any existing AD domain. When you modify or delete an AD domain, you must also modify or delete the value of the PriorityId parameter for this AD domain.

func (RdsUpgradeDbInstancePgHbaConfOutput) ToRdsUpgradeDbInstancePgHbaConfOutput added in v3.18.0

func (o RdsUpgradeDbInstancePgHbaConfOutput) ToRdsUpgradeDbInstancePgHbaConfOutput() RdsUpgradeDbInstancePgHbaConfOutput

func (RdsUpgradeDbInstancePgHbaConfOutput) ToRdsUpgradeDbInstancePgHbaConfOutputWithContext added in v3.18.0

func (o RdsUpgradeDbInstancePgHbaConfOutput) ToRdsUpgradeDbInstancePgHbaConfOutputWithContext(ctx context.Context) RdsUpgradeDbInstancePgHbaConfOutput

func (RdsUpgradeDbInstancePgHbaConfOutput) Type added in v3.18.0

The type of connection to the instance. Valid values: * **host**: specifies to verify TCP/IP connections, including SSL connections and non-SSL connections. * **hostssl**: specifies to verify only TCP/IP connections that are established over SSL connections. * **hostnossl**: specifies to verify only TCP/IP connections that are established over non-SSL connections.

> **NOTE:** You can set this parameter to hostssl only when SSL encryption is enabled for the instance. For more information, see [Configure SSL encryption for an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/en/doc-detail/229518.htm).

func (RdsUpgradeDbInstancePgHbaConfOutput) User added in v3.18.0

The user that is allowed to access the instance. If you specify multiple users, separate the usernames with commas (,).

type RdsUpgradeDbInstanceState added in v3.16.0

type RdsUpgradeDbInstanceState 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
	// 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
	// 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 time at which ApsaraDB RDS collects the statistics of the new instance.
	// * **Before**: ApsaraDB RDS collects the statistics of the new instance before the switchover to ensure service stability. If the original instance contains a large amount of data, the upgrade may require a long period of time.
	// * **After**: ApsaraDB RDS collects the statistics of the new instance after the switchover to accelerate the upgrade. If you access tables for which no statistics are generated, the query plans that you specify may be inaccurately executed. In addition, your database service may be unavailable during peak hours.
	//
	// > **NOTE** If you set the SwitchOver parameter to false, the value Before specifies that ApsaraDB RDS collects the statistics of the new instance before the new instance starts to process read and write requests, and the value After specifies that ApsaraDB RDS collects the statistics of the new instance after the new instance starts to process read and write requests.
	CollectStatMode pulumi.StringPtrInput
	// 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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	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/help/en/rds/product-overview/primary-apsaradb-rds-instance-types).
	//
	// > **NOTE:** The default value of this parameter is the storage capacity of the original instance.
	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 (,).
	//
	// > **NOTE:** This parameter is available and must be specified only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	DbName 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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	//
	// > **NOTE:** `deletionProtection` is valid only when attribute `paymentType` is set to `PayAsYouGo`, supported engine type: **MySQL**, **PostgreSQL**, **MariaDB**, **MSSQL**.
	DeletionProtection pulumi.BoolPtrInput
	// The direction. Valid values: `Auto`, `Down`, `TempUpgrade`, `Up`.
	Direction pulumi.StringPtrInput
	// The effective time.
	EffectiveTime pulumi.StringPtrInput
	// The ID of the private key.
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	EncryptionKey pulumi.StringPtrInput
	// Database type. Value options: MySQL, SQLServer, PostgreSQL.
	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**.
	// * 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). See `parameters` below.
	Parameters RdsUpgradeDbInstanceParameterArrayInput
	// The password of the certificate.
	//
	// > **NOTE:** This parameter is available only when the instance runs SQL Server 2019 SE or an Enterprise Edition of SQL Server.
	Password pulumi.StringPtrInput
	// The billing method of the new instance. Valid values: `PayAsYouGo` and `Subscription`.
	PaymentType pulumi.StringPtrInput
	// The configuration of [AD domain](https://www.alibabacloud.com/help/en/doc-detail/349288.htm) . See `pgHbaConf` below.
	PgHbaConfs RdsUpgradeDbInstancePgHbaConfArrayInput
	// 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
	// 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/help/en/ram/user-guide/ram-role-overview).
	//
	// > **NOTE:** This parameter is available only when the instance runs MySQL.
	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).
	//
	// > **NOTE:** each instance can add up to 1000 IP addresses or IP segments, that is, the total number of IP addresses or IP segments in all IP whitelist groups cannot exceed 1000. When there are more IP addresses, it is recommended to merge them into IP segments, for example, 10.23.12.0/24.
	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
	// Specifies whether ApsaraDB RDS automatically switches your workloads over to the new instance after data is migrated to the new instance. Valid values:
	// * **true**: ApsaraDB RDS automatically switches workloads over to the new instance. If you set this parameter to true, you must take note of the following information:
	// * After the switchover is complete, you cannot roll your workloads back to the original instance. Proceed with caution.
	// * During the switchover, the original instance processes only read requests. You must perform the switchover during off-peak hours.
	// * If read-only instances are attached to the original instance, you can set this parameter only to false. In this case, the read-only instances that are attached to the original instance cannot be cloned. After the upgrade is complete, you must create read-only instances for the new instance.
	// * **false**: ApsaraDB RDS does not automatically switch your workloads over to the new instance. Before you perform an upgrade, we recommend that you set this parameter to false to test whether the new major engine version is compatible with your workloads. If you set this parameter to false, you must take note of the following information:
	// * The data migration does not interrupt your workloads on the original instance.
	// * After data is migrated to the new instance, you must update the endpoint configuration on your application. This update requires you to replace the endpoint of the original instance with the endpoint of the new instance. For more information about how to view the endpoint of an instance, see [View and change the internal and public endpoints and port numbers of an ApsaraDB RDS for PostgreSQL instance](https://www.alibabacloud.com/help/doc-detail/96788.htm).
	SwitchOver pulumi.StringPtrInput
	// 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 time at which ApsaraDB RDS switches your workloads over to the new instance. This parameter is used together with the SwitchOver parameter and takes effect only when you set the SwitchOver parameter to true. Valid values:
	// * **Immediate**: After data is migrated to the new instance, ApsaraDB RDS immediately switches your workloads over to the new instance.
	// * **MaintainTime**: After data is migrated to the new instance, ApsaraDB RDS switches your workloads over to the new instance during the maintenance window that you specify. You can call the [ModifyDBInstanceMaintainTime](https://www.alibabacloud.com/help/doc-detail/26249.htm) operation to change the maintenance window of an instance.
	SwitchTimeMode 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.
	//
	// > **NOTE:** SQL Server 2017 cluster version is currently not supported.
	SyncMode pulumi.StringPtrInput
	// The major engine version of the new instance. The value of this parameter must be the major engine version on which an upgrade check is performed.
	//
	// > **NOTE** You can call the [UpgradeDBInstanceMajorVersionPrecheck](https://www.alibabacloud.com/help/doc-detail/330050.htm) operation to perform an upgrade check on a major engine version.
	TargetMajorVersion pulumi.StringPtrInput
	// The availability check method of the instance. Valid values:
	// - **SHORT**: Alibaba Cloud uses short-lived connections to check the availability of the instance.
	// - **LONG**: Alibaba Cloud uses persistent connections to check the availability of the instance.
	TcpConnectionType pulumi.StringPtrInput
	// Specifies whether to enable TDE. Valid values: `Enabled` and `Disabled`.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC to which the new instance belongs.
	//
	// > **NOTE:** Make sure that the VPC resides in the specified region.
	VpcId pulumi.StringPtrInput
	// The ID of the vSwitch associated with the specified VPC.
	//
	// > **NOTE:** Make sure that the vSwitch belongs to the specified VPC and region.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone to which the new instance belongs. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query the most recent region list.
	//
	// > **NOTE:** The default value of this parameter is the ID of the zone to which the original instance belongs.
	ZoneId pulumi.StringPtrInput
	// The ID of the zone to which the secondary instance of the new instance belongs. You can specify this parameter only when the original instance runs RDS High-availability Edition. You can select a zone that belongs to the region where the original instance resides. You can call the [DescribeRegions](https://www.alibabacloud.com/help/en/rds/developer-reference/api-rds-2014-08-15-describeregions) operation to query zone IDs.
	ZoneIdSlave1 pulumi.StringPtrInput
}

func (RdsUpgradeDbInstanceState) ElementType added in v3.16.0

func (RdsUpgradeDbInstanceState) 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"`
	// 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 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"`
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrOutput `pulumi:"dbInstanceIpArrayAttribute"`
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	DeletionProtection pulumi.BoolPtrOutput `pulumi:"deletionProtection"`
	// The instance configuration type. Valid values:
	// - Up
	// - Down
	// - TempUpgrade
	// - Serverless
	Direction pulumi.StringPtrOutput `pulumi:"direction"`
	// The method to change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime pulumi.StringPtrOutput `pulumi:"effectiveTime"`
	// 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"`
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. The interval between the two conversion operations must be greater than 15 minutes. Only when this parameter is `Postpaid`, the instance can be released.
	InstanceChargeType pulumi.StringPtrOutput `pulumi:"instanceChargeType"`
	// 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"`
	// 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"`
	// 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). See `parameters` below.
	Parameters ReadOnlyInstanceParameterArrayOutput `pulumi:"parameters"`
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// 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 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. 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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	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 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
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType pulumi.StringPtrOutput `pulumi:"whitelistNetworkType"`
	// The Zone to launch the DB instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides an RDS readonly instance resource, see [What is DB Readonly Instance](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-createreadonlydbinstance).

> **NOTE:** Available since v1.52.1.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		example, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:        pulumi.StringRef("MySQL"),
			EngineVersion: pulumi.StringRef("5.6"),
		}, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "example", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "example", &vpc.SwitchArgs{
			VpcId:       exampleNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(example.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewSecurityGroup(ctx, "example", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: exampleNetwork.ID(),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "example", &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:          exampleSwitch.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, "example", &rds.ReadOnlyInstanceArgs{
			ZoneId:             exampleInstance.ZoneId,
			MasterDbInstanceId: exampleInstance.ID(),
			EngineVersion:      exampleInstance.EngineVersion,
			InstanceStorage:    exampleInstance.InstanceStorage,
			InstanceType:       exampleInstance.InstanceType,
			InstanceName:       pulumi.String(fmt.Sprintf("%vreadonly", name)),
			VswitchId:          exampleSwitch.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

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
	// 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 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
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	DeletionProtection pulumi.BoolPtrInput
	// The instance configuration type. Valid values:
	// - Up
	// - Down
	// - TempUpgrade
	// - Serverless
	Direction pulumi.StringPtrInput
	// The method to change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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.StringInput
	// Set it to true to make some parameter efficient when modifying them. Default to false.
	ForceRestart pulumi.BoolPtrInput
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. The interval between the two conversion operations must be greater than 15 minutes. Only when this parameter is `Postpaid`, the instance can be released.
	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/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
	// 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
	// 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). See `parameters` below.
	Parameters ReadOnlyInstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// 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 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. 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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	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 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
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType 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) Acl added in v3.27.0

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)

func (ReadOnlyInstanceOutput) AutoRenew added in v3.34.0

Whether to renewal a DB instance automatically or not. It is valid when instanceChargeType is `PrePaid`. Default to `false`.

func (ReadOnlyInstanceOutput) AutoRenewPeriod added in v3.34.0

func (o ReadOnlyInstanceOutput) AutoRenewPeriod() pulumi.IntPtrOutput

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.

func (ReadOnlyInstanceOutput) CaType added in v3.27.0

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

func (ReadOnlyInstanceOutput) ClientCaCert added in v3.27.0

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`.

func (ReadOnlyInstanceOutput) ClientCaEnabled added in v3.27.0

func (o ReadOnlyInstanceOutput) ClientCaEnabled() pulumi.IntPtrOutput

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

func (ReadOnlyInstanceOutput) ClientCertRevocationList added in v3.27.0

func (o ReadOnlyInstanceOutput) ClientCertRevocationList() pulumi.StringPtrOutput

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`.

func (ReadOnlyInstanceOutput) ClientCrlEnabled added in v3.27.0

func (o ReadOnlyInstanceOutput) ClientCrlEnabled() pulumi.IntPtrOutput

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

func (ReadOnlyInstanceOutput) ConnectionString added in v3.27.0

func (o ReadOnlyInstanceOutput) ConnectionString() pulumi.StringOutput

RDS database connection string.

func (ReadOnlyInstanceOutput) DbInstanceIpArrayAttribute added in v3.29.0

func (o ReadOnlyInstanceOutput) DbInstanceIpArrayAttribute() pulumi.StringPtrOutput

The attribute of the IP address whitelist. By default, this parameter is empty.

> **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).

func (ReadOnlyInstanceOutput) DbInstanceIpArrayName added in v3.29.0

func (o ReadOnlyInstanceOutput) DbInstanceIpArrayName() pulumi.StringPtrOutput

The name of the IP address whitelist. Default value: Default.

> **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.

func (ReadOnlyInstanceOutput) DbInstanceStorageType added in v3.34.0

func (o ReadOnlyInstanceOutput) DbInstanceStorageType() pulumi.StringOutput

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).

func (ReadOnlyInstanceOutput) DeletionProtection added in v3.27.0

func (o ReadOnlyInstanceOutput) DeletionProtection() pulumi.BoolPtrOutput

The switch of delete protection. Valid values: - true: delete protect. - false: no delete protect.

func (ReadOnlyInstanceOutput) Direction added in v3.43.1

The instance configuration type. Valid values: - Up - Down - TempUpgrade - Serverless

func (ReadOnlyInstanceOutput) EffectiveTime added in v3.40.0

func (o ReadOnlyInstanceOutput) EffectiveTime() pulumi.StringPtrOutput

The method to change. Default value: Immediate. Valid values: - Immediate: The change immediately takes effect. - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.

func (ReadOnlyInstanceOutput) ElementType

func (ReadOnlyInstanceOutput) ElementType() reflect.Type

func (ReadOnlyInstanceOutput) Engine added in v3.27.0

Database type.

func (ReadOnlyInstanceOutput) EngineVersion added in v3.27.0

func (o ReadOnlyInstanceOutput) EngineVersion() pulumi.StringOutput

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

func (ReadOnlyInstanceOutput) ForceRestart added in v3.27.0

func (o ReadOnlyInstanceOutput) ForceRestart() pulumi.BoolPtrOutput

Set it to true to make some parameter efficient when modifying them. Default to false.

func (ReadOnlyInstanceOutput) InstanceChargeType added in v3.34.0

func (o ReadOnlyInstanceOutput) InstanceChargeType() pulumi.StringPtrOutput

Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. The interval between the two conversion operations must be greater than 15 minutes. Only when this parameter is `Postpaid`, the instance can be released.

func (ReadOnlyInstanceOutput) InstanceName added in v3.27.0

func (o ReadOnlyInstanceOutput) InstanceName() pulumi.StringOutput

The name of DB instance. It a string of 2 to 256 characters.

func (ReadOnlyInstanceOutput) InstanceStorage added in v3.27.0

func (o ReadOnlyInstanceOutput) InstanceStorage() pulumi.IntOutput

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).

func (ReadOnlyInstanceOutput) InstanceType added in v3.27.0

func (o ReadOnlyInstanceOutput) InstanceType() pulumi.StringOutput

DB Instance type. For details, see [Instance type table](https://www.alibabacloud.com/help/doc-detail/26312.htm).

func (ReadOnlyInstanceOutput) MasterDbInstanceId added in v3.27.0

func (o ReadOnlyInstanceOutput) MasterDbInstanceId() pulumi.StringOutput

ID of the master instance.

func (ReadOnlyInstanceOutput) ModifyMode added in v3.29.0

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.

func (ReadOnlyInstanceOutput) Parameters added in v3.27.0

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). See `parameters` below.

func (ReadOnlyInstanceOutput) Period added in v3.34.0

The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.

func (ReadOnlyInstanceOutput) Port added in v3.27.0

RDS database connection port.

func (ReadOnlyInstanceOutput) ReplicationAcl added in v3.27.0

func (o ReadOnlyInstanceOutput) ReplicationAcl() pulumi.StringOutput

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.

func (ReadOnlyInstanceOutput) ResourceGroupId added in v3.27.0

func (o ReadOnlyInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of resource group which the DB read-only instance belongs.

func (ReadOnlyInstanceOutput) SecurityIpType added in v3.29.0

func (o ReadOnlyInstanceOutput) SecurityIpType() pulumi.StringPtrOutput

The type of IP address in the IP address whitelist.

func (ReadOnlyInstanceOutput) SecurityIps added in v3.29.0

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]).

func (ReadOnlyInstanceOutput) ServerCert added in v3.27.0

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`.

func (ReadOnlyInstanceOutput) ServerKey added in v3.27.0

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`.

func (ReadOnlyInstanceOutput) SslEnabled added in v3.27.0

func (o ReadOnlyInstanceOutput) SslEnabled() pulumi.IntOutput

Specifies whether to enable or disable SSL encryption. Valid values: - 1: enables SSL encryption - 0: disables SSL encryption

func (ReadOnlyInstanceOutput) SwitchTime added in v3.27.0

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.

> **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.

func (ReadOnlyInstanceOutput) Tags added in v3.27.0

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.

func (ReadOnlyInstanceOutput) TargetMinorVersion added in v3.27.0

func (o ReadOnlyInstanceOutput) TargetMinorVersion() pulumi.StringOutput

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.

> **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.

func (ReadOnlyInstanceOutput) ToReadOnlyInstanceOutput

func (o ReadOnlyInstanceOutput) ToReadOnlyInstanceOutput() ReadOnlyInstanceOutput

func (ReadOnlyInstanceOutput) ToReadOnlyInstanceOutputWithContext

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

func (ReadOnlyInstanceOutput) UpgradeDbInstanceKernelVersion added in v3.27.0

func (o ReadOnlyInstanceOutput) UpgradeDbInstanceKernelVersion() pulumi.BoolPtrOutput

Whether to upgrade a minor version of the kernel. Valid values: - true: upgrade - false: not to upgrade

func (ReadOnlyInstanceOutput) UpgradeTime added in v3.27.0

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.

func (ReadOnlyInstanceOutput) VswitchId added in v3.27.0

The virtual switch ID to launch DB instances in one VPC.

func (ReadOnlyInstanceOutput) WhitelistNetworkType added in v3.29.0

func (o ReadOnlyInstanceOutput) WhitelistNetworkType() pulumi.StringPtrOutput

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 > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.

func (ReadOnlyInstanceOutput) ZoneId added in v3.27.0

The Zone to launch the DB instance.

type ReadOnlyInstanceParameter

type ReadOnlyInstanceParameter struct {
	// The parameter name.
	Name string `pulumi:"name"`
	// The parameter value.
	Value string `pulumi:"value"`
}

type ReadOnlyInstanceParameterArgs

type ReadOnlyInstanceParameterArgs struct {
	// The parameter name.
	Name pulumi.StringInput `pulumi:"name"`
	// The parameter value.
	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

The parameter name.

func (ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutput

func (o ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutput() ReadOnlyInstanceParameterOutput

func (ReadOnlyInstanceParameterOutput) ToReadOnlyInstanceParameterOutputWithContext

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

func (ReadOnlyInstanceParameterOutput) Value

The parameter value.

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
	// 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 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
	// The attribute of the IP address whitelist. By default, this parameter is empty.
	//
	// > **NOTE:** The IP address whitelists that have the hidden attribute are not displayed in the ApsaraDB RDS console. These IP address whitelists are used to access Alibaba Cloud services, such as Data Transmission Service (DTS).
	DbInstanceIpArrayAttribute pulumi.StringPtrInput
	// The name of the IP address whitelist. Default value: Default.
	//
	// > **NOTE:** A maximum of 200 IP address whitelists can be configured for each instance.
	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 switch of delete protection. Valid values:
	// - true: delete protect.
	// - false: no delete protect.
	DeletionProtection pulumi.BoolPtrInput
	// The instance configuration type. Valid values:
	// - Up
	// - Down
	// - TempUpgrade
	// - Serverless
	Direction pulumi.StringPtrInput
	// The method to change.  Default value: Immediate. Valid values:
	// - Immediate: The change immediately takes effect.
	// - MaintainTime: The change takes effect during the specified maintenance window. For more information, see ModifyDBInstanceMaintainTime.
	EffectiveTime 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
	// Valid values are `Prepaid`, `Postpaid`, Default to `Postpaid`. The interval between the two conversion operations must be greater than 15 minutes. Only when this parameter is `Postpaid`, the instance can be released.
	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/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
	// 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
	// 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). See `parameters` below.
	Parameters ReadOnlyInstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// 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 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. 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.
	//
	// > **NOTE:** This parameter takes effect only when you set the UpgradeTime parameter to SpecifyTime.
	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.
	//
	// > **NOTE:** For more information about minor engine versions, see Release notes of minor AliPG versions, Release notes of minor AliSQL versions, and Release notes of minor engine versions of ApsaraDB RDS for SQL Server.
	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 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
	// > **NOTE:** In standard whitelist mode, IP addresses and CIDR blocks can be added only to the default IP address whitelist. In enhanced whitelist mode, IP addresses and CIDR blocks can be added to both IP address whitelists of the classic network type and those of the VPC network type.
	WhitelistNetworkType 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, see [What is DB Read Write Splitting Connection](https://www.alibabacloud.com/help/en/apsaradb-for-rds/latest/api-rds-2014-08-15-allocatereadwritesplittingconnection).

> **NOTE:** Available since v1.48.0.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"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-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		example, err := rds.GetZones(ctx, &rds.GetZonesArgs{
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("5.7"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("local_ssd"),
		}, nil)
		if err != nil {
			return err
		}
		exampleGetInstanceClasses, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
			ZoneId:                pulumi.StringRef(example.Ids[0]),
			Engine:                pulumi.StringRef("MySQL"),
			EngineVersion:         pulumi.StringRef("5.7"),
			Category:              pulumi.StringRef("HighAvailability"),
			DbInstanceStorageType: pulumi.StringRef("local_ssd"),
		}, nil)
		if err != nil {
			return err
		}
		exampleNetwork, err := vpc.NewNetwork(ctx, "example", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSwitch, err := vpc.NewSwitch(ctx, "example", &vpc.SwitchArgs{
			VpcId:       exampleNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(example.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewSecurityGroup(ctx, "example", &ecs.SecurityGroupArgs{
			Name:  pulumi.String(name),
			VpcId: exampleNetwork.ID(),
		})
		if err != nil {
			return err
		}
		exampleInstance, err := rds.NewInstance(ctx, "example", &rds.InstanceArgs{
			Engine:                pulumi.String("MySQL"),
			EngineVersion:         pulumi.String("5.7"),
			Category:              pulumi.String("HighAvailability"),
			InstanceType:          pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].InstanceClass),
			InstanceStorage:       pulumi.String(exampleGetInstanceClasses.InstanceClasses[0].StorageRange.Min),
			InstanceChargeType:    pulumi.String("Postpaid"),
			DbInstanceStorageType: pulumi.String("local_ssd"),
			InstanceName:          pulumi.String(name),
			VswitchId:             exampleSwitch.ID(),
			SecurityIps: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
		})
		if err != nil {
			return err
		}
		exampleReadOnlyInstance, err := rds.NewReadOnlyInstance(ctx, "example", &rds.ReadOnlyInstanceArgs{
			ZoneId:             exampleInstance.ZoneId,
			MasterDbInstanceId: exampleInstance.ID(),
			EngineVersion:      exampleInstance.EngineVersion,
			InstanceStorage:    exampleInstance.InstanceStorage,
			InstanceType:       exampleInstance.InstanceType,
			InstanceName:       pulumi.String(fmt.Sprintf("%vreadonly", name)),
			VswitchId:          exampleSwitch.ID(),
		})
		if err != nil {
			return err
		}
		_, err = rds.NewReadWriteSplittingConnection(ctx, "example", &rds.ReadWriteSplittingConnectionArgs{
			InstanceId:       exampleReadOnlyInstance.MasterDbInstanceId,
			ConnectionPrefix: pulumi.String("example-con-123"),
			DistributionType: pulumi.String("Standard"),
		})
		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

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) ConnectionPrefix added in v3.27.0

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'.

func (ReadWriteSplittingConnectionOutput) ConnectionString added in v3.27.0

Connection instance string.

func (ReadWriteSplittingConnectionOutput) DistributionType added in v3.27.0

Read weight distribution mode. Values are as follows: `Standard` indicates automatic weight distribution based on types, `Custom` indicates custom weight distribution.

func (ReadWriteSplittingConnectionOutput) ElementType

func (ReadWriteSplittingConnectionOutput) InstanceId added in v3.27.0

The Id of instance that can run database.

func (ReadWriteSplittingConnectionOutput) MaxDelayTime added in v3.27.0

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.

func (ReadWriteSplittingConnectionOutput) Port added in v3.27.0

Intranet connection port. Valid value: [3001-3999]. Default to 3306.

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutput

func (o ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutput() ReadWriteSplittingConnectionOutput

func (ReadWriteSplittingConnectionOutput) ToReadWriteSplittingConnectionOutputWithContext

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

func (ReadWriteSplittingConnectionOutput) Weight added in v3.27.0

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.

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