Method create

Creates a MySQL cluster in the specified folder.

HTTP request

POST https://mdb.api.cloud.yandex.net/managed-mysql/v1/clusters

Body parameters

{
  "folderId": "string",
  "name": "string",
  "description": "string",
  "labels": "object",
  "environment": "string",
  "configSpec": {
    "version": "string",
    "resources": {
      "resourcePresetId": "string",
      "diskSize": "string",
      "diskTypeId": "string"
    },
    "backupWindowStart": {
      "hours": "integer",
      "minutes": "integer",
      "seconds": "integer",
      "nanos": "integer"
    },
    "access": {
      "dataLens": true
    },

    // `configSpec` includes only one of the fields `mysqlConfig_5_7`, `mysqlConfig_8_0`
    "mysqlConfig_5_7": {
      "innodbBufferPoolSize": "integer",
      "maxConnections": "integer",
      "longQueryTime": "number",
      "generalLog": true,
      "auditLog": true,
      "sqlMode": [
        "string"
      ],
      "maxAllowedPacket": "integer",
      "defaultAuthenticationPlugin": "string"
    },
    "mysqlConfig_8_0": {
      "innodbBufferPoolSize": "integer",
      "maxConnections": "integer",
      "longQueryTime": "number",
      "generalLog": true,
      "auditLog": true,
      "sqlMode": [
        "string"
      ],
      "maxAllowedPacket": "integer",
      "defaultAuthenticationPlugin": "string"
    },
    // end of the list of possible fields`configSpec`

  },
  "databaseSpecs": [
    {
      "name": "string"
    }
  ],
  "userSpecs": [
    {
      "name": "string",
      "password": "string",
      "permissions": [
        {
          "databaseName": "string",
          "roles": [
            "string"
          ]
        }
      ]
    }
  ],
  "hostSpecs": [
    {
      "zoneId": "string",
      "subnetId": "string",
      "assignPublicIp": true
    }
  ],
  "networkId": "string"
}
Field Description
folderId string

Required. ID of the folder to create the MySQL cluster in.

The maximum string length in characters is 50.

name string

Required. Name of the MySQL cluster. The name must be unique within the folder.

The maximum string length in characters is 63. Value must match the regular expression [a-zA-Z0-9_-]*.

description string

Description of the MySQL cluster.

The maximum string length in characters is 256.

labels object

Custom labels for the MySQL cluster as key:value pairs. Maximum 64 per resource. For example, "project": "mvp" or "source": "dictionary".

No more than 64 per resource. The string length in characters for each key must be 1-63. Each key must match the regular expression [a-z][-_0-9a-z]. The maximum string length in characters for each value is 63. Each value must match the regular expression [-_0-9a-z].

environment string

Deployment environment of the MySQL cluster.

  • PRODUCTION: Stable environment with a conservative update policy: only hotfixes are applied during regular maintenance.
  • PRESTABLE: Environment with more aggressive update policy: new versions are rolled out irrespective of backward compatibility.
configSpec object

Configuration and resources for hosts that should be created for the MySQL cluster.

configSpec.
version
string

Version of MySQL used in the cluster. Possible values:

  • 5.7
  • 8.0
configSpec.
resources
object
Resources allocated to MySQL hosts.
configSpec.
resources.
resourcePresetId
string

ID of the preset for computational resources available to a host (CPU, memory etc.). All available presets are listed in the documentation.

configSpec.
resources.
diskSize
string (int64)

Volume of the storage available to a host.

configSpec.
resources.
diskTypeId
string

Type of the storage environment for the host. Possible values:

  • network-ssd — network SSD drive,
  • local-ssd — local SSD storage.
configSpec.
backupWindowStart
object
Time to start the daily backup, in the UTC timezone.

Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp.

configSpec.
backupWindowStart.
hours
integer (int32)

Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.

configSpec.
backupWindowStart.
minutes
integer (int32)

Minutes of hour of day. Must be from 0 to 59.

configSpec.
backupWindowStart.
seconds
integer (int32)

Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.

configSpec.
backupWindowStart.
nanos
integer (int32)

Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.

configSpec.
access
object
Access policy to DB
configSpec.
access.
dataLens
boolean (boolean)

Allow access for DataLens

configSpec.
mysqlConfig_5_7
object
Configuration for a MySQL 5.7 cluster.
configSpec includes only one of the fields mysqlConfig_5_7, mysqlConfig_8_0

Options and structure of MysqlConfig5_7 reflects MySQL 5.7 configuration file

configSpec.
mysqlConfig_5_7.
innodbBufferPoolSize
integer (int64)

Size of the InnoDB buffer pool used for caching table and index data.

For details, see MySQL documentation for the parameter.

The minimum value is 5242880.

configSpec.
mysqlConfig_5_7.
maxConnections
integer (int64)

The maximum permitted number of simultaneous client connections.

For details, see MySQL documentation for the variable.

Acceptable values are 10 to 10000, inclusive.

configSpec.
mysqlConfig_5_7.
longQueryTime
number (double)

Time that it takes to process a query before it is considered slow.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_5_7.
generalLog
boolean (boolean)

Enable writing of general query log of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_5_7.
auditLog
boolean (boolean)

Enable writing of audit log of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_5_7.
sqlMode[]
string

Server SQL mode of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_5_7.
maxAllowedPacket
integer (int64)

The maximum size in bytes of one packet.

For details, see MySQL documentation for the variable.

Acceptable values are 1024 to 134217728, inclusive.

configSpec.
mysqlConfig_5_7.
defaultAuthenticationPlugin
string
configSpec.
mysqlConfig_8_0
object
configSpec includes only one of the fields mysqlConfig_5_7, mysqlConfig_8_0

