1. Packages
  2. Tencentcloud Provider
  3. API Docs
  4. MysqlPrivilege
tencentcloud 1.81.182 published on Monday, Apr 14, 2025 by tencentcloudstack

tencentcloud.MysqlPrivilege

Explore with Pulumi AI

Provides a mysql account privilege resource to grant different access privilege to different database. A database can be granted by multiple account.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";

const zones = tencentcloud.getAvailabilityZonesByProduct({
    product: "cdb",
});
const vpc = new tencentcloud.Vpc("vpc", {cidrBlock: "10.0.0.0/16"});
const subnet = new tencentcloud.Subnet("subnet", {
    availabilityZone: zones.then(zones => zones.zones?.[0]?.name),
    vpcId: vpc.vpcId,
    cidrBlock: "10.0.0.0/16",
    isMulticast: false,
});
const securityGroup = new tencentcloud.SecurityGroup("securityGroup", {description: "mysql test"});
const exampleMysqlInstance = new tencentcloud.MysqlInstance("exampleMysqlInstance", {
    internetService: 1,
    engineVersion: "5.7",
    chargeType: "POSTPAID",
    rootPassword: "PassWord123",
    slaveDeployMode: 0,
    availabilityZone: zones.then(zones => zones.zones?.[0]?.name),
    slaveSyncMode: 1,
    instanceName: "tf-example-mysql",
    memSize: 4000,
    volumeSize: 200,
    vpcId: vpc.vpcId,
    subnetId: subnet.subnetId,
    intranetPort: 3306,
    securityGroups: [securityGroup.securityGroupId],
    tags: {
        name: "test",
    },
    parameters: {
        character_set_server: "utf8",
        max_connections: "1000",
    },
});
const exampleMysqlAccount = new tencentcloud.MysqlAccount("exampleMysqlAccount", {
    mysqlId: exampleMysqlInstance.mysqlInstanceId,
    password: "Qwer@234",
    description: "desc.",
    maxUserConnections: 10,
});
const exampleMysqlPrivilege = new tencentcloud.MysqlPrivilege("exampleMysqlPrivilege", {
    mysqlId: exampleMysqlInstance.mysqlInstanceId,
    accountName: exampleMysqlAccount.name,
    globals: ["TRIGGER"],
    databases: [
        {
            privileges: [
                "SELECT",
                "INSERT",
                "UPDATE",
                "DELETE",
                "CREATE",
            ],
            databaseName: "sys",
        },
        {
            privileges: ["SELECT"],
            databaseName: "performance_schema",
        },
    ],
    tables: [
        {
            privileges: [
                "SELECT",
                "INSERT",
                "UPDATE",
                "DELETE",
                "CREATE",
            ],
            databaseName: "mysql",
            tableName: "slow_log",
        },
        {
            privileges: [
                "SELECT",
                "INSERT",
                "UPDATE",
            ],
            databaseName: "mysql",
            tableName: "user",
        },
    ],
    columns: [{
        privileges: [
            "SELECT",
            "INSERT",
            "UPDATE",
            "REFERENCES",
        ],
        databaseName: "mysql",
        tableName: "user",
        columnName: "host",
    }],
});
Copy
import pulumi
import pulumi_tencentcloud as tencentcloud

zones = tencentcloud.get_availability_zones_by_product(product="cdb")
vpc = tencentcloud.Vpc("vpc", cidr_block="10.0.0.0/16")
subnet = tencentcloud.Subnet("subnet",
    availability_zone=zones.zones[0].name,
    vpc_id=vpc.vpc_id,
    cidr_block="10.0.0.0/16",
    is_multicast=False)
security_group = tencentcloud.SecurityGroup("securityGroup", description="mysql test")
example_mysql_instance = tencentcloud.MysqlInstance("exampleMysqlInstance",
    internet_service=1,
    engine_version="5.7",
    charge_type="POSTPAID",
    root_password="PassWord123",
    slave_deploy_mode=0,
    availability_zone=zones.zones[0].name,
    slave_sync_mode=1,
    instance_name="tf-example-mysql",
    mem_size=4000,
    volume_size=200,
    vpc_id=vpc.vpc_id,
    subnet_id=subnet.subnet_id,
    intranet_port=3306,
    security_groups=[security_group.security_group_id],
    tags={
        "name": "test",
    },
    parameters={
        "character_set_server": "utf8",
        "max_connections": "1000",
    })
