Share via


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=2025-01-01

URI Parameters

Name In Required Type Description
databaseName
path True

string

The name of the database.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

serverName
path True

string

The name of the server.

subscriptionId
path True

string (uuid)

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

minLength: 1

The API version to use for this operation.

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

Azure operation completed successfully.

Other Status Codes

ErrorResponse

An unexpected error response.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

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=2025-01-01

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

Sample response

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

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

Sample response

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

createdByType

The type of identity that created the resource.

DatabaseAutomaticTuning

Database-level Automatic Tuning.

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

systemData

Metadata pertaining to creation and last modification of the resource.

AutomaticTuningDisabledReason

Reason description if desired and actual state are different.

Value Description
Default

Default

Disabled

Disabled

AutoConfigured

AutoConfigured

InheritedFromServer

InheritedFromServer

QueryStoreOff

QueryStoreOff

QueryStoreReadOnly

QueryStoreReadOnly

NotSupported

NotSupported

AutomaticTuningMode

Automatic tuning desired state.

Value Description
Inherit

Inherit

Custom

Custom

Auto

Auto

Unspecified

Unspecified

AutomaticTuningOptionModeActual

Automatic tuning option actual state.

Value Description
Off

Off

On

On

AutomaticTuningOptionModeDesired

Automatic tuning option desired state.

Value Description
Off

Off

On

On

Default

Default

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 (int32)

Reason code if desired and actual state are different.

reasonDesc

AutomaticTuningDisabledReason

Reason description if desired and actual state are different.

createdByType

The type of identity that created the resource.

Value Description
User
Application
ManagedIdentity
Key

DatabaseAutomaticTuning

Database-level Automatic Tuning.

Name Type Description
id

string (arm-id)

Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"

name

string

The name of the resource

properties.actualState

AutomaticTuningMode

Automatic tuning actual state.

properties.desiredState

AutomaticTuningMode

Automatic tuning desired state.

properties.options

<string,  AutomaticTuningOptions>

Automatic tuning options definition.

systemData

systemData

Azure Resource Manager metadata containing createdBy and modifiedBy information.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

systemData

Metadata pertaining to creation and last modification of the resource.

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC).

createdBy

string

The identity that created the resource.

createdByType

createdByType

The type of identity that created the resource.

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

The identity that last modified the resource.

lastModifiedByType

createdByType

The type of identity that last modified the resource.