封存與清除資料庫
本節說明如何在 Windows Server AppFabric 中封存和清除監控儲存區 (預設名稱為 ApplicationServerMonitoring),或是只清除持續性儲存區 (預設名稱為 ApplicationServerPersistence)。監控或持續性儲存區會隨著其大小不斷成長,累積大量資料。為了讓效能維持在最佳狀態,您會想要根據特定條件封存較舊的監控資料,或分別從 AppFabric 監控或持續性儲存區清除任何過時的執行個體持續性資料。
使用 AppFabric,您只能利用隨附於 AppFabric 且特別針對此工作設計的 Windows PowerShell Cmdlet,來封存和清除儲存區。封存的資料只適用於監控儲存區的內容。因為監控資料的本質為歷程記錄,而且「AppFabric 儀表板」會在 [追蹤的事件] 頁面的 [WCF 呼叫歷程記錄] 區段以及 [追蹤的 WF 執行個體] 頁面的 [WF 執行個體歷程記錄] 區段中顯示歷程記錄監控衡量標準,所以才值得封存監控資料。但是,在 [持續性 WF 執行個體] 頁面的 [持續性 WF 執行個體] 區段中顯示的衡量標準,則是目前持續性工作流程執行個體的即時資料。若封存持續性工作流程執行個體資訊,稍後在這些工作流程執行個體完成後且不再存在時,再檢視這些資訊,並無法提供非常有用的資訊。因此,所有與封存相關的 Cmdlet 只適用於監控儲存區。清除 Cmdlet 功能則適用於監控與持續性儲存區。AppFabric 自動資料儲存區清除功能只是用於使用 Microsoft SQL Server 來儲存監控資料的 AppFabric 安裝。監控儲存區是具有自動清除功能的唯一 AppFabric 資料庫。您無法為持續性儲存區設定自動清除功能。
用於清除和封存資料庫的 Cmdlet
下列 AppFabric Windows PowerShell Cmdlet 可用來執行與清除和封存 AppFabric 儲存區關聯的各種工作。
Cmdlet | 描述 |
---|---|
Clear-ASMonitoringSqlDatabase |
清除監控資料庫的資料。或者,將清除的資料傳送至封存資料庫。 |
Set-ASMonitoringSqlDatabaseArchiveConfiguration |
將監控資料庫與目的地封存資料庫關聯。目的地封存資料庫必須是現存且已初始化的監控資料庫。 |
Get-ASMonitoringSqlDatabaseArchiveConfiguration |
從指定的監控資料庫傳回封存組態 (基本上是可識別封存目的地資料庫的連接字串)。 |
Remove-ASMonitoringSqlDatabaseArchiveConfiguration |
移除監控資料庫之封存資料庫的組態資訊。這假設先前已使用 Set-ASMonitoringSqlDatabaseArchiveConfiguration 來設定封存組態。 |
Remove-ASAppServiceInstance |
清除持續性儲存區的「過時」執行個體資料。清除的執行個體資料沒有可用的封存選項。 |
以下各節詳細說明每個 Cmdlet,並提供範例以顯示 Cmdlet 的使用方式。
設定、取得與移除監控儲存區組態
Set-ASMonitoringSqlDatabaseArchiveConfiguration 利用關聯的封存目的地資料庫來設定指定的監控資料庫。封存目的地資料庫必須是現存且已初始化的監控資料庫。此 Cmdlet 可確保主要與封存資料庫都包含監控資料庫成品且兩者的版本相符。
Get-ASMonitoringSqlDatabaseArchiveConfiguration 可從監控資料庫擷取封存資料庫組態。
Remove-ASMonitoringSqlDatabaseArchiveConfiguration 可移除監控資料庫之封存資料庫的組態資訊。
Set-ASMonitoringSqlDatabaseArchiveConfiguration
語法 1:
Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -Database <String> [-Confirm] [-LinkedArchiveServer <String>] [-Server <String>] [-WhatIf] [<CommonParameters>]
語法 2:
Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -ConnectionString <String> [-Confirm] [-LinkedArchiveServer <String>] [-WhatIf] [<CommonParameters>]
參數 | 描述 |
---|---|
ArchiveDatabase |
目的地封存資料庫的名稱。 |
Database |
要設定封存選項的主要資料庫名稱。若指定 ConnectionString,則此為選擇性參數。 |
ConnectionString |
主要監控資料庫的連接字串。 |
LinkedArchiveServer |
主控目的地封存資料庫的 SQL Server 名稱。 |
Server |
主控主要監控資料庫的 SQL Server 名稱。 |
WhatIf |
連線到資料庫,但不實際設定封存功能。可省略。 |
範例
下列範例設定主要監控資料庫 ApplicationServerMonitoring 的封存組態。目的地封存資料庫是 ArchiveMonitoringDatabase。系統會在設定封存組態之前,提示使用者確認操作。
Set-ASMonitoringSqlDatabaseArchiveConfiguration –ArchiveDatabase ArchiveMonitoringDatabase –Database ApplicationServerMonitoring
Get-ASMonitoringSqlDatabaseArchiveConfiguration
語法 1:
Get-ASMonitoringSqlDatabaseArchiveConfiguration -Database <String> [-Server <String>] [<CommonParameters>]
語法 2:
Get-ASMonitoringSqlDatabaseArchiveConfiguration -ConnectionString <String> [<CommonParameters>]
參數 | 描述 |
---|---|
Database |
要擷取其封存組態的主要資料庫名稱。若指定連接字串,則此為選擇性參數。 |
Server |
主控主要監控資料庫的 SQL Server 名稱。可省略;若未指定此參數,預設會使用本機電腦。 |
ConnectionString |
主要監控資料庫的連接字串。若已指定 Database 與 Server,則此為選擇性參數;否則預設會使用本機電腦。 |
Remove-ASMonitoringSqlDatabaseArchiveConfiguration
語法 1:
Remove-MonitoringDatabaseArchiveConfiguration [-Database <String>] [–Server <String>] [-Confirm <Switch>][-ConnectionString<String>]
參數 | 描述 |
---|---|
Database |
要擷取其封存組態的主要資料庫名稱。若指定連接字串,則此為選擇性參數。 |
Server |
主控主要監控資料庫的 SQL Server 名稱。可省略;若未指定此參數,預設會使用本機電腦。 |
Confirm |
指定時,使用者必須確認移除連結的操作。 |
ConnectionString |
主要監控資料庫的連接字串。若指定 Database 參數與 Server 參數時,則此為選擇性參數;否則預設會使用本機電腦。 |
範例
下列範例會移除主要監控資料庫 ApplicationServerMonitoring 的封存組態。
Remove-MonitoringDatabaseArchiveConfiguration –Database “ApplicationServerMonitoring”
清除和封存監控儲存區
您可以使用 Clear-ASMonitoringSqlDatabase Cmdlet 來清除監控資料庫的資料,並選擇性地將清除的資料導向至遠端的封存目的地監控資料庫。
Clear-ASMonitoringSqlDatabase
語法 1:
Clear-ASMonitoringSqlDatabase -Database <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode}] [-Server <String>] [<CommonParameters> [-WhatIf]]
語法 2:
Clear-ASMonitoringSqlDatabase -ConnectionString <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode>}] [-WhatIf] [<CommonParameters>]
參數 | 描述 |
---|---|
Database |
要清除之資料庫的名稱。若指定 ConnectionString,則此為選擇性參數。 |
ConnectionString |
要清除之資料庫的連接字串。若指定 Database 與 Server,則此為選擇性參數。 |
Archive |
要清除的資料必須先封存至 (使用 Set-ASMonitoringSqlDatabaseArchiveConfiguration) 預先設定的封存資料庫。可省略。 |
CutoffTime |
將清除資料庫中在截止時間之前產生的所有事件。處於 WFInstanceCompletedMode 時,將會保留與作用中執行個體相關的 WF 事件。此為選擇性參數。未指定此參數時,則會以目前的時間減去 MaxAge 參數來計算其值。 |
MaxAge |
在執行以時間為基礎的清除動作之前,可在監控資料庫中保留事件的時間長度。此為選擇性參數且預設為 0。 |
PurgeMode |
決定執行清除的方式。選項有兩種:
|
Server |
主控要清除之資料庫的伺服器名稱。選擇性;若未提供,則預設會使用本機伺服器。 |
範例
此簡單範例顯示如何封存和清除與已完成執行個體相關的事件。此範例將清除位於本機伺服器上的 ContosoDatabase 監控資料庫。
Clear-ASMonitoringSqlDatabase –Database “ContosoDatabase” –PurgeMode “WFInstanceCompletedMode” –Archive
清除持續性儲存區的過時執行個體
從 Web 伺服陣列的所有電腦中移除的服務執行個體可能仍存在於持續性儲存區,而導致會擾亂持續性儲存區查詢。若電腦已從網路中移除,持續性儲存區中連結至該電腦的持續性執行個體,就會成為過時的執行個體。Remove-ASAppServiceInstance Cmdlet 讓您能夠清除此類過時的執行個體。
Remove-ASAppServiceInstance
語法 1:
Remove-ASAppServiceInstance -Database <String> -InstanceId <Guid> [-Confirm] [-Force] [-Server <String>] [-WhatIf] [<CommonParameters>]
語法 2:
Remove-ASAppServiceInstance -ConnectionString <String> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]
語法 3:
Remove-ASAppServiceInstance -ServiceInstanceInfo <InstanceInfo> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]
參數 | 描述 |
---|---|
Database |
要清除之持續性儲存區的名稱。除非指定 ConnectionString,否則為必要參數。 |
InstanceId |
GUID 格式的服務執行個體識別碼。 |
Confirm |
在清除服務執行個體之前,要求使用者確認該操作。不得搭配 Force 使用。 |
Force |
不需使用者確認,即強制執行操作。不得搭配 Confirm 使用。 |
Server |
主控 Database 的 SQL Server 名稱。可省略;預設為本機伺服器。 |
WhatIf |
連接至儲存區,但不實際清除服務執行個體資料。 |
ConnectionString |
要清除之持續性儲存區的連接字串。可省略;可用來取代 Database 與 Server。 |
ServiceInstanceInfo |
另請參閱
概念
2011-12-05