追蹤程式命令
管理追蹤程式組態的管理命令。 這些命令會同步執行,但在下一次定期架構重新整理時套用,這可能會導致短暫延遲,直到套用新的組態為止。
權限
您必須至少有 Database Admin 許可權才能執行此命令。
資料庫原則覆寫
領導者資料庫可以覆寫後續叢集中的下列資料庫層級原則: 快取原則 和 授權主體。
快取原則
後續叢集的預設 快取原則 會使用領導者叢集資料庫和數據表層級快取原則。
選項 | 描述 |
---|---|
None | 所使用的快取原則是在領導者叢集中的源資料庫中定義的原則。 |
replace | 已移除領導者叢集資料庫和數據表層級快取原則中的源資料庫(設定為 null )。 如果已定義,這些原則會由資料庫和數據表層級覆寫原則取代。 |
union(預設值) | 領導者叢集資料庫和數據表層級快取原則中的源資料庫會與資料庫和數據表層級覆寫原則中定義的原則結合。 |
注意
- 如果覆寫資料庫和數據表層級快取原則的集合是 空的,則預設會快取所有專案。
- 您可以將資料庫層級快取原則覆寫設定為
0d
,而且預設不會快取任何專案。
授權的主體
選項 | 描述 |
---|---|
None | 授權 主體 定義於領導者叢集的源資料庫中。 |
replace | 覆寫授權的主體會取代領導者叢集中源資料庫的授權主體。 |
union(預設值) | 覆寫授權主體會與領導者叢集中源資料庫的授權主體結合。 |
注意
如果覆寫授權主體的集合是 空的,就不會有資料庫層級主體。
數據表和具體化檢視原則覆寫
根據預設,資料庫中的數據表和具體化檢視會保留來源實體的快取原則。
不過,您可以在追蹤者叢集中覆寫數據表和具體化檢視 快 取原則。
replace
使用 選項來覆寫來源實體的快取原則。
資料庫層級命令
.show follower 資料庫
顯示後面接著其他領導者叢集的資料庫(或資料庫),該叢集已設定一或多個資料庫層級覆寫。
語法
.show
follower
database
DatabaseName
.show
follower
databases
(
DatabaseName1,
...,
DatabaseNameN)
輸出
輸出參數 | 類型 | 描述 |
---|---|---|
DatabaseName | string |
要追蹤之資料庫的名稱。 |
LeaderClusterMetadataPath | string |
領導者叢集元數據容器的路徑。 |
CachingPolicyOverride | string |
資料庫的覆寫快取原則、串行化為 JSON 或 Null。 |
AuthorizedPrincipalsOverride | string |
資料庫授權主體的覆寫集合、串行化為 JSON 或 Null。 |
AuthorizedPrincipalsModificationKind | string |
使用 AuthorizedPrincipalsOverride (none 、 union 或 replace ) 套用的修改種類。 |
CachingPoliciesModificationKind | string |
使用資料庫或數據表層級快取原則覆寫 (none 、 union 或 replace ) 套用的修改種類。 |
IsAutoPrefetchEnabled | bool |
是否在每個架構重新整理時預先擷取新的數據。 |
TableMetadataOverrides | string |
如果已定義,則會覆寫數據表層級屬性的 JSON 串行化。 |
.alter follower 資料庫原則快取
更改追蹤資料庫快取原則,以覆寫領導者叢集中源資料庫上設定的快取原則。
注意事項
- 快取原則的預設值
modification kind
為union
。 若要變更 ,modification kind
請使用.alter follower database caching-policies-modification-kind
命令。 - 您可以使用
.show
命令,在變更之後檢視原則或有效原則: - 使用完成變更之後,檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.alter
follower
database
DatabaseName policy
caching
hot
=
HotDataSpan
範例
.alter follower database MyDb policy caching hot = 7d
.delete follower 資料庫原則快取
刪除追蹤資料庫覆寫快取原則。 此刪除會導致在領導者叢集中的源資料庫上設定原則的有效原則。
注意事項
- 您可以使用
.show
命令,在變更之後檢視原則或有效原則: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.delete
follower
database
DatabaseName policy
caching
範例
.delete follower database MyDB policy caching
.add follower 資料庫主體
將授權主體新增至覆寫授權主體的追蹤資料庫集合。 注意事項
- 這類授權主體的預設值
modification kind
為none
。 若要變更modification kind
使用 alter follower 資料庫 principals-modification-kind。 - 您可以使用
.show
命令,在變更之後檢視主體的有效集合: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.add
follower
database
DatabaseName (viewers
| users
| | admins
monitors
) 角色(
主體1...,
,
principalN)
['
notes'
]
範例
.add follower database MyDB viewers ('aadgroup=mygroup@microsoft.com') 'My Group'
.drop follower 資料庫主體
從覆寫授權主體的追蹤資料庫集合卸除授權主體。
注意
- 您可以使用
.show
命令,在變更之後檢視主體的有效集合: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.drop
follower
database
DatabaseName (admins
| users
monitors
| | viewers
) (
principal1...,
,
principalN)
範例
.drop follower database MyDB viewers ('aadgroup=mygroup@microsoft.com')
.alter follower 資料庫主體-modification-kind
改變追蹤資料庫授權主體修改種類。
注意
- 您可以使用
.show
命令,在變更之後檢視主體的有效集合: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.alter
follower
database
DatabaseNameprincipals-modification-kind
= (none
| union
| replace
)
範例
.alter follower database MyDB principals-modification-kind = union
.alter follower 資料庫快取-policies-modification-kind
改變追蹤資料庫、數據表和具體化檢視的快取原則修改種類。
注意
- 使用標準
.show
命令完成變更之後,檢視資料庫/資料表層級快取原則的有效集合: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.alter
follower
database
DatabaseName caching-policies-modification-kind
= (none
| union
| replace
)
範例
.alter follower database MyDB caching-policies-modification-kind = union
.alter follower 資料庫預先擷取範圍
後續叢集可以等候從基礎記憶體擷取到節點 SSD(快取)的新數據,再讓此數據可供查詢。
下列命令會改變每個架構重新整理時預先擷取新範圍的追蹤資料庫組態。
警告
- 此設定可能會降低追蹤資料庫中數據的新鮮度。
- 默認組態為
false
,建議使用預設值。 - 選擇將設定變更為
true
時,請仔細評估組態變更后一段時間對新鮮度的影響。
語法
.alter
follower
database
DatabaseName prefetch-extents
= (true
| false
)
範例
.alter follower database MyDB prefetch-extents = false
數據表和具體化檢視命令
改變追蹤數據表或具體化檢視快取原則
更改數據表或後續資料庫上具體化檢視的快取原則,以覆寫在領導者叢集中源資料庫上設定的原則。
注意
- 您可以使用
.show
命令,在變更之後檢視原則或有效原則: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.alter
follower
database
DatabaseName 數據表 TableName policy
hot
=
caching
HotDataSpan
.alter
follower
database
DatabaseName 數據表 (
TableName1...,
,
TableNameNhot
)
policy
caching
=
HotDataSpan
.alter
follower
database
DatabaseName 具體化檢視 ViewName caching
=
policy
hot
HotDataSpan
.alter
follower
database
DatabaseName 具體化檢視 (
ViewName1...,
,
ViewNameNhot
)
policy
caching
=
HotDataSpan
範例
.alter follower database MyDb tables (Table1, Table2) policy caching hot = 7d
.alter follower database MyDb materialized-views (View1, View2) policy caching hot = 7d
刪除追蹤數據表或具體化檢視快取原則
刪除數據表的覆寫,或後續資料庫的具體化檢視快取原則。 在領導者叢集中的源資料庫上設定的原則現在將會是有效的原則。
注意
- 您可以使用
.show
命令,在變更之後檢視原則或有效原則: - 在變更完成後檢視追蹤者資料庫上的覆寫設定
.show follower database
語法
.delete
follower
database
DatabaseName table
TableName policy
caching
.delete
follower
database
DatabaseName tables
(
TableName1...,
,
TableNameN)
policy
caching
.delete
follower
database
DatabaseName ViewName materialized-view
policy
caching
.delete
follower
database
DatabaseName ViewName1...,
materialized-views
(
,
ViewNameN)
policy
caching
範例
.delete follower database MyDB tables (Table1, Table2) policy caching
.delete follower database MyDB materialized-views (View1, View2) policy caching
範例設定
以下是設定追蹤程式資料庫的範例步驟。
在此範例中:
我們的追蹤者叢集將會從領導者叢集
MyFollowerCluster
追蹤資料庫MyDatabase
。MyLeaderCluster
MyDatabase
有N
數據表:MyTable1
、、MyTable3
MyTable2
、...MyTableN
(N
>3)。- 在
MyLeaderCluster
:
MyTable1
快取原則MyTable2
快取原則MyTable3
...MyTableN
快取原則MyDatabase
授權的主體熱數據範圍 = 7d
熱數據範圍 = 30d
熱數據範圍 = 365d
檢視者 = aadgroup=scubadivers@contoso.com
; 系統管理員 =aaduser=jack@contoso.com
- 我們想要:
MyFollowerCluster
MyTable1
快取原則MyTable2
快取原則MyTable3
...MyTableN
快取原則MyDatabase
授權的主體熱數據範圍 = 1d
熱數據範圍 = 3d
熱資料範圍 = 0d
(未快取任何內容)= aaduser=jack@contoso.com
系統管理員、檢視者 =aaduser=jill@contoso.com
重要
MyFollowerCluster
和 MyLeaderCluster
必須位於相同的區域中。
要執行的步驟
必要條件:設定叢集以遵循叢集 MyLeaderCluster
MyFollowerCluster
中的資料庫MyDatabase
。
注意
執行管理指令的主體必須是 DatabaseAdmin
資料庫 MyDatabase
上的 。
顯示目前的組態
請參閱目前的組態 MyDatabase
,其遵循 MyFollowerCluster
如下:
.show follower database MyDatabase
| evaluate narrow() // just for presentation purposes
資料行 | 值 |
---|---|
DatabaseName | MyDatabase |
LeaderClusterMetadataPath | https://storageaccountname.blob.core.windows.net/cluster |
CachingPolicyOverride | null |
AuthorizedPrincipalsOverride | [] |
AuthorizedPrincipalsModificationKind | 無 |
IsAutoPrefetchEnabled | False |
TableMetadataOverrides | |
CachingPoliciesModificationKind | Union |
覆寫授權的主體
將 的授權主體MyDatabase
MyFollowerCluster
集合取代為僅包含一個 Microsoft Entra 使用者作為資料庫管理員的集合,並將一個 Microsoft Entra 使用者取代為資料庫查看器:
.add follower database MyDatabase admins ('aaduser=jack@contoso.com')
.add follower database MyDatabase viewers ('aaduser=jill@contoso.com')
.alter follower database MyDatabase principals-modification-kind = replace
只有這兩個特定主體有權存取MyDatabase
MyFollowerCluster
.show database MyDatabase principals
角色 | PrincipalType | PrincipalDisplayName | PrincipalObjectId | PrincipalFQN | 備註 |
---|---|---|---|---|---|
資料庫 MyDatabase 管理員 | Microsoft Entra 使用者 | 傑克·庫斯托(upn: jack@contoso.com) | 12345678-abcd-efef-1234-350bf486087b | aaduser=87654321-abcd-efef-1234-350bf486087b;55555555-4444-3333-2222-2d7cd011db47 | |
資料庫 MyDatabase 查看器 | Microsoft Entra 使用者 | 吉爾·庫斯托 (upn: jack@contoso.com) | abcdefab-abcd-efef-1234-350bf486087b | aaduser=54321789-abcd-efef-1234-350bf486087b;55555555-4444-3333-2222-2d7cd011db47 |
.show follower database MyDatabase
| mv-expand parse_json(AuthorizedPrincipalsOverride)
| project AuthorizedPrincipalsOverride.Principal.FullyQualifiedName
AuthorizedPrincipalsOverride_Principal_FullyQualifiedName |
---|
aaduser=87654321-abcd-efef-1234-350bf486087b;55555555-4444-3333-2222-2d7cd011db47 |
aaduser=54321789-abcd-efef-1234-350bf486087b;55555555-4444-3333-2222-2d7cd011db47 |
覆寫快取原則
將所有數據表設定為未快取其數據,而不包括兩個特定數據表 MyTable1
-, MyTable2
來取代 上的MyFollowerCluster
資料庫和數據表層級MyDatabase
快取原則集合,其數據會分別快取為 和 3d
的期間1d
:
.alter follower database MyDatabase policy caching hot = 0d
.alter follower database MyDatabase table MyTable1 policy caching hot = 1d
.alter follower database MyDatabase table MyTable2 policy caching hot = 3d
.alter follower database MyDatabase caching-policies-modification-kind = replace
只有這兩個特定數據表會快取數據,而其餘的數據表則具有的熱數據週期 0d
:
.show tables details
| summarize TableNames = make_list(TableName) by CachingPolicy
CachingPolicy | TableNames |
---|---|
{“DataHotSpan”:{“Value”:“1.00:00:00”},“IndexHotSpan”:{“Value”:“1.00:00:00”}} | [“MyTable1”] |
{“DataHotSpan”:{“Value”:“3.00:00:00”},“IndexHotSpan”:{“Value”:“3.00:00:00”}} | [“MyTable2”] |
{“DataHotSpan”:{“Value”:“0.00:00:00”},“IndexHotSpan”:{“Value”:“0.00:00:00”}} | [“MyTable3”,...,“MyTableN”] |
.show follower database MyDatabase
| mv-expand parse_json(TableMetadataOverrides)
| project TableMetadataOverrides
TableMetadataOverrides |
---|
{“MyTable1”:{“CachingPolicyOverride”:{“DataHotSpan”:{“Value”:“1.00:00:00”},“IndexHotSpan”:{“Value”:“1.00:00:00”}}}} |
{“MyTable2”:{“CachingPolicyOverride”:{“DataHotSpan”:{“Value”:“3.00:00:00”},“IndexHotSpan”:{“Value”:“3.00:00:00”}}} |
摘要
請參閱目前在 上MyFollowerCluster
所遵循的組態MyDatabase
:
.show follower database MyDatabase
| evaluate narrow() // just for presentation purposes
資料行 | 值 |
---|---|
DatabaseName | MyDatabase |
LeaderClusterMetadataPath | https://storageaccountname.blob.core.windows.net/cluster |
CachingPolicyOverride | {“DataHotSpan”:{“Value”:“00:00:00”},“IndexHotSpan”:{“Value”:“00:00:00”}} |
AuthorizedPrincipalsOverride | [{“Principal”:{“FullyQualifiedName”:“aaduser=87654321-abcd-efef-1234-350bf486087b”,...},{“Principal”:{“FullyQualifiedName”:“aaduser=54321789-abcd-efef-1234-350bf486087b”,...}] |
AuthorizedPrincipalsModificationKind | Replace |
IsAutoPrefetchEnabled | False |
TableMetadataOverrides | {“MyTargetTable”:{“CachingPolicyOverride”:{“DataHotSpan”:{“Value”:“3.00:00:00”}...},“MySourceTable”:{“CachingPolicyOverride”:{“DataHotSpan”:{“Value”:“1.00:00:00”},...}} |
CachingPoliciesModificationKind | Replace |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應