Database Advisors - Get
取得資料庫建議程式。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/advisors/{advisorName}?api-version=2025-01-01
URI 參數
| 名稱 | 位於 | 必要 | 類型 | Description |
|---|---|---|---|---|
|
advisor
|
path | True |
string |
Database Advisor 的名稱。 |
|
database
|
path | True |
string |
資料庫的名稱。 |
|
resource
|
path | True |
string minLength: 1maxLength: 90 |
資源群組的名稱。 名稱不區分大小寫。 |
|
server
|
path | True |
string |
伺服器的名稱。 |
|
subscription
|
path | True |
string (uuid) |
目標訂用帳戶的標識碼。 此值必須是 UUID。 |
|
api-version
|
query | True |
string minLength: 1 |
用於此作業的 API 版本。 |
回應
| 名稱 | 類型 | Description |
|---|---|---|
| 200 OK |
Azure 運作順利完成。 |
|
| Other Status Codes |
未預期的錯誤回應。 |
安全性
azure_auth
Azure Active Directory OAuth2 Flow.
類型:
oauth2
Flow:
implicit
授權 URL:
https://login.microsoftonline.com/common/oauth2/authorize
範圍
| 名稱 | Description |
|---|---|
| user_impersonation | 模擬您的用戶帳戶 |
範例
Get database advisor
範例要求
GET 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
範例回覆
{
"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 |
資料庫、伺服器或彈性集區建議程式。 |
|
Advisor |
取得此建議程式對客戶的可用性狀態。 可能的值為 'GA'、'PublicPreview'、'LimitedPublicPreview' 和 'PrivatePreview'。 |
|
Auto |
取得此建議程式自動執行狀態(是否要讓系統執行建議)。 可能的值為 'Enabled' 和 'Disabled' |
|
Auto |
取得從中繼承目前自動執行狀態值的資源。 您可以在資源階層中的不同層級上設定自動執行狀態。 可能的值為 'Subscription'、'Server'、'ElasticPool'、'Database' 和 'Default'(在任何層級上未明確設定狀態時)。 |
|
created |
建立資源的身分識別類型。 |
|
Error |
資源管理錯誤附加資訊。 |
|
Error |
錯誤詳細資料。 |
|
Error |
錯誤回應 |
|
Implementation |
取得這個建議動作可以手動實作的方法。 例如,TSql、AzurePowerShell。 |
|
Is |
取得是否可以忽略錯誤,並重試建議的動作。 可能的值為:是/否 |
|
Recommended |
資料庫、伺服器或彈性集區建議動作。 |
|
Recommended |
建議動作處於目前狀態。 一些常用的狀態為:作用中 -> 建議的動作為作用中,但尚未採取任何動作。 擱置中 -> 建議的動作已核准,且正在等候執行。 執行 -> 在用戶資料庫上套用建議的動作。 驗證 -> 已套用建議的動作,且系統正在驗證其實用性。 成功 -> 已套用建議的動作,並在驗證期間找到改進。 擱置還原 -> 驗證發現很少或沒有改善,因此建議的動作會排入佇列以進行還原,或使用者已手動還原。 還原 -> 在用戶資料庫上還原套用建議動作時所做的變更。 已還原 -> 成功還原使用者資料庫上建議動作所做的變更。 忽略 -> 用戶明確忽略/捨棄建議的動作。 |
|
Recommended |
包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的錯誤資訊。 |
|
Recommended |
包含對 Azure SQL Database、Server 或 Elastic Pool 建議行動的各種指標的估計或觀察影響資訊。 |
|
Recommended |
包含 Azure SQL Database、Server 或 Elastic Pool 建議操作的手動實作資訊。 |
|
Recommended |
取得使用者/系統是否核准套用此建議動作。 |
|
Recommended |
包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動中各種受影響指標的時間序列。 |
|
Recommended |
包含 Azure SQL Database、Server 或 Elastic Pool 推薦行動的當前狀態資訊。 |
|
system |
與建立和上次修改資源相關的元數據。 |
Advisor
資料庫、伺服器或彈性集區建議程式。
| 名稱 | 類型 | Description |
|---|---|---|
| id |
string (arm-id) |
資源的完整資源標識碼。 例如,“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}” |
| kind |
string |
資源種類。 |
| location |
string |
資源位置。 |
| name |
string |
資源的名稱 |
| properties.advisorStatus |
取得此建議程式對客戶的可用性狀態。 可能的值為 'GA'、'PublicPreview'、'LimitedPublicPreview' 和 'PrivatePreview'。 |
|
| properties.autoExecuteStatus |
取得此建議程式自動執行狀態(是否要讓系統執行建議)。 可能的值為 'Enabled' 和 'Disabled' |
|
| properties.autoExecuteStatusInheritedFrom |
取得從中繼承目前自動執行狀態值的資源。 您可以在資源階層中的不同層級上設定自動執行狀態。 可能的值為 'Subscription'、'Server'、'ElasticPool'、'Database' 和 'Default'(在任何層級上未明確設定狀態時)。 |
|
| properties.lastChecked |
string (date-time) |
取得此建議程式分析目前資源的時間。 |
| properties.recommendationsStatus |
string |
取得此建議程序的建議狀態,以及沒有任何建議的原因。 可能的值包括但不限於 『Ok』 (建議可用)、LowActivity(沒有足夠的工作負載進行分析)、『DbSeemsTuned』(資料庫表現良好)等等。 |
| properties.recommendedActions |
取得此建議程序的建議動作。 |
|
| 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 |
錯誤附加資訊。 |
|
| code |
string |
錯誤碼。 |
| details |
錯誤詳情 |
|
| message |
string |
錯誤訊息。 |
| target |
string |
錯誤目標。 |
ErrorResponse
錯誤回應
| 名稱 | 類型 | Description |
|---|---|---|
| error |
錯誤物件。 |
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 |
取得錯誤詳細數據,以及為什麼這個建議的動作會置於錯誤狀態。 |
|
| properties.estimatedImpact |
取得此建議動作的預估影響資訊,例如估計 CPU 收益、估計磁碟空間變更 |
|
| properties.executeActionDuration |
string (duration) |
取得在用戶資源上套用此建議動作所花費的時間。 例如,建立索引所花費的時間 |
| properties.executeActionInitiatedBy |
取得使用者/系統是否核准套用此建議動作。 |
|
| properties.executeActionInitiatedTime |
string (date-time) |
取得此建議動作核准執行的時間。 |
| properties.executeActionStartTime |
string (date-time) |
取得系統開始對用戶資源套用此建議動作的時間。 例如,索引建立開始時間 |
| properties.implementationDetails |
取得這個建議動作的實作詳細數據,讓使用者手動套用。 |
|
| properties.isArchivedAction |
boolean |
取得如果某個時間前建議這個建議的動作,但用戶選擇忽略這個動作,而系統再次新增了建議的動作。 |
| properties.isExecutableAction |
boolean |
取得使用者是否可採取這個建議動作 |
| properties.isRevertableAction |
boolean |
取得使用者是否可以還原這個建議動作所套用的變更 |
| properties.lastRefresh |
string (date-time) |
取得上次重新整理這個建議動作的時間。 |
| properties.linkedObjects |
string[] |
取得連結的物件,如果有的話。 |
| properties.observedImpact |
取得這個建議動作的觀察到/實際影響資訊,例如實際 CPU 收益、實際磁碟空間變更 |
|
| properties.recommendationReason |
string |
取得建議此動作的原因。 例如,DuplicateIndex |
| properties.revertActionDuration |
string (duration) |
取得在用戶資源上還原此建議動作變更所花費的時間。 例如,卸除已建立索引所花費的時間。 |
| properties.revertActionInitiatedBy |
取得使用者/系統是否核准還原此建議動作。 |
|
| properties.revertActionInitiatedTime |
string (date-time) |
取得此建議動作核准還原的時間。 |
| properties.revertActionStartTime |
string (date-time) |
取得系統開始還原用戶資源上這個建議動作變更的時間。 例如,執行索引卸除的時間。 |
| properties.score |
integer (int32) |
取得這個建議動作的影響。 可能的值為 1 - 低影響,2 - 中等影響和 3 - 高影響 |
| properties.state |
取得建議動作目前狀態的資訊。 |
|
| properties.timeSeries |
取得此建議動作之計量的時間序列資訊,例如CPU耗用量時間序列 |
|
| properties.validSince |
string (date-time) |
取得這個建議動作有效以來的時間。 |
| 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 |
取得是否可以忽略錯誤,並重試建議的動作。 可能的值為:是/否 |
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 |
取得這個建議動作可以手動實作的方法。 例如,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 |
取得起始執行這個建議動作的人員。 可能的值為:使用者 -> 當使用者明確通知系統套用建議動作時。 系統 -> 當此建議程式自動執行狀態設定為 [已啟用] 時,在此情況下,系統會套用它。 |
|
| currentValue |
建議動作處於目前狀態。 一些常用的狀態為:作用中 -> 建議的動作為作用中,但尚未採取任何動作。 擱置中 -> 建議的動作已核准,且正在等候執行。 執行 -> 在用戶資料庫上套用建議的動作。 驗證 -> 已套用建議的動作,且系統正在驗證其實用性。 成功 -> 已套用建議的動作,並在驗證期間找到改進。 擱置還原 -> 驗證發現很少或沒有改善,因此建議的動作會排入佇列以進行還原,或使用者已手動還原。 還原 -> 在用戶資料庫上還原套用建議動作時所做的變更。 已還原 -> 成功還原使用者資料庫上建議動作所做的變更。 忽略 -> 用戶明確忽略/捨棄建議的動作。 |
|
| lastModified |
string (date-time) |
取得上次修改狀態的時間 |
systemData
與建立和上次修改資源相關的元數據。
| 名稱 | 類型 | Description |
|---|---|---|
| createdAt |
string (date-time) |
資源建立的時間戳(UTC)。 |
| createdBy |
string |
建立資源的身分識別。 |
| createdByType |
建立資源的身分識別類型。 |
|
| lastModifiedAt |
string (date-time) |
資源上次修改的時間戳記 (UTC) |
| lastModifiedBy |
string |
上次修改資源的身分識別。 |
| lastModifiedByType |
上次修改資源的身分識別類型。 |