Database Advisors - Update

更新資料庫建議程式。

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

URI 參數

名稱 位於 必要 類型 Description
advisorName
path True

string

Database Advisor 的名稱。

databaseName
path True

string

資料庫的名稱。

resourceGroupName
path True

string

minLength: 1
maxLength: 90

資源群組的名稱。 名稱不區分大小寫。

serverName
path True

string

伺服器的名稱。

subscriptionId
path True

string (uuid)

目標訂用帳戶的標識碼。 此值必須是 UUID。

api-version
query True

string

minLength: 1

用於此作業的 API 版本。

要求本文

名稱 必要 類型 Description
properties.autoExecuteStatus True

AutoExecuteStatus

取得此建議程式自動執行狀態(是否要讓系統執行建議)。 可能的值為 'Enabled' 和 'Disabled'

回應

名稱 類型 Description
200 OK

Advisor

Azure 運作順利完成。

Other Status Codes

ErrorResponse

未預期的錯誤回應。

安全性

azure_auth

Azure Active Directory OAuth2 Flow.

類型: oauth2
Flow: implicit
授權 URL: https://login.microsoftonline.com/common/oauth2/authorize

範圍

名稱 Description
user_impersonation 模擬您的用戶帳戶

範例

Update database advisor

範例要求

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

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

範例回覆

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

定義

名稱 Description
Advisor

資料庫、伺服器或彈性集區建議程式。

AdvisorStatus

取得此建議程式對客戶的可用性狀態。 可能的值為 'GA'、'PublicPreview'、'LimitedPublicPreview' 和 'PrivatePreview'。

AutoExecuteStatus

取得此建議程式自動執行狀態(是否要讓系統執行建議)。 可能的值為 'Enabled' 和 'Disabled'

AutoExecuteStatusInheritedFrom

取得從中繼承目前自動執行狀態值的資源。 您可以在資源階層中的不同層級上設定自動執行狀態。 可能的值為 'Subscription'、'Server'、'ElasticPool'、'Database' 和 'Default'(在任何層級上未明確設定狀態時)。

createdByType

建立資源的身分識別類型。

ErrorAdditionalInfo

資源管理錯誤附加資訊。

ErrorDetail

錯誤詳細資料。

ErrorResponse

錯誤回應

ImplementationMethod

取得這個建議動作可以手動實作的方法。 例如,TSql、AzurePowerShell。

IsRetryable

取得是否可以忽略錯誤,並重試建議的動作。 可能的值為:是/否

RecommendedAction

資料庫、伺服器或彈性集區建議動作。

RecommendedActionCurrentState

建議動作處於目前狀態。 一些常用的狀態為:作用中 -> 建議的動作為作用中,但尚未採取任何動作。 擱置中 -> 建議的動作已核准,且正在等候執行。 執行 -> 在用戶資料庫上套用建議的動作。 驗證 -> 已套用建議的動作,且系統正在驗證其實用性。 成功 -> 已套用建議的動作,並在驗證期間找到改進。 擱置還原 -> 驗證發現很少或沒有改善,因此建議的動作會排入佇列以進行還原,或使用者已手動還原。 還原 -> 在用戶資料庫上還原套用建議動作時所做的變更。 已還原 -> 成功還原使用者資料庫上建議動作所做的變更。 忽略 -> 用戶明確忽略/捨棄建議的動作。

RecommendedActionErrorInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的錯誤資訊。

RecommendedActionImpactRecord

包含對 Azure SQL Database、Server 或 Elastic Pool 建議行動的各種指標的估計或觀察影響資訊。

RecommendedActionImplementationInfo

包含 Azure SQL Database、Server 或 Elastic Pool 建議操作的手動實作資訊。

RecommendedActionInitiatedBy

取得使用者/系統是否核准套用此建議動作。

RecommendedActionMetricInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動中各種受影響指標的時間序列。

RecommendedActionStateInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的當前狀態資訊。

systemData

與建立和上次修改資源相關的元數據。

Advisor

資料庫、伺服器或彈性集區建議程式。

名稱 類型 Description
id

string (arm-id)

資源的完整資源標識碼。 例如,“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}”

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 (date-time)

取得此建議程式分析目前資源的時間。

properties.recommendationsStatus

string

取得此建議程序的建議狀態,以及沒有任何建議的原因。 可能的值包括但不限於 『Ok』 (建議可用)、LowActivity(沒有足夠的工作負載進行分析)、『DbSeemsTuned』(資料庫表現良好)等等。

properties.recommendedActions

RecommendedAction[]

取得此建議程序的建議動作。

systemData

systemData

Azure Resource Manager 包含 createdBy 與 modifiedBy 資訊的元資料。

type

string

資源的類型。 例如:「Microsoft。運算/虛擬機器」或「Microsoft」。儲存/儲存帳號」

AdvisorStatus

取得此建議程式對客戶的可用性狀態。 可能的值為 'GA'、'PublicPreview'、'LimitedPublicPreview' 和 'PrivatePreview'。

