Database Automatic Tuning - Update

Update automatic tuning properties for target database.

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/automaticTuning/current?api-version=2021-11-01

URI Parameters

Name In Required Type Description
databaseName
path True

string

The name of the database.

resourceGroupName
path True

string

The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

serverName
path True

string

The name of the server.

subscriptionId
path True

string

The subscription ID that identifies an Azure subscription.

api-version
query True

string

The API version to use for the request.

Request Body

Name Type Description
properties.desiredState

AutomaticTuningMode

Automatic tuning desired state.

properties.options

<string,  AutomaticTuningOptions>

Automatic tuning options definition.

Responses

Name Type Description
200 OK

DatabaseAutomaticTuning

Successfully updated the specified database automatic tuning settings.

Other Status Codes

*** Error Responses: ***

  • 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.

  • 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.

  • 400 SystemDatabasesNotSupported - User tried to get automatic tuning information on system databases.

  • 400 DataWarehouseNotSupported - Automatic tuning is not supported for SQL Data Warehouse.

  • 400 InvalidAutomaticTuningUpsertRequest - The update automatic tuning request body does not exist or has no properties object.

  • 400 InvalidAdvisorAutoExecuteStatus - Specified auto-execute status for the advisor is not allowed.

  • 404 DatabaseDoesNotExist - The requested database was not found

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 404 SubscriptionDoesNotHaveElasticPool - The requested elastic pool was not found

  • 404 OperationIdNotFound - The operation with Id does not exist.

  • 404 AutomaticTuningOptionNotFound - The requested automatic tuning option was not found.

  • 405 NotSupported - This functionality is not supported.

  • 409 Conflict - Request could not be processed because of conflict in the request.

  • 409 OperationCancelled - The operation has been cancelled by user.

  • 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.

  • 409 DisabledBySystem - This option is disabled by system

  • 409 DefaultAdvisorStateNotAllowedInCustomDbMode - DEFAULT advisor state is not allowed in CUSTOM mode

  • 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.

  • 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.

  • 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.

  • 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.

  • 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.

Examples

Updates database automatic tuning settings with all properties
Updates database automatic tuning settings with minimal properties

Updates database automatic tuning settings with all properties

Sample request

PATCH https://management.azure.com/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current?api-version=2021-11-01

{
  "properties": {
    "desiredState": "Auto",
    "options": {
      "createIndex": {
        "desiredState": "Off"
      },
      "dropIndex": {
        "desiredState": "On"
      },
      "forceLastGoodPlan": {
        "desiredState": "Default"
      }
    }
  }
}

Sample response

{
  "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current",
  "name": "current",
  "type": "Microsoft.Sql/servers/databases/automaticTuning",
  "properties": {
    "desiredState": "Auto",
    "actualState": "Auto",
    "options": {
      "forceLastGoodPlan": {
        "desiredState": "Default",
        "actualState": "On",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      },
      "createIndex": {
        "desiredState": "Off",
        "actualState": "Off"
      },
      "dropIndex": {
        "desiredState": "On",
        "actualState": "On"
      },
      "maintainIndex": {
        "desiredState": "Default",
        "actualState": "Off",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      }
    }
  }
}

Updates database automatic tuning settings with minimal properties

Sample request

PATCH https://management.azure.com/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current?api-version=2021-11-01

{
  "properties": {
    "desiredState": "Auto"
  }
}

Sample response

{
  "id": "/subscriptions/c3aa9078-0000-0000-0000-e36f151182d7/resourceGroups/default-sql-onebox/providers/Microsoft.Sql/servers/testsvr11/databases/db1/automaticTuning/current",
  "name": "current",
  "type": "Microsoft.Sql/servers/databases/automaticTuning",
  "properties": {
    "desiredState": "Auto",
    "actualState": "Auto",
    "options": {
      "forceLastGoodPlan": {
        "desiredState": "Default",
        "actualState": "On",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      },
      "createIndex": {
        "desiredState": "Default",
        "actualState": "On",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      },
      "dropIndex": {
        "desiredState": "Default",
        "actualState": "Off",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      },
      "maintainIndex": {
        "desiredState": "Default",
        "actualState": "Off",
        "reasonCode": 2,
        "reasonDesc": "AutoConfigured"
      }
    }
  }
}

Definitions

Name Description
AutomaticTuningDisabledReason

Reason description if desired and actual state are different.

AutomaticTuningMode

Automatic tuning desired state.

AutomaticTuningOptionModeActual

Automatic tuning option actual state.

AutomaticTuningOptionModeDesired

Automatic tuning option desired state.

AutomaticTuningOptions

Automatic tuning properties for individual advisors.

DatabaseAutomaticTuning

Database-level Automatic Tuning.

AutomaticTuningDisabledReason

Reason description if desired and actual state are different.

Name Type Description
AutoConfigured

string

Default

string

Disabled

string

InheritedFromServer

string

NotSupported

string

QueryStoreOff

string

QueryStoreReadOnly

string

AutomaticTuningMode

Automatic tuning desired state.

Name Type Description
Auto

string

Custom

string

Inherit

string

Unspecified

string

AutomaticTuningOptionModeActual

Automatic tuning option actual state.

Name Type Description
Off

string

On

string

AutomaticTuningOptionModeDesired

Automatic tuning option desired state.

Name Type Description
Default

string

Off

string

On

string

AutomaticTuningOptions

Automatic tuning properties for individual advisors.

Name Type Description
actualState

AutomaticTuningOptionModeActual

Automatic tuning option actual state.

desiredState

AutomaticTuningOptionModeDesired

Automatic tuning option desired state.

reasonCode

integer

Reason code if desired and actual state are different.

reasonDesc

AutomaticTuningDisabledReason

Reason description if desired and actual state are different.

DatabaseAutomaticTuning

Database-level Automatic Tuning.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.actualState

AutomaticTuningMode

Automatic tuning actual state.

properties.desiredState

AutomaticTuningMode

Automatic tuning desired state.

properties.options

<string,  AutomaticTuningOptions>

Automatic tuning options definition.

type

string

Resource type.