example_mysql_account = tencentcloud.MysqlAccount("exampleMysqlAccount",
    mysql_id=example_mysql_instance.mysql_instance_id,
    password="Qwer@234",
    description="desc.",
    max_user_connections=10)
example_mysql_privilege = tencentcloud.MysqlPrivilege("exampleMysqlPrivilege",
    mysql_id=example_mysql_instance.mysql_instance_id,
    account_name=example_mysql_account.name,
    globals=["TRIGGER"],
    databases=[
        {
            "privileges": [
                "SELECT",
                "INSERT",
                "UPDATE",
                "DELETE",
                "CREATE",
            ],
            "database_name": "sys",
        },
        {
            "privileges": ["SELECT"],
            "database_name": "performance_schema",
        },
    ],
    tables=[
        {
            "privileges": [
                "SELECT",
                "INSERT",
                "UPDATE",
                "DELETE",
                "CREATE",
            ],
            "database_name": "mysql",
            "table_name": "slow_log",
        },
        {
            "privileges": [
                "SELECT",
                "INSERT",
                "UPDATE",
            ],
            "database_name": "mysql",
            "table_name": "user",
        },
    ],
    columns=[{
        "privileges": [
            "SELECT",
            "INSERT",
            "UPDATE",
            "REFERENCES",
        ],
        "database_name": "mysql",
        "table_name": "user",
        "column_name": "host",
    }])
Copy
package main

import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		zones, err := tencentcloud.GetAvailabilityZonesByProduct(ctx, &tencentcloud.GetAvailabilityZonesByProductArgs{
			Product: "cdb",
		}, nil)
		if err != nil {
			return err
		}
		vpc, err := tencentcloud.NewVpc(ctx, "vpc", &tencentcloud.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		subnet, err := tencentcloud.NewSubnet(ctx, "subnet", &tencentcloud.SubnetArgs{
			AvailabilityZone: pulumi.String(zones.Zones[0].Name),
			VpcId:            vpc.VpcId,
			CidrBlock:        pulumi.String("10.0.0.0/16"),
			IsMulticast:      pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		securityGroup, err := tencentcloud.NewSecurityGroup(ctx, "securityGroup", &tencentcloud.SecurityGroupArgs{
			Description: pulumi.String("mysql test"),
		})
		if err != nil {
			return err
		}
		exampleMysqlInstance, err := tencentcloud.NewMysqlInstance(ctx, "exampleMysqlInstance", &tencentcloud.MysqlInstanceArgs{
			InternetService:  pulumi.Float64(1),
			EngineVersion:    pulumi.String("5.7"),
			ChargeType:       pulumi.String("POSTPAID"),
			RootPassword:     pulumi.String("PassWord123"),
			SlaveDeployMode:  pulumi.Float64(0),
			AvailabilityZone: pulumi.String(zones.Zones[0].Name),
			SlaveSyncMode:    pulumi.Float64(1),
			InstanceName:     pulumi.String("tf-example-mysql"),
			MemSize:          pulumi.Float64(4000),
			VolumeSize:       pulumi.Float64(200),
			VpcId:            vpc.VpcId,
			SubnetId:         subnet.SubnetId,
			IntranetPort:     pulumi.Float64(3306),
			SecurityGroups: pulumi.StringArray{
				securityGroup.SecurityGroupId,
			},
			Tags: pulumi.StringMap{
				"name": pulumi.String("test"),
			},
			Parameters: pulumi.StringMap{
				"character_set_server": pulumi.String("utf8"),
				"max_connections":      pulumi.String("1000"),
			},
		})
		if err != nil {
			return err
		}
		exampleMysqlAccount, err := tencentcloud.NewMysqlAccount(ctx, "exampleMysqlAccount", &tencentcloud.MysqlAccountArgs{
			MysqlId:            exampleMysqlInstance.MysqlInstanceId,
			Password:           pulumi.String("Qwer@234"),
			Description:        pulumi.String("desc."),
			MaxUserConnections: pulumi.Float64(10),
		})
		if err != nil {
			return err
		}
		_, err = tencentcloud.NewMysqlPrivilege(ctx, "exampleMysqlPrivilege", &tencentcloud.MysqlPrivilegeArgs{
			MysqlId:     exampleMysqlInstance.MysqlInstanceId,
			AccountName: exampleMysqlAccount.Name,
			Globals: pulumi.StringArray{
				pulumi.String("TRIGGER"),
			},
			Databases: tencentcloud.MysqlPrivilegeDatabaseArray{
				&tencentcloud.MysqlPrivilegeDatabaseArgs{
					Privileges: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("INSERT"),
						pulumi.String("UPDATE"),
						pulumi.String("DELETE"),
						pulumi.String("CREATE"),
					},
					DatabaseName: pulumi.String("sys"),
				},
				&tencentcloud.MysqlPrivilegeDatabaseArgs{
					Privileges: pulumi.StringArray{
						pulumi.String("SELECT"),
					},
					DatabaseName: pulumi.String("performance_schema"),
				},
			},
			Tables: tencentcloud.MysqlPrivilegeTableArray{
				&tencentcloud.MysqlPrivilegeTableArgs{
					Privileges: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("INSERT"),
						pulumi.String("UPDATE"),
						pulumi.String("DELETE"),
						pulumi.String("CREATE"),
					},
					DatabaseName: pulumi.String("mysql"),
					TableName:    pulumi.String("slow_log"),
				},
				&tencentcloud.MysqlPrivilegeTableArgs{
					Privileges: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("INSERT"),
						pulumi.String("UPDATE"),
					},
					DatabaseName: pulumi.String("mysql"),
					TableName:    pulumi.String("user"),
				},
			},
			Columns: tencentcloud.MysqlPrivilegeColumnArray{
				&tencentcloud.MysqlPrivilegeColumnArgs{
					Privileges: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("INSERT"),
						pulumi.String("UPDATE"),
						pulumi.String("REFERENCES"),
					},
					DatabaseName: pulumi.String("mysql"),
					TableName:    pulumi.String("user"),
					ColumnName:   pulumi.String("host"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;

return await Deployment.RunAsync(() => 
{
    var zones = Tencentcloud.GetAvailabilityZonesByProduct.Invoke(new()
    {
        Product = "cdb",
    });

    var vpc = new Tencentcloud.Vpc("vpc", new()
    {
        CidrBlock = "10.0.0.0/16",
    });

    var subnet = new Tencentcloud.Subnet("subnet", new()
    {
        AvailabilityZone = zones.Apply(getAvailabilityZonesByProductResult => getAvailabilityZonesByProductResult.Zones[0]?.Name),
        VpcId = vpc.VpcId,
        CidrBlock = "10.0.0.0/16",
        IsMulticast = false,
    });

    var securityGroup = new Tencentcloud.SecurityGroup("securityGroup", new()
    {
        Description = "mysql test",
    });

    var exampleMysqlInstance = new Tencentcloud.MysqlInstance("exampleMysqlInstance", new()
    {
        InternetService = 1,
        EngineVersion = "5.7",
        ChargeType = "POSTPAID",
        RootPassword = "PassWord123",
        SlaveDeployMode = 0,
        AvailabilityZone = zones.Apply(getAvailabilityZonesByProductResult => getAvailabilityZonesByProductResult.Zones[0]?.Name),
        SlaveSyncMode = 1,
        InstanceName = "tf-example-mysql",
        MemSize = 4000,
        VolumeSize = 200,
        VpcId = vpc.VpcId,
        SubnetId = subnet.SubnetId,
        IntranetPort = 3306,
        SecurityGroups = new[]
        {
            securityGroup.SecurityGroupId,
        },
        Tags = 
        {
            { "name", "test" },
        },
        Parameters = 
        {
            { "character_set_server", "utf8" },
            { "max_connections", "1000" },
        },
    });

    var exampleMysqlAccount = new Tencentcloud.MysqlAccount("exampleMysqlAccount", new()
    {
        MysqlId = exampleMysqlInstance.MysqlInstanceId,
        Password = "Qwer@234",
        Description = "desc.",
        MaxUserConnections = 10,
    });

    var exampleMysqlPrivilege = new Tencentcloud.MysqlPrivilege("exampleMysqlPrivilege", new()
    {
        MysqlId = exampleMysqlInstance.MysqlInstanceId,
        AccountName = exampleMysqlAccount.Name,
        Globals = new[]
        {
            "TRIGGER",
        },
        Databases = new[]
        {
            new Tencentcloud.Inputs.MysqlPrivilegeDatabaseArgs
            {
                Privileges = new[]
                {
                    "SELECT",
                    "INSERT",
                    "UPDATE",
                    "DELETE",
                    "CREATE",
                },
                DatabaseName = "sys",
            },
            new Tencentcloud.Inputs.MysqlPrivilegeDatabaseArgs
            {
                Privileges = new[]
                {
                    "SELECT",
                },
                DatabaseName = "performance_schema",
            },
        },
        Tables = new[]
        {
            new Tencentcloud.Inputs.MysqlPrivilegeTableArgs
            {
                Privileges = new[]
                {
                    "SELECT",
                    "INSERT",
                    "UPDATE",
                    "DELETE",
                    "CREATE",
                },
                DatabaseName = "mysql",
                TableName = "slow_log",
            },
            new Tencentcloud.Inputs.MysqlPrivilegeTableArgs
            {
                Privileges = new[]
                {
                    "SELECT",
                    "INSERT",
                    "UPDATE",
                },
                DatabaseName = "mysql",
                TableName = "user",
            },
        },
        Columns = new[]
        {
            new Tencentcloud.Inputs.MysqlPrivilegeColumnArgs
            {
                Privileges = new[]
                {
                    "SELECT",
                    "INSERT",
                    "UPDATE",
                    "REFERENCES",
                },
                DatabaseName = "mysql",
                TableName = "user",
                ColumnName = "host",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.TencentcloudFunctions;
import com.pulumi.tencentcloud.inputs.GetAvailabilityZonesByProductArgs;
import com.pulumi.tencentcloud.Vpc;
import com.pulumi.tencentcloud.VpcArgs;
import com.pulumi.tencentcloud.Subnet;
import com.pulumi.tencentcloud.SubnetArgs;
import com.pulumi.tencentcloud.SecurityGroup;
import com.pulumi.tencentcloud.SecurityGroupArgs;
import com.pulumi.tencentcloud.MysqlInstance;
import com.pulumi.tencentcloud.MysqlInstanceArgs;
import com.pulumi.tencentcloud.MysqlAccount;
import com.pulumi.tencentcloud.MysqlAccountArgs;
import com.pulumi.tencentcloud.MysqlPrivilege;
import com.pulumi.tencentcloud.MysqlPrivilegeArgs;
import com.pulumi.tencentcloud.inputs.MysqlPrivilegeDatabaseArgs;
import com.pulumi.tencentcloud.inputs.MysqlPrivilegeTableArgs;
import com.pulumi.tencentcloud.inputs.MysqlPrivilegeColumnArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

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

    public static void stack(Context ctx) {
        final var zones = TencentcloudFunctions.getAvailabilityZonesByProduct(GetAvailabilityZonesByProductArgs.builder()
            .product("cdb")
            .build());

        var vpc = new Vpc("vpc", VpcArgs.builder()
            .cidrBlock("10.0.0.0/16")
            .build());

        var subnet = new Subnet("subnet", SubnetArgs.builder()
            .availabilityZone(zones.applyValue(getAvailabilityZonesByProductResult -> getAvailabilityZonesByProductResult.zones()[0].name()))
            .vpcId(vpc.vpcId())
            .cidrBlock("10.0.0.0/16")
            .isMulticast(false)
            .build());

        var securityGroup = new SecurityGroup("securityGroup", SecurityGroupArgs.builder()
            .description("mysql test")
            .build());

        var exampleMysqlInstance = new MysqlInstance("exampleMysqlInstance", MysqlInstanceArgs.builder()
            .internetService(1)
            .engineVersion("5.7")
            .chargeType("POSTPAID")
            .rootPassword("PassWord123")
            .slaveDeployMode(0)
            .availabilityZone(zones.applyValue(getAvailabilityZonesByProductResult -> getAvailabilityZonesByProductResult.zones()[0].name()))
            .slaveSyncMode(1)
            .instanceName("tf-example-mysql")
            .memSize(4000)
            .volumeSize(200)
            .vpcId(vpc.vpcId())
            .subnetId(subnet.subnetId())
            .intranetPort(3306)
            .securityGroups(securityGroup.securityGroupId())
            .tags(Map.of("name", "test"))
            .parameters(Map.ofEntries(
                Map.entry("character_set_server", "utf8"),
                Map.entry("max_connections", "1000")
            ))
            .build());

        var exampleMysqlAccount = new MysqlAccount("exampleMysqlAccount", MysqlAccountArgs.builder()
            .mysqlId(exampleMysqlInstance.mysqlInstanceId())
            .password("Qwer@234")
            .description("desc.")
            .maxUserConnections(10)
            .build());

        var exampleMysqlPrivilege = new MysqlPrivilege("exampleMysqlPrivilege", MysqlPrivilegeArgs.builder()
            .mysqlId(exampleMysqlInstance.mysqlInstanceId())
            .accountName(exampleMysqlAccount.name())
            .globals("TRIGGER")
            .databases(            
                MysqlPrivilegeDatabaseArgs.builder()
                    .privileges(                    
                        "SELECT",
                        "INSERT",
                        "UPDATE",
                        "DELETE",
                        "CREATE")
                    .databaseName("sys")
                    .build(),
                MysqlPrivilegeDatabaseArgs.builder()
                    .privileges("SELECT")
                    .databaseName("performance_schema")
                    .build())
            .tables(            
                MysqlPrivilegeTableArgs.builder()
                    .privileges(                    
                        "SELECT",
                        "INSERT",
                        "UPDATE",
                        "DELETE",
                        "CREATE")
                    .databaseName("mysql")
                    .tableName("slow_log")
                    .build(),
                MysqlPrivilegeTableArgs.builder()
                    .privileges(                    
                        "SELECT",
                        "INSERT",
                        "UPDATE")
                    .databaseName("mysql")
                    .tableName("user")
                    .build())
            .columns(MysqlPrivilegeColumnArgs.builder()
                .privileges(                
                    "SELECT",
                    "INSERT",
                    "UPDATE",
                    "REFERENCES")
                .databaseName("mysql")
                .tableName("user")
                .columnName("host")
                .build())
            .build());

    }
}
Copy
resources:
  vpc:
    type: tencentcloud:Vpc
    properties:
      cidrBlock: 10.0.0.0/16
  subnet:
    type: tencentcloud:Subnet
    properties:
      availabilityZone: ${zones.zones[0].name}
      vpcId: ${vpc.vpcId}
      cidrBlock: 10.0.0.0/16
      isMulticast: false
  securityGroup:
    type: tencentcloud:SecurityGroup
    properties:
      description: mysql test
  exampleMysqlInstance:
    type: tencentcloud:MysqlInstance
    properties:
      internetService: 1
      engineVersion: '5.7'
      chargeType: POSTPAID
      rootPassword: PassWord123
      slaveDeployMode: 0
      availabilityZone: ${zones.zones[0].name}
      slaveSyncMode: 1
      instanceName: tf-example-mysql
      memSize: 4000
      volumeSize: 200
      vpcId: ${vpc.vpcId}
      subnetId: ${subnet.subnetId}
      intranetPort: 3306
      securityGroups:
        - ${securityGroup.securityGroupId}
      tags:
        name: test
      parameters:
        character_set_server: utf8
        max_connections: '1000'
  exampleMysqlAccount:
    type: tencentcloud:MysqlAccount
    properties:
      mysqlId: ${exampleMysqlInstance.mysqlInstanceId}
      password: Qwer@234
      description: desc.
      maxUserConnections: 10
  exampleMysqlPrivilege:
    type: tencentcloud:MysqlPrivilege
    properties:
      mysqlId: ${exampleMysqlInstance.mysqlInstanceId}
      accountName: ${exampleMysqlAccount.name}
      globals:
        - TRIGGER
      databases:
        - privileges:
            - SELECT
            - INSERT
            - UPDATE
            - DELETE
            - CREATE
          databaseName: sys
        - privileges:
            - SELECT
          databaseName: performance_schema
      tables:
        - privileges:
            - SELECT
            - INSERT
            - UPDATE
            - DELETE
            - CREATE
          databaseName: mysql
          tableName: slow_log
        - privileges:
            - SELECT
            - INSERT
            - UPDATE
          databaseName: mysql
          tableName: user
      columns:
        - privileges:
            - SELECT
            - INSERT
            - UPDATE
            - REFERENCES
          databaseName: mysql
          tableName: user
          columnName: host
variables:
  zones:
    fn::invoke:
      function: tencentcloud:getAvailabilityZonesByProduct
      arguments:
        product: cdb
Copy

Create MysqlPrivilege Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new MysqlPrivilege(name: string, args: MysqlPrivilegeArgs, opts?: CustomResourceOptions);
@overload
def MysqlPrivilege(resource_name: str,
                   args: MysqlPrivilegeArgs,
                   opts: Optional[ResourceOptions] = None)

@overload
def MysqlPrivilege(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   account_name: Optional[str] = None,
                   globals: Optional[Sequence[str]] = None,
                   mysql_id: Optional[str] = None,
                   account_host: Optional[str] = None,
                   columns: Optional[Sequence[MysqlPrivilegeColumnArgs]] = None,
                   databases: Optional[Sequence[MysqlPrivilegeDatabaseArgs]] = None,
                   mysql_privilege_id: Optional[str] = None,
                   tables: Optional[Sequence[MysqlPrivilegeTableArgs]] = None)
func NewMysqlPrivilege(ctx *Context, name string, args MysqlPrivilegeArgs, opts ...ResourceOption) (*MysqlPrivilege, error)
public MysqlPrivilege(string name, MysqlPrivilegeArgs args, CustomResourceOptions? opts = null)
public MysqlPrivilege(String name, MysqlPrivilegeArgs args)
public MysqlPrivilege(String name, MysqlPrivilegeArgs args, CustomResourceOptions options)
type: tencentcloud:MysqlPrivilege
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

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

MysqlPrivilege Resource Properties

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

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The MysqlPrivilege resource accepts the following input properties:

AccountName This property is required. string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
Globals This property is required. List<string>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
MysqlId This property is required. string
Instance ID.
AccountHost string
Account host, default is %.
Columns List<MysqlPrivilegeColumn>
Column privileges list.
Databases List<MysqlPrivilegeDatabase>
Database privileges list.
MysqlPrivilegeId string
ID of the resource.
Tables List<MysqlPrivilegeTable>
Table privileges list.
AccountName This property is required. string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
Globals This property is required. []string
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
MysqlId This property is required. string
Instance ID.
AccountHost string
Account host, default is %.
Columns []MysqlPrivilegeColumnArgs
Column privileges list.
Databases []MysqlPrivilegeDatabaseArgs
Database privileges list.
MysqlPrivilegeId string
ID of the resource.
Tables []MysqlPrivilegeTableArgs
Table privileges list.
accountName This property is required. String
Account name.the forbidden value is:root,mysql.sys,tencentroot.
globals This property is required. List<String>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId This property is required. String
Instance ID.
accountHost String
Account host, default is %.
columns List<MysqlPrivilegeColumn>
Column privileges list.
databases List<MysqlPrivilegeDatabase>
Database privileges list.
mysqlPrivilegeId String
ID of the resource.
tables List<MysqlPrivilegeTable>
Table privileges list.
accountName This property is required. string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
globals This property is required. string[]
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId This property is required. string
Instance ID.
accountHost string
Account host, default is %.
columns MysqlPrivilegeColumn[]
Column privileges list.
databases MysqlPrivilegeDatabase[]
Database privileges list.
mysqlPrivilegeId string
ID of the resource.
tables MysqlPrivilegeTable[]
Table privileges list.
account_name This property is required. str
Account name.the forbidden value is:root,mysql.sys,tencentroot.
globals This property is required. Sequence[str]
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysql_id This property is required. str
Instance ID.
account_host str
Account host, default is %.
columns Sequence[MysqlPrivilegeColumnArgs]
Column privileges list.
databases Sequence[MysqlPrivilegeDatabaseArgs]
Database privileges list.
mysql_privilege_id str
ID of the resource.
tables Sequence[MysqlPrivilegeTableArgs]
Table privileges list.
accountName This property is required. String
Account name.the forbidden value is:root,mysql.sys,tencentroot.
globals This property is required. List<String>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId This property is required. String
Instance ID.
accountHost String
Account host, default is %.
columns List<Property Map>
Column privileges list.
databases List<Property Map>
Database privileges list.
mysqlPrivilegeId String
ID of the resource.
tables List<Property Map>
Table privileges list.

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing MysqlPrivilege Resource

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

public static get(name: string, id: Input<ID>, state?: MysqlPrivilegeState, opts?: CustomResourceOptions): MysqlPrivilege
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        account_host: Optional[str] = None,
        account_name: Optional[str] = None,
        columns: Optional[Sequence[MysqlPrivilegeColumnArgs]] = None,
        databases: Optional[Sequence[MysqlPrivilegeDatabaseArgs]] = None,
        globals: Optional[Sequence[str]] = None,
        mysql_id: Optional[str] = None,
        mysql_privilege_id: Optional[str] = None,
        tables: Optional[Sequence[MysqlPrivilegeTableArgs]] = None) -> MysqlPrivilege
func GetMysqlPrivilege(ctx *Context, name string, id IDInput, state *MysqlPrivilegeState, opts ...ResourceOption) (*MysqlPrivilege, error)
public static MysqlPrivilege Get(string name, Input<string> id, MysqlPrivilegeState? state, CustomResourceOptions? opts = null)
public static MysqlPrivilege get(String name, Output<String> id, MysqlPrivilegeState state, CustomResourceOptions options)
resources:  _:    type: tencentcloud:MysqlPrivilege    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AccountHost string
Account host, default is %.
AccountName string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
Columns List<MysqlPrivilegeColumn>
Column privileges list.
Databases List<MysqlPrivilegeDatabase>
Database privileges list.
Globals List<string>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
MysqlId string
Instance ID.
MysqlPrivilegeId string
ID of the resource.
Tables List<MysqlPrivilegeTable>
Table privileges list.
AccountHost string
Account host, default is %.
AccountName string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
Columns []MysqlPrivilegeColumnArgs
Column privileges list.
Databases []MysqlPrivilegeDatabaseArgs
Database privileges list.
Globals []string
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
MysqlId string
Instance ID.
MysqlPrivilegeId string
ID of the resource.
Tables []MysqlPrivilegeTableArgs
Table privileges list.
accountHost String
Account host, default is %.
accountName String
Account name.the forbidden value is:root,mysql.sys,tencentroot.
columns List<MysqlPrivilegeColumn>
Column privileges list.
databases List<MysqlPrivilegeDatabase>
Database privileges list.
globals List<String>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId String
Instance ID.
mysqlPrivilegeId String
ID of the resource.
tables List<MysqlPrivilegeTable>
Table privileges list.
accountHost string
Account host, default is %.
accountName string
Account name.the forbidden value is:root,mysql.sys,tencentroot.
columns MysqlPrivilegeColumn[]
Column privileges list.
databases MysqlPrivilegeDatabase[]
Database privileges list.
globals string[]
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId string
Instance ID.
mysqlPrivilegeId string
ID of the resource.
tables MysqlPrivilegeTable[]
Table privileges list.
account_host str
Account host, default is %.
account_name str
Account name.the forbidden value is:root,mysql.sys,tencentroot.
columns Sequence[MysqlPrivilegeColumnArgs]
Column privileges list.
databases Sequence[MysqlPrivilegeDatabaseArgs]
Database privileges list.
globals Sequence[str]
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysql_id str
Instance ID.
mysql_privilege_id str
ID of the resource.
tables Sequence[MysqlPrivilegeTableArgs]
Table privileges list.
accountHost String
Account host, default is %.
accountName String
Account name.the forbidden value is:root,mysql.sys,tencentroot.
columns List<Property Map>
Column privileges list.
databases List<Property Map>
Database privileges list.
globals List<String>
Global privileges. available values for Privileges:ALTER,ALTER ROUTINE,CREATE,CREATE ROUTINE,CREATE TEMPORARY TABLES,CREATE USER,CREATE VIEW,DELETE,DROP,EVENT,EXECUTE,INDEX,INSERT,LOCK TABLES,PROCESS,REFERENCES,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SELECT,SHOW DATABASES,SHOW VIEW,TRIGGER,UPDATE.
mysqlId String
Instance ID.
mysqlPrivilegeId String
ID of the resource.
tables List<Property Map>
Table privileges list.

Supporting Types

MysqlPrivilegeColumn
, MysqlPrivilegeColumnArgs

ColumnName This property is required. string
Column name.
DatabaseName This property is required. string
Database name.
Privileges This property is required. List<string>
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
TableName This property is required. string
Table name.
ColumnName This property is required. string
Column name.
DatabaseName This property is required. string
Database name.
Privileges This property is required. []string
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
TableName This property is required. string
Table name.
columnName This property is required. String
Column name.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
tableName This property is required. String
Table name.
columnName This property is required. string
Column name.
databaseName This property is required. string
Database name.
privileges This property is required. string[]
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
tableName This property is required. string
Table name.
column_name This property is required. str
Column name.
database_name This property is required. str
Database name.
privileges This property is required. Sequence[str]
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
table_name This property is required. str
Table name.
columnName This property is required. String
Column name.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Column privilege.available values for Privileges:SELECT,INSERT,UPDATE,REFERENCES.
tableName This property is required. String
Table name.

MysqlPrivilegeDatabase
, MysqlPrivilegeDatabaseArgs

DatabaseName This property is required. string
Database name.
Privileges This property is required. List<string>
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.
DatabaseName This property is required. string
Database name.
Privileges This property is required. []string
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.
databaseName This property is required. string
Database name.
privileges This property is required. string[]
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.
database_name This property is required. str
Database name.
privileges This property is required. Sequence[str]
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Database privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES,EXECUTE,CREATE VIEW,SHOW VIEW,CREATE ROUTINE,ALTER ROUTINE,EVENT,TRIGGER.

MysqlPrivilegeTable
, MysqlPrivilegeTableArgs

DatabaseName This property is required. string
Database name.
Privileges This property is required. List<string>
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
TableName This property is required. string
Table name.
DatabaseName This property is required. string
Database name.
Privileges This property is required. []string
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
TableName This property is required. string
Table name.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
tableName This property is required. String
Table name.
databaseName This property is required. string
Database name.
privileges This property is required. string[]
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
tableName This property is required. string
Table name.
database_name This property is required. str
Database name.
privileges This property is required. Sequence[str]
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
table_name This property is required. str
Table name.
databaseName This property is required. String
Database name.
privileges This property is required. List<String>
Table privilege.available values for Privileges:SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,INDEX,ALTER,CREATE VIEW,SHOW VIEW,TRIGGER.
tableName This property is required. String
Table name.

Package Details

Repository
tencentcloud tencentcloudstack/terraform-provider-tencentcloud
License
Notes
This Pulumi package is based on the tencentcloud Terraform Provider.