共用方式為


Set-CsUserDatabaseState

 

上次修改主題的時間: 2012-03-27

啟用 (或停用) 一或多個 Microsoft Lync Server 2010 使用者資料庫。

語法

Set-CsUserDatabaseState -Online <$true | $false> -RegistrarPool <Fqdn> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

Set-CsUserDatabaseState -Identity <String> -Online <$true | $false> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

詳細描述

Lync Server 2010 會利用使用者資料庫 (亦稱為使用者存放區) 來維護 Lync Server 使用者的狀態和路由資訊。Set-CsUserDatabaseState 指令程式可讓您變更一或多個使用者資料庫的狀態:只要利用指令程式使資料庫離線,或使停用的資料庫重新運作即可。

請注意,當您安裝 Lync Server 2010 標準版時,預設不會啟用 SQL Server Express 的防火牆例外。這表示您無法從 Windows PowerShell 的遠端執行個體執行 Set-CsUserDatabaseState。這是因為命令將無法周遊防火牆和存取 SQL Server Express 資料庫。您仍然可以本機執行此指令程式 (亦即,在 Standard Edition 伺服器上)。但是,若要遠端執行 Set-CsUserDatabaseState,您需要針對 SQL Server Express 手動啟用防火牆例外。

誰可以執行此 Cmdlet:下列群組的成員預設會獲授權可以在本機上執行 Set-CsUserDatabaseState Cmdlet:RTCUniversalServerAdmins。若要傳回指派給該指令程式的所有角色型存取控制 (RBAC) 角色清單 (包括您自己建立的任何自訂 RBAC 角色),請在 Windows PowerShell 提示中執行下列命令:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsUserDatabaseState"}

參數

參數 必要 類型 描述

Identity

選用

字串

要修改線上狀態之使用者資料庫的唯一識別碼。例如:-Identity "UserDatabase:atl-sql-001.litwareinc.com"。

您不能在相同的命令中同時使用 Identity 和 RegistrarPool 兩者,也不能將任一參數搭配萬用字元使用。

Online

必要

布林值

設為 True ($True) 時,可使資料庫上線並可供使用。設為 False ($False) 時,可使資料庫離線。

RegistrarPool

選用

字串

主控要修改線上狀態之使用者資料庫的登錄器集區完整網域名稱 (FQDN)。例如:-RegistrarPool atl-cs-001.litwareinc.com。

您不能在相同的命令中同時使用 –Identity 和 –RegistrarPool 兩者,也不能將任一參數搭配萬用字元使用。

Force

隱藏顯示當執行命令時可能發生的任何非嚴重錯誤訊息。

WhatIf

描述執行命令後的結果,但無須實際執行命令。

Confirm

執行命令前先要求您確認。

輸入類型

字串。Set-CsUserDatabaseState 接受代表要更新之使用者資料庫 Identity 的字串值。

傳回類型

無。而 Set-CsUserDatabaseState 會修改 Microsoft.Rtc.Management.Xds.UserStoreState 物件現有的執行個體。

範例

-------------------------- 範例 1 ------------------------

Set-CsUserDatabaseState -Identity "UserDatabase:atl-sql-001.litwareinc.com" -Online $False

範例 1 所示的命令可使 UserDatabase:atl-sql-001.litwareinc.com 使用者資料庫離線。只要將 Online 屬性設為 $False 即可。

-------------------------- 範例 2 ------------------------

Set-CsUserDatabaseState -RegistrarPool atl-cs-001.litwareinc.com -Online $False

在範例 2 中,系統會使登錄器集區 atl-cs-001.litwareinc.com 中的所有使用者資料庫離線。

-------------------------- 範例 3 ------------------------

Get-CsUserDatabaseState | Where-Object {$_.Online -eq $False} | ForEach-Object {Set-CsUserDatabaseState -Identity $_.Identity -Online $True}

上述範例可尋找所有目前為離線狀態的使用者資料庫,並使這些資料庫重新運作。為達成此目的,此命令會先呼叫沒有任何參數的 Get-CsUserDatabaseState,以傳回組織中所有使用者資料庫集合。接著,這個集合會傳送到 Where-Object 指令程式;這樣只會挑出 Online 屬性等於 False 的資料庫。然後系統會將篩選過的集合傳送到 ForEach-Object 指令程式;這會取得集合中的每一個資料庫,並將 Online 屬性設為 True。請注意,您必須將離線資料庫的集合傳送到 ForEach-Object 而非 Set-CsUserDatabaseState。這是因為後一個指令程式無法直接接受管線傳送的資訊。