值 Description
GA

GA

PublicPreview

PublicPreview

LimitedPublicPreview

有限公開預覽

PrivatePreview

PrivatePreview

AutoExecuteStatus

取得此建議程式自動執行狀態(是否要讓系統執行建議)。 可能的值為 'Enabled' 和 'Disabled'

值 Description
Enabled

已啟用

Disabled

Disabled

Default

預設值

AutoExecuteStatusInheritedFrom

取得從中繼承目前自動執行狀態值的資源。 您可以在資源階層中的不同層級上設定自動執行狀態。 可能的值為 'Subscription'、'Server'、'ElasticPool'、'Database' 和 'Default'(在任何層級上未明確設定狀態時)。

值 Description
Default

預設值

Subscription

訂閱

Server

伺服器

ElasticPool

彈性池

Database

資料庫

createdByType

建立資源的身分識別類型。

值 Description
User
Application
ManagedIdentity
Key

ErrorAdditionalInfo

資源管理錯誤附加資訊。

名稱 類型 Description
info

object

附加資訊。

type

string

其他資訊類型。

ErrorDetail

錯誤詳細資料。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤附加資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳情

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

錯誤物件。

ImplementationMethod

取得這個建議動作可以手動實作的方法。 例如,TSql、AzurePowerShell。

值 Description
TSql

TSql

AzurePowerShell

AzurePowerShell

IsRetryable

取得是否可以忽略錯誤,並重試建議的動作。 可能的值為:是/否

值 Description
Yes

是的

No

No

RecommendedAction

資料庫、伺服器或彈性集區建議動作。

名稱 類型 Description
id

string (arm-id)

資源的完整資源標識碼。 例如,“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}”

kind

string

資源種類。

location

string

資源位置。

name

string

資源的名稱

properties.details

object

取得這個建議動作特有的其他詳細數據。

properties.errorDetails

RecommendedActionErrorInfo

取得錯誤詳細數據,以及為什麼這個建議的動作會置於錯誤狀態。

properties.estimatedImpact

RecommendedActionImpactRecord[]

取得此建議動作的預估影響資訊,例如估計 CPU 收益、估計磁碟空間變更

properties.executeActionDuration

string (duration)

取得在用戶資源上套用此建議動作所花費的時間。 例如,建立索引所花費的時間

properties.executeActionInitiatedBy

RecommendedActionInitiatedBy

取得使用者/系統是否核准套用此建議動作。

properties.executeActionInitiatedTime

string (date-time)

取得此建議動作核准執行的時間。

properties.executeActionStartTime

string (date-time)

取得系統開始對用戶資源套用此建議動作的時間。 例如,索引建立開始時間

properties.implementationDetails

RecommendedActionImplementationInfo

取得這個建議動作的實作詳細數據,讓使用者手動套用。

properties.isArchivedAction

boolean

取得如果某個時間前建議這個建議的動作,但用戶選擇忽略這個動作,而系統再次新增了建議的動作。

properties.isExecutableAction

boolean

取得使用者是否可採取這個建議動作

properties.isRevertableAction

boolean

取得使用者是否可以還原這個建議動作所套用的變更

properties.lastRefresh

string (date-time)

取得上次重新整理這個建議動作的時間。

properties.linkedObjects

string[]

取得連結的物件,如果有的話。

properties.observedImpact

RecommendedActionImpactRecord[]

取得這個建議動作的觀察到/實際影響資訊,例如實際 CPU 收益、實際磁碟空間變更

properties.recommendationReason

string

取得建議此動作的原因。 例如,DuplicateIndex

properties.revertActionDuration

string (duration)

取得在用戶資源上還原此建議動作變更所花費的時間。 例如,卸除已建立索引所花費的時間。

properties.revertActionInitiatedBy

RecommendedActionInitiatedBy

取得使用者/系統是否核准還原此建議動作。

properties.revertActionInitiatedTime

string (date-time)

取得此建議動作核准還原的時間。

properties.revertActionStartTime

string (date-time)

取得系統開始還原用戶資源上這個建議動作變更的時間。 例如,執行索引卸除的時間。

properties.score

integer (int32)

取得這個建議動作的影響。 可能的值為 1 - 低影響,2 - 中等影響和 3 - 高影響

properties.state

RecommendedActionStateInfo

取得建議動作目前狀態的資訊。

properties.timeSeries

RecommendedActionMetricInfo[]

取得此建議動作之計量的時間序列資訊,例如CPU耗用量時間序列

properties.validSince

string (date-time)

取得這個建議動作有效以來的時間。

systemData

systemData

Azure Resource Manager 包含 createdBy 與 modifiedBy 資訊的元資料。

type

string

資源的類型。 例如:「Microsoft。運算/虛擬機器」或「Microsoft」。儲存/儲存帳號」

RecommendedActionCurrentState

建議動作處於目前狀態。 一些常用的狀態為:作用中 -> 建議的動作為作用中,但尚未採取任何動作。 擱置中 -> 建議的動作已核准,且正在等候執行。 執行 -> 在用戶資料庫上套用建議的動作。 驗證 -> 已套用建議的動作,且系統正在驗證其實用性。 成功 -> 已套用建議的動作,並在驗證期間找到改進。 擱置還原 -> 驗證發現很少或沒有改善,因此建議的動作會排入佇列以進行還原,或使用者已手動還原。 還原 -> 在用戶資料庫上還原套用建議動作時所做的變更。 已還原 -> 成功還原使用者資料庫上建議動作所做的變更。 忽略 -> 用戶明確忽略/捨棄建議的動作。

值 Description
Active

作用中

Pending

等待中

Executing

執行中

Verifying

驗證

PendingRevert

待處理還原

RevertCancelled

RevertCancelled

Reverting

回歸

Reverted

恢復

Ignored

被忽略

Expired

已過期

Monitoring

Monitoring

Resolved

已解決

Success

成功

Error

錯誤

RecommendedActionErrorInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的錯誤資訊。

名稱 類型 Description
errorCode

string

取得將建議動作置於錯誤狀態的原因。 例如 DatabaseHasQdsOff、IndexAlreadyExists

isRetryable

IsRetryable

取得是否可以忽略錯誤,並重試建議的動作。 可能的值為:是/否

RecommendedActionImpactRecord

包含對 Azure SQL Database、Server 或 Elastic Pool 建議行動的各種指標的估計或觀察影響資訊。

名稱 類型 Description
absoluteValue

number (double)

如果適用,取得這個維度的絕對值。 例如,受影響的查詢數目

changeValueAbsolute

number (double)

取得這個維度值的絕對變更。 例如,以 MB 為單位的絕對磁碟空間變更

changeValueRelative

number (double)

取得這個維度值中的相對變更。 例如,百分比中的相對磁碟空間變更

dimensionName

string

取得影響維度的名稱。 例如,CPUChange、DiskSpaceChange、NumberOfQueriesAffected。

unit

string

取得影響維度的名稱。 例如,CPUChange、DiskSpaceChange、NumberOfQueriesAffected。

RecommendedActionImplementationInfo

包含 Azure SQL Database、Server 或 Elastic Pool 建議操作的手動實作資訊。

名稱 類型 Description
method

ImplementationMethod

取得這個建議動作可以手動實作的方法。 例如,TSql、AzurePowerShell。

script

string

取得手動實作腳本。 例如,可在資料庫上執行的 T-SQL 腳稿。

RecommendedActionInitiatedBy

取得使用者/系統是否核准套用此建議動作。

值 Description
User

User

System

System

RecommendedActionMetricInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動中各種受影響指標的時間序列。

名稱 類型 Description
metricName

string

取得計量的名稱。 例如,CPU、查詢數目。

startTime

string (date-time)

取得這個 MetricInfo 所指定時間間隔的開始時間。

timeGrain

string

取得這個 MetricInfo 所指定值的時間間隔持續時間。 例如 PT1H (1 小時)

unit

string

取得度量的測量單位。 例如 DTU、Frequency

value

number (double)

取得這個 MetricInfo 所指定時間間隔中的計量值。

RecommendedActionStateInfo

包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的當前狀態資訊。

名稱 類型 Description
actionInitiatedBy

RecommendedActionInitiatedBy

取得起始執行這個建議動作的人員。 可能的值為:使用者 -> 當使用者明確通知系統套用建議動作時。 系統 -> 當此建議程式自動執行狀態設定為 [已啟用] 時,在此情況下,系統會套用它。

currentValue

RecommendedActionCurrentState

建議動作處於目前狀態。 一些常用的狀態為:作用中 -> 建議的動作為作用中,但尚未採取任何動作。 擱置中 -> 建議的動作已核准,且正在等候執行。 執行 -> 在用戶資料庫上套用建議的動作。 驗證 -> 已套用建議的動作,且系統正在驗證其實用性。 成功 -> 已套用建議的動作,並在驗證期間找到改進。 擱置還原 -> 驗證發現很少或沒有改善,因此建議的動作會排入佇列以進行還原,或使用者已手動還原。 還原 -> 在用戶資料庫上還原套用建議動作時所做的變更。 已還原 -> 成功還原使用者資料庫上建議動作所做的變更。 忽略 -> 用戶明確忽略/捨棄建議的動作。

lastModified

string (date-time)

取得上次修改狀態的時間

systemData

與建立和上次修改資源相關的元數據。

名稱 類型 Description
createdAt

string (date-time)

資源建立的時間戳(UTC)。

createdBy

string

建立資源的身分識別。

createdByType

createdByType

建立資源的身分識別類型。

lastModifiedAt

string (date-time)

資源上次修改的時間戳記 (UTC)

lastModifiedBy

string

上次修改資源的身分識別。

lastModifiedByType

createdByType

上次修改資源的身分識別類型。