你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Database Advisors - Update

汇报数据库顾问。

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

URI 参数

名称 必需 类型 说明
advisorName
path True

string

数据库顾问的名称。

databaseName
path True

string

数据库的名称。

resourceGroupName
path True

string

包含该资源的资源组名称。 可以从 Azure 资源管理器 API 或门户获取此值。

serverName
path True

string

服务器的名称。

subscriptionId
path True

string

用于标识 Azure 订阅的订阅 ID。

api-version
query True

string

要用于请求的 API 版本。

请求正文

名称 必需 类型 说明
properties.autoExecuteStatus True

AutoExecuteStatus

获取自动执行状态 (是否允许系统执行此顾问的建议) 。 可能的值为“Enabled”和“Disabled”

响应

名称 类型 说明
200 OK

Advisor

已成功更新指定的数据库顾问。

Other Status Codes

错误响应: ***

  • 400 FeatureDisabledOnSelectedEdition - 用户尝试使用在当前数据库版本上禁用的功能。

  • 400 InvalidIdentifier - 标识符包含 NULL 或无效的 unicode 字符。

  • 400 DataWarehouseNotSupported - SQL Data Warehouse不支持自动优化。

  • 400 InvalidAdvisorUpsertRequest - 更新顾问请求正文不存在或没有 properties 对象。

  • 400 InvalidAdvisorAutoExecuteStatus - 不允许为顾问指定自动执行状态。

  • 404 DatabaseDoesNotExist - 找不到请求的数据库

  • 404 SubscriptionDoesNotHaveServer - 找不到请求的服务器

  • 404 SubscriptionDoesNotHaveElasticPool - 找不到请求的弹性池

  • 404 AdvisorNotFound - 找不到请求的顾问。

  • 404 AutomaticTuningOptionNotFound - 找不到请求的自动优化选项。

  • 405 NotSupported - 不支持此功能。

  • 409 冲突 - 由于请求中的冲突,无法处理请求。

  • 409 DisabledBySystem - 此选项由系统禁用

  • 409 DefaultAdvisorStateNotAllowedInCustomDbMode - 在自定义模式下不允许使用 DEFAULT 顾问状态

  • 503 ServiceTemporarilyUnavailable - 功能暂时不可用。

示例

Update database advisor

Sample Request

PATCH https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex?api-version=2021-11-01