Options and structure of MysqlConfig8_0 reflects MySQL 8.0 configuration file

configSpec.
mysqlConfig_8_0.
innodbBufferPoolSize
integer (int64)

Size of the InnoDB buffer pool used for caching table and index data.

For details, see MySQL documentation for the parameter.

The minimum value is 5242880.

configSpec.
mysqlConfig_8_0.
maxConnections
integer (int64)

The maximum permitted number of simultaneous client connections.

For details, see MySQL documentation for the variable.

Acceptable values are 10 to 10000, inclusive.

configSpec.
mysqlConfig_8_0.
longQueryTime
number (double)

Time that it takes to process a query before it is considered slow.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_8_0.
generalLog
boolean (boolean)

Enable writing of general query log of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_8_0.
auditLog
boolean (boolean)

Enable writing of audit log of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_8_0.
sqlMode[]
string

Server SQL mode of MySQL.

For details, see MySQL documentation for the variable.

configSpec.
mysqlConfig_8_0.
maxAllowedPacket
integer (int64)

The maximum size in bytes of one packet.

For details, see MySQL documentation for the variable.

Acceptable values are 1024 to 134217728, inclusive.

configSpec.
mysqlConfig_8_0.
defaultAuthenticationPlugin
string
databaseSpecs[] object

Descriptions of databases to be created in the MySQL cluster.

databaseSpecs[].
name
string

Required. Name of the MySQL database.

The maximum string length in characters is 63. Value must match the regular expression [a-zA-Z0-9_-]*.

userSpecs[] object

Descriptions of database users to be created in the MySQL cluster.

userSpecs[].
name
string

Required. Name of the MySQL user.

The maximum string length in characters is 32. Value must match the regular expression [a-zA-Z0-9_]*.

userSpecs[].
password
string

Required. Password of the MySQL user.

The string length in characters must be 8-128.

userSpecs[].
permissions[]
object

Set of permissions to grant to the user.

userSpecs[].
permissions[].
databaseName
string

Name of the database that the permission grants access to.

userSpecs[].
permissions[].
roles[]
string
  • ALL_PRIVILEGES: All privileges that can be made available to the user.
  • ALTER: Altering tables.
  • ALTER_ROUTINE: Altering stored routines (stored procedures and functions).
  • CREATE: Creating tables or indexes.
  • CREATE_ROUTINE: Creating stored routines.
  • CREATE_TEMPORARY_TABLES: Creating temporary tables.
  • CREATE_VIEW: Creating views.
  • DELETE: Deleting tables.
  • DROP: Removing tables or views.
  • EVENT: Creating, altering, dropping, or displaying events for the Event Scheduler.
  • EXECUTE: Executing stored routines.
  • INDEX: Creating and removing indexes.
  • INSERT: Inserting rows into the database.
  • LOCK_TABLES: Using LOCK TABLES statement for tables available with SELECT privilege.
  • SELECT: Selecting rows from tables.

Some SELECT statements can be allowed without the SELECT privilege. All statements that read column values require the SELECT privilege. See details in MySQL documentation.

  • SHOW_VIEW: Using the SHOW CREATE VIEW statement. Also needed for views used with EXPLAIN.
  • TRIGGER: Creating, removing, executing, or displaying triggers for a table.
  • UPDATE: Updating rows in the database.
hostSpecs[] object

Individual configurations for hosts that should be created for the MySQL cluster.

hostSpecs[].
zoneId
string

ID of the availability zone where the host resides. To get a list of available zones, use the list request.

The maximum string length in characters is 50.

hostSpecs[].
subnetId
string

ID of the subnet that the host should belong to. This subnet should be a part of the network that the cluster belongs to. The ID of the network is set in the field Cluster.networkId.

The maximum string length in characters is 50.

hostSpecs[].
assignPublicIp
boolean (boolean)

Whether the host should get a public IP address on creation.

After a host has been created, this setting cannot be changed. To remove an assigned public IP, or to assign a public IP to a host without one, recreate the host with assignPublicIp set as needed.

Possible values:

  • false — don't assign a public IP to the host.
  • true — the host should have a public IP address.
networkId string

ID of the network to create the cluster in.

The maximum string length in characters is 50.

Response

HTTP Code: 200 - OK

{
  "id": "string",
  "description": "string",
  "createdAt": "string",
  "createdBy": "string",
  "modifiedAt": "string",
  "done": true,
  "metadata": "object",

  //  includes only one of the fields `error`, `response`
  "error": {
    "code": "integer",
    "message": "string",
    "details": [
      "object"
    ]
  },
  "response": "object",
  // end of the list of possible fields

}

An Operation resource. For more information, see Operation.

Field Description
id string

ID of the operation.

description string

Description of the operation. 0-256 characters long.

createdAt string (date-time)

Creation timestamp.

String in RFC3339 text format.

createdBy string

ID of the user or service account who initiated the operation.

modifiedAt string (date-time)

The time when the Operation resource was last modified.

String in RFC3339 text format.

done boolean (boolean)

If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.

metadata object

Service-specific metadata associated with the operation. It typically contains the ID of the target resource that the operation is performed on. Any method that returns a long-running operation should document the metadata type, if any.

error object
The error result of the operation in case of failure or cancellation.
includes only one of the fields error, response

The error result of the operation in case of failure or cancellation.

error.
code
integer (int32)

Error code. An enum value of google.rpc.Code.

error.
message
string

An error message.

error.
details[]
object

A list of messages that carry the error details.

response object
includes only one of the fields error, response

The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is the standard Create/Update, the response should be the target resource of the operation. Any method that returns a long-running operation should document the response type, if any.