DBaaS Mysql

MySQL, the popular open-source, object-relational database.

Read more

create-dbaas-mysql-database

Create a DBaaS MySQL database

POST /dbaas-mysql/{service-name}/database

null

Path parameters

NameInDescription
service-namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
database-namestringyesService database name
Example
{
  "database-name": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-mysql-database: golang | Python | Java

CLI: exo api create-dbaas-mysql-database

delete-dbaas-mysql-database

Delete a DBaaS MySQL database

DELETE /dbaas-mysql/{service-name}/database/{database-name}

null

Path parameters

NameInDescription
service-namepath
database-namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-mysql-database: golang | Python | Java

CLI: exo api delete-dbaas-mysql-database

create-dbaas-mysql-user

Create a DBaaS MySQL user

POST /dbaas-mysql/{service-name}/user

null

Path parameters

NameInDescription
service-namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
usernamestringyesUsername
authenticationstringnoAuthentication option

Allowed values: caching_sha2_password, mysql_native_password.
Example
{
  "authentication": "caching_sha2_password",
  "username": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-mysql-user: golang | Python | Java

CLI: exo api create-dbaas-mysql-user

delete-dbaas-mysql-user

Delete a DBaaS MySQL user

DELETE /dbaas-mysql/{service-name}/user/{username}

null

Path parameters

NameInDescription
service-namepath
usernamepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-mysql-user: golang | Python | Java

CLI: exo api delete-dbaas-mysql-user

reveal-dbaas-mysql-user-password

Reveal the secrets of a DBaaS MySQL user

GET /dbaas-mysql/{service-name}/user/{username}/password/reveal

null

Path parameters

NameInDescription
service-namepath
usernamepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
passwordstringMySQL password
usernamestringMySQL username
Example output
{
  "password": "string",
  "username": "string"
}

SDK reference for reveal-dbaas-mysql-user-password: golang | Python | Java

CLI: exo api reveal-dbaas-mysql-user-password

reset-dbaas-mysql-user-password

Reset the credentials of a DBaaS mysql user

PUT /dbaas-mysql/{service-name}/user/{username}/password/reset

If no password is provided one will be generated automatically.

Path parameters

NameInDescription
service-namepath
usernamepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
authenticationstringnoAuthentication method

Allowed values: caching_sha2_password, mysql_native_password.
passwordstringnoNew password
Example
{
  "authentication": "caching_sha2_password",
  "password": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for reset-dbaas-mysql-user-password: golang | Python | Java

CLI: exo api reset-dbaas-mysql-user-password

create-dbaas-service-mysql

Create a DBaaS MySQL service

POST /dbaas-mysql/{name}

Create a DBaaS MySQL service

Path parameters

NameInDescription
namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
planstringyesSubscription plan
admin-passwordstringnoCustom password for admin user. Defaults to random string. This must be set only when a new service is being created.
admin-usernamestringnoCustom username for admin user. This must be set only when a new service is being created.
backup-scheduleobjectnoschema details
binlog-retention-periodintegernoThe minimum amount of time in seconds to keep binlog entries before deletion. This may be extended for services that require binlog entries for longer than the default for example if using the MySQL Debezium Kafka connector.
fork-from-servicestringnoService to fork from
integrationsarray[object]noService integrations to be enabled when creating the service. schema details
ip-filterarray[string]noAllow incoming connections from CIDR address block, e.g. ‘10.20.0.0/16’
maintenanceobjectnoAutomatic maintenance settings schema details
migrationobjectnoMigrate data from existing server schema details
mysql-settingsobjectnoMySQL-specific settings schema details
recovery-backup-timestringnoISO time of a backup to recover from for services that support arbitrary times
termination-protectionbooleannoService is protected against termination and powering off
versionstringnoMySQL major version
Example
{
  "admin-password": "string",
  "admin-username": "string",
  "backup-schedule": {
    "backup-hour": 0,
    "backup-minute": 0
  },
  "binlog-retention-period": 0,
  "fork-from-service": "string",
  "integrations": [
    {
      "dest-service": "string",
      "settings": {},
      "source-service": "string",
      "type": "read_replica"
    }
  ],
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "migration": {
    "dbname": "string",
    "host": "string",
    "ignore-dbs": "string",
    "method": "dump",
    "password": "string",
    "port": 0,
    "ssl": true,
    "username": "string"
  },
  "mysql-settings": {
    "connect_timeout": 0,
    "default_time_zone": "+03:00",
    "group_concat_max_len": 0,
    "information_schema_stats_expiry": 0,
    "innodb_change_buffer_max_size": 0,
    "innodb_flush_neighbors": 0,
    "innodb_ft_min_token_size": 0,
    "innodb_ft_server_stopword_table": "db_name/table_name",
    "innodb_lock_wait_timeout": 0,
    "innodb_log_buffer_size": 0,
    "innodb_online_alter_log_max_size": 0,
    "innodb_print_all_deadlocks": true,
    "innodb_read_io_threads": 0,
    "innodb_rollback_on_timeout": true,
    "innodb_thread_concurrency": 0,
    "innodb_write_io_threads": 0,
    "interactive_timeout": 0,
    "internal_tmp_mem_storage_engine": "TempTable",
    "log_output": "INSIGHTS",
    "long_query_time": 0,
    "max_allowed_packet": 0,
    "max_heap_table_size": 0,
    "net_buffer_length": 0,
    "net_read_timeout": 0,
    "net_write_timeout": 0,
    "slow_query_log": true,
    "sort_buffer_size": 0,
    "sql_mode": "ANSI,TRADITIONAL",
    "sql_require_primary_key": true,
    "tmp_table_size": 0,
    "wait_timeout": 0
  },
  "plan": "string",
  "recovery-backup-time": "string",
  "termination-protection": true,
  "version": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-service-mysql: golang | Python | Java

CLI: exo api create-dbaas-service-mysql

get-dbaas-service-mysql

Get a DBaaS MySQL service

GET /dbaas-mysql/{name}

Get a DBaaS MySQL service

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
backup-scheduleobjectBackup schedule schema details
backupsarray[object]List of backups for the service schema details
componentsarray[object]Service component information objects schema details
connection-infoobjectMySQL connection information properties schema details
created-atstringService creation timestamp (ISO 8601)
databasesarray[string]List of MySQL databases
disk-sizeintegerTODO UNIT disk space for data storage
integrationsarray[object]Service integrations schema details
ip-filterarray[string]Allowed CIDR address blocks for incoming connections
maintenanceobjectAutomatic maintenance settings schema details
mysql-settingsobjectMySQL-specific settings schema details
namestringService name
node-countintegerNumber of service nodes in the active plan
node-cpu-countintegerNumber of CPUs for each node
node-memoryintegerTODO UNIT of memory for each node
node-statesarray[object]State of individual service nodes schema details
notificationsarray[object]Service notifications schema details
planstringSubscription plan
prometheus-uriobjectPrometheus integration URI schema details
statestringState of the service

Allowed values: running, rebuilding, rebalancing, poweroff.
termination-protectionbooleanService is protected against termination and powering off
typestringService type code
updated-atstringService last update timestamp (ISO 8601)
uristringURI for connecting to the service (may be absent)
uri-paramsobjectservice_uri parameterized into key-value pairs
usersarray[object]List of service users schema details
versionstringMySQL version
zonestringThe zone where the service is running
Example output
{
  "backup-schedule": {
    "backup-hour": 0,
    "backup-minute": 0
  },
  "backups": [
    {
      "backup-name": "string",
      "backup-time": "2024-01-01T12:00:00Z",
      "data-size": 0
    }
  ],
  "components": [
    {
      "component": "string",
      "host": "string",
      "port": 0,
      "route": "dynamic",
      "usage": "primary"
    }
  ],
  "connection-info": {
    "params": [
      {}
    ],
    "standby": [
      "string"
    ],
    "uri": [
      "string"
    ]
  },
  "created-at": "2024-01-01T12:00:00Z",
  "databases": [
    "string"
  ],
  "disk-size": 0,
  "integrations": [
    {
      "description": "string",
      "dest": "string",
      "id": "string",
      "is-active": true,
      "is-enabled": true,
      "settings": {},
      "source": "string",
      "status": "string",
      "type": "string"
    }
  ],
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string",
    "updates": [
      {
        "deadline": "2024-01-01T12:00:00Z",
        "description": "string",
        "start-after": "2024-01-01T12:00:00Z",
        "start-at": "2024-01-01T12:00:00Z"
      }
    ]
  },
  "mysql-settings": {
    "connect_timeout": 0,
    "default_time_zone": "+03:00",
    "group_concat_max_len": 0,
    "information_schema_stats_expiry": 0,
    "innodb_change_buffer_max_size": 0,
    "innodb_flush_neighbors": 0,
    "innodb_ft_min_token_size": 0,
    "innodb_ft_server_stopword_table": "db_name/table_name",
    "innodb_lock_wait_timeout": 0,
    "innodb_log_buffer_size": 0,
    "innodb_online_alter_log_max_size": 0,
    "innodb_print_all_deadlocks": true,
    "innodb_read_io_threads": 0,
    "innodb_rollback_on_timeout": true,
    "innodb_thread_concurrency": 0,
    "innodb_write_io_threads": 0,
    "interactive_timeout": 0,
    "internal_tmp_mem_storage_engine": "TempTable",
    "log_output": "INSIGHTS",
    "long_query_time": 0,
    "max_allowed_packet": 0,
    "max_heap_table_size": 0,
    "net_buffer_length": 0,
    "net_read_timeout": 0,
    "net_write_timeout": 0,
    "slow_query_log": true,
    "sort_buffer_size": 0,
    "sql_mode": "ANSI,TRADITIONAL",
    "sql_require_primary_key": true,
    "tmp_table_size": 0,
    "wait_timeout": 0
  },
  "name": "string",
  "node-count": 0,
  "node-cpu-count": 0,
  "node-memory": 0,
  "node-states": [
    {
      "name": "string",
      "progress-updates": [
        {
          "completed": true,
          "current": 0,
          "max": 0,
          "min": 0,
          "phase": "stream",
          "unit": "string"
        }
      ],
      "role": "standby",
      "state": "leaving"
    }
  ],
  "notifications": [
    {
      "level": "warning",
      "message": "string",
      "metadata": {},
      "type": "service_powered_off_removal"
    }
  ],
  "plan": "string",
  "prometheus-uri": {
    "host": "string",
    "port": 0
  },
  "state": "running",
  "termination-protection": true,
  "type": "string",
  "updated-at": "2024-01-01T12:00:00Z",
  "uri": "string",
  "uri-params": {},
  "users": [
    {
      "authentication": "string",
      "password": "string",
      "type": "string",
      "username": "string"
    }
  ],
  "version": "string",
  "zone": "string"
}

SDK reference for get-dbaas-service-mysql: golang | Python | Java

CLI: exo api get-dbaas-service-mysql

update-dbaas-service-mysql

Update a DBaaS MySQL service

PUT /dbaas-mysql/{name}

Update a DBaaS MySQL service

Path parameters

NameInDescription
namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
backup-scheduleobjectnoschema details
binlog-retention-periodintegernoThe minimum amount of time in seconds to keep binlog entries before deletion. This may be extended for services that require binlog entries for longer than the default for example if using the MySQL Debezium Kafka connector.
ip-filterarray[string]noAllow incoming connections from CIDR address block, e.g. ‘10.20.0.0/16’
maintenanceobjectnoAutomatic maintenance settings schema details
migrationobjectnoMigrate data from existing server schema details
mysql-settingsobjectnoMySQL-specific settings schema details
planstringnoSubscription plan
termination-protectionbooleannoService is protected against termination and powering off
Example
{
  "backup-schedule": {
    "backup-hour": 0,
    "backup-minute": 0
  },
  "binlog-retention-period": 0,
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "migration": {
    "dbname": "string",
    "host": "string",
    "ignore-dbs": "string",
    "method": "dump",
    "password": "string",
    "port": 0,
    "ssl": true,
    "username": "string"
  },
  "mysql-settings": {
    "connect_timeout": 0,
    "default_time_zone": "+03:00",
    "group_concat_max_len": 0,
    "information_schema_stats_expiry": 0,
    "innodb_change_buffer_max_size": 0,
    "innodb_flush_neighbors": 0,
    "innodb_ft_min_token_size": 0,
    "innodb_ft_server_stopword_table": "db_name/table_name",
    "innodb_lock_wait_timeout": 0,
    "innodb_log_buffer_size": 0,
    "innodb_online_alter_log_max_size": 0,
    "innodb_print_all_deadlocks": true,
    "innodb_read_io_threads": 0,
    "innodb_rollback_on_timeout": true,
    "innodb_thread_concurrency": 0,
    "innodb_write_io_threads": 0,
    "interactive_timeout": 0,
    "internal_tmp_mem_storage_engine": "TempTable",
    "log_output": "INSIGHTS",
    "long_query_time": 0,
    "max_allowed_packet": 0,
    "max_heap_table_size": 0,
    "net_buffer_length": 0,
    "net_read_timeout": 0,
    "net_write_timeout": 0,
    "slow_query_log": true,
    "sort_buffer_size": 0,
    "sql_mode": "ANSI,TRADITIONAL",
    "sql_require_primary_key": true,
    "tmp_table_size": 0,
    "wait_timeout": 0
  },
  "plan": "string",
  "termination-protection": true
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for update-dbaas-service-mysql: golang | Python | Java

CLI: exo api update-dbaas-service-mysql

delete-dbaas-service-mysql

Delete a MySQL service

DELETE /dbaas-mysql/{name}

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-service-mysql: golang | Python | Java

CLI: exo api delete-dbaas-service-mysql


Other Operations

start-dbaas-mysql-maintenance

Initiate MySQL maintenance update

PUT /dbaas-mysql/{name}/maintenance/start

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for start-dbaas-mysql-maintenance: golang | Python | Java

CLI: exo api start-dbaas-mysql-maintenance

stop-dbaas-mysql-migration

Stop a DBaaS MySQL migration

POST /dbaas-mysql/{name}/migration/stop

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for stop-dbaas-mysql-migration: golang | Python | Java

CLI: exo api stop-dbaas-mysql-migration

enable-dbaas-mysql-writes

Temporarily enable writes for MySQL services in read-only mode due to filled up storage

PUT /dbaas-mysql/{name}/enable/writes

null

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for enable-dbaas-mysql-writes: golang | Python | Java

CLI: exo api enable-dbaas-mysql-writes

get-dbaas-settings-mysql

Get DBaaS MySQL settings

GET /dbaas-settings-mysql

Get DBaaS MySQL settings

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
settingsobjectschema details
Example output
{
  "settings": {
    "mysql": {
      "additionalProperties": true,
      "properties": {},
      "title": "string",
      "type": "string"
    }
  }
}

SDK reference for get-dbaas-settings-mysql: golang | Python | Java

CLI: exo api get-dbaas-settings-mysql

Last updated on