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。這是因為後一個指令程式無法直接接受管線傳送的資訊。