{
  "properties": {
    "autoExecuteStatus": "Disabled"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workloadinsight-demos/providers/Microsoft.Sql/servers/misosisvr/databases/IndexAdvisor_test_3/advisors/CreateIndex",
  "name": "CreateIndex",
  "type": "Microsoft.Sql/servers/databases/advisors",
  "properties": {
    "advisorStatus": "GA",
    "autoExecuteStatus": "Disabled",
    "recommendationsStatus": "Ok",
    "lastChecked": "2017-06-20T00:24:39Z"
  }
}

定义

名称 说明
Advisor

数据库、服务器或弹性池顾问。

AdvisorStatus

获取此顾问对客户的可用性状态。 可能的值为“GA”、“PublicPreview”、“LimitedPublicPreview”和“PrivatePreview”。

AutoExecuteStatus

获取自动执行状态 (是否允许系统执行此顾问的建议) 。 可能的值为“Enabled”和“Disabled”

AutoExecuteStatusInheritedFrom

获取从中继承自动执行状态的当前值的资源。 可以在 (上设置自动执行状态,并从资源层次结构中的) 不同级别继承。 未在任何级别 () 上显式设置状态时,可能的值为“Subscription”、“Server”、“ElasticPool”、“Database”和“Default”。

ImplementationMethod

获取可手动实现此建议操作的方法。 例如,TSql、AzurePowerShell。

IsRetryable

获取是否可以忽略错误并重试建议的操作。 可能的值为:是/否

RecommendedAction

数据库、服务器或弹性池建议的操作。

RecommendedActionCurrentState

建议操作处于的当前状态。 一些常用状态为:活动 -> 建议的操作处于活动状态,尚未执行任何操作。 挂起 -> 建议的操作已批准,正在等待执行。 正在对用户数据库应用执行 -> 建议的操作。 验证 -> 建议的操作已应用,并且正在由系统验证其有用性。 成功 -> 在验证过程中应用了建议的操作并发现了改进。 挂起还原 -> 验证发现很少或没有改进,因此建议的操作排队等待还原或用户已手动还原。 还原 -> 在用户数据库上还原应用建议操作时所做的更改。 已还原 -> 已成功还原对用户数据库的建议操作所做的更改。 忽略 -> 用户显式忽略/放弃建议的操作。

RecommendedActionErrorInfo

包含Azure SQL数据库、服务器或弹性池建议操作的错误信息。

RecommendedActionImpactRecord

包含对Azure SQL数据库、服务器或弹性池建议操作的各种指标的估计或观察到的影响的信息。

RecommendedActionImplementationInfo

包含有关Azure SQL数据库、服务器或弹性池建议操作的手动实现的信息。

RecommendedActionInitiatedBy

获取发起执行此建议操作的人员。 可能的值是:用户 -> 当用户显式通知系统应用建议的操作时。 系统 -> 当此顾问的自动执行状态设置为“已启用”时,系统应用了它。

RecommendedActionMetricInfo

包含Azure SQL数据库、服务器或弹性池建议操作的各种受影响指标的时序。

RecommendedActionStateInfo

包含Azure SQL数据库、服务器或弹性池建议操作的当前状态信息。

Advisor

数据库、服务器或弹性池顾问。

名称 类型 说明
id

string

资源 ID。

kind

string

资源类型。

location

string

资源位置。

name

string

资源名称。

properties.advisorStatus

AdvisorStatus

获取此顾问对客户的可用性状态。 可能的值为“GA”、“PublicPreview”、“LimitedPublicPreview”和“PrivatePreview”。

properties.autoExecuteStatus

AutoExecuteStatus

获取自动执行状态 (是否允许系统执行此顾问的建议) 。 可能的值为“Enabled”和“Disabled”

properties.autoExecuteStatusInheritedFrom

AutoExecuteStatusInheritedFrom

获取从中继承自动执行状态的当前值的资源。 可以在 (上设置自动执行状态,并从资源层次结构中的) 不同级别继承。 未在任何级别 () 上显式设置状态时,可能的值为“Subscription”、“Server”、“ElasticPool”、“Database”和“Default”。

properties.lastChecked

string

获取此顾问分析当前资源以获取建议的时间。

properties.recommendationsStatus

string

获取此顾问的建议状态以及没有任何建议的原因。 可能的值包括但不限于“正常” (建议) 可用、低活动 (没有足够的工作负荷来分析) 、“DbSeemsTuned” (数据库) 表现良好等。

properties.recommendedActions

RecommendedAction[]

获取此顾问的建议操作。

type

string

资源类型。

AdvisorStatus

获取此顾问对客户的可用性状态。 可能的值为“GA”、“PublicPreview”、“LimitedPublicPreview”和“PrivatePreview”。

名称 类型 说明
GA

string

LimitedPublicPreview

string

PrivatePreview

string

PublicPreview

string

AutoExecuteStatus

获取自动执行状态 (是否允许系统执行此顾问的建议) 。 可能的值为“Enabled”和“Disabled”

名称 类型 说明
Default

string

Disabled

string

Enabled

string

AutoExecuteStatusInheritedFrom

获取从中继承自动执行状态的当前值的资源。 可以在 (上设置自动执行状态,并从资源层次结构中的) 不同级别继承。 未在任何级别 () 上显式设置状态时,可能的值为“Subscription”、“Server”、“ElasticPool”、“Database”和“Default”。

名称 类型 说明
Database

string

Default

string

ElasticPool

string

Server

string

Subscription

string

ImplementationMethod

获取可手动实现此建议操作的方法。 例如,TSql、AzurePowerShell。

名称 类型 说明
AzurePowerShell

string

TSql

string

IsRetryable

获取是否可以忽略错误并重试建议的操作。 可能的值为:是/否

名称 类型 说明
No

string

Yes

string

RecommendedAction

数据库、服务器或弹性池建议的操作。

名称 类型 说明
id

string

资源 ID。

kind

string

资源类型。

location

string

资源位置。

name

string

资源名称。

properties.details

object

获取特定于此建议操作的其他详细信息。

properties.errorDetails

RecommendedActionErrorInfo

获取错误详细信息,如果以及为何将此建议操作置于错误状态。

properties.estimatedImpact

RecommendedActionImpactRecord[]

获取此建议操作的估计影响信息,例如估计的 CPU 增益、估计的磁盘空间更改

properties.executeActionDuration

string

获取对用户资源应用此建议操作所需的时间。 例如,创建索引所用的时间

properties.executeActionInitiatedBy

RecommendedActionInitiatedBy

获取用户/系统是否批准应用此建议操作。

properties.executeActionInitiatedTime

string

获取批准执行此建议操作的时间。

properties.executeActionStartTime

string

获取系统开始对用户资源应用此建议操作的时间。 例如,索引创建开始时间

properties.implementationDetails

RecommendedActionImplementationInfo

获取此建议操作的实现详细信息,以便用户手动应用它。

properties.isArchivedAction

boolean

获取是否在一段时间前建议了此建议操作,但用户选择忽略此操作,并且系统再次添加了新的建议操作。

properties.isExecutableAction

boolean

获取此建议操作是否可由用户操作

properties.isRevertableAction

boolean

获取用户是否可以还原此建议操作应用的更改

properties.lastRefresh

string

获取上次刷新此建议操作的时间。

properties.linkedObjects

string[]

获取链接的对象(如果有)。

properties.observedImpact

RecommendedActionImpactRecord[]

获取此建议操作的观察到/实际影响信息,例如实际 CPU 增益、实际磁盘空间更改

properties.recommendationReason

string

获取建议此操作的原因。 例如,DuplicateIndex

properties.revertActionDuration

string

获取在用户资源上还原此建议操作的更改所花费的时间。 例如,删除创建的索引所花费的时间。

properties.revertActionInitiatedBy

RecommendedActionInitiatedBy

获取用户/系统是否批准还原此建议操作。

properties.revertActionInitiatedTime

string

获取为还原批准此建议操作的时间。

properties.revertActionStartTime

string

获取系统开始还原用户资源上此建议操作的更改的时间。 例如,执行索引删除的时间。

properties.score

integer

获取此建议操作的影响。 可能的值为 1 - 低影响、2 - 中等影响和 3 - 高影响

properties.state

RecommendedActionStateInfo

获取建议操作处于的当前状态的信息。

properties.timeSeries

RecommendedActionMetricInfo[]

获取此建议操作的指标的时序信息,例如 CPU 消耗时序

properties.validSince

string

获取自此建议操作有效以来的时间。

type

string

资源类型。

RecommendedActionCurrentState

建议操作处于的当前状态。 一些常用状态为:活动 -> 建议的操作处于活动状态,尚未执行任何操作。 挂起 -> 建议的操作已批准,正在等待执行。 正在对用户数据库应用执行 -> 建议的操作。 验证 -> 建议的操作已应用,并且正在由系统验证其有用性。 成功 -> 在验证过程中应用了建议的操作并发现了改进。 挂起还原 -> 验证发现很少或没有改进,因此建议的操作排队等待还原或用户已手动还原。 还原 -> 在用户数据库上还原应用建议操作时所做的更改。 已还原 -> 已成功还原对用户数据库的建议操作所做的更改。 忽略 -> 用户显式忽略/放弃建议的操作。

名称 类型 说明
Active

string

Error

string

Executing

string

Expired

string

Ignored

string

Monitoring

string

Pending

string

PendingRevert

string

Resolved

string

RevertCancelled

string

Reverted

string

Reverting

string

Success

string

Verifying

string

RecommendedActionErrorInfo

包含Azure SQL数据库、服务器或弹性池建议操作的错误信息。

名称 类型 说明
errorCode

string

获取将建议的操作置于错误状态的原因。 例如 DatabaseHasQdsOff、IndexAlreadyExists

isRetryable

IsRetryable

获取是否可以忽略错误并重试建议的操作。 可能的值为:是/否

RecommendedActionImpactRecord

包含对Azure SQL数据库、服务器或弹性池建议操作的各种指标的估计或观察到的影响的信息。

名称 类型 说明
absoluteValue

number

获取此维度的绝对值(如果适用)。 例如,受影响的查询数

changeValueAbsolute

number

获取此维度的值的绝对变化。 例如,绝对磁盘空间更改(以兆字节为单位)

changeValueRelative

number

获取此维度的值的相对变化。 例如,百分比中的相对磁盘空间更改

dimensionName

string

获取影响维度的名称。 例如,CPUChange、DiskSpaceChange、NumberOfQueriesAffected。

unit

string

获取影响维度的名称。 例如,CPUChange、DiskSpaceChange、NumberOfQueriesAffected。

RecommendedActionImplementationInfo

包含有关Azure SQL数据库、服务器或弹性池建议操作的手动实现的信息。

名称 类型 说明
method

ImplementationMethod

获取可手动实现此建议操作的方法。 例如,TSql、AzurePowerShell。

script

string

获取手动实现脚本。 例如,可在数据库上执行的 T-SQL 脚本。

RecommendedActionInitiatedBy

获取发起执行此建议操作的人员。 可能的值是:用户 -> 当用户显式通知系统应用建议的操作时。 系统 -> 当此顾问的自动执行状态设置为“已启用”时,系统应用了它。

名称 类型 说明
System

string

User

string

RecommendedActionMetricInfo

包含Azure SQL数据库、服务器或弹性池建议操作的各种受影响指标的时序。

名称 类型 说明
metricName

string

获取指标的名称。 例如,CPU、查询数。

startTime

string

获取此 MetricInfo 给定的时间间隔的开始时间。

timeGrain

string

获取此 MetricInfo 给定值的时间间隔持续时间。 例如,PT1H (1 小时)

unit

string

获取度量指标的单位。 例如,DTU、频率

value

number

获取此 MetricInfo 给定的时间间隔中的指标值。

RecommendedActionStateInfo

包含Azure SQL数据库、服务器或弹性池建议操作的当前状态信息。

名称 类型 说明
actionInitiatedBy

RecommendedActionInitiatedBy

获取发起执行此建议操作的人员。 可能的值是:用户 -> 当用户显式通知系统应用建议的操作时。 系统 -> 当此顾问的自动执行状态设置为“已启用”时,系统应用了它。

currentValue

RecommendedActionCurrentState

建议操作处于的当前状态。 一些常用状态为:活动 -> 建议的操作处于活动状态,尚未执行任何操作。 挂起 -> 建议的操作已批准,正在等待执行。 正在对用户数据库应用执行 -> 建议的操作。 验证 -> 建议的操作已应用,并且正在由系统验证其有用性。 成功 -> 在验证过程中应用了建议的操作并发现了改进。 挂起还原 -> 验证发现很少或没有改进,因此建议的操作排队等待还原或用户已手动还原。 还原 -> 在用户数据库上还原应用建议操作时所做的更改。 已还原 -> 已成功还原对用户数据库的建议操作所做的更改。 忽略 -> 用户显式忽略/放弃建议的操作。

lastModified

string

获取上次修改状态的时间