問題

當您使用遠端 Exchange PowerShell 命令收件匣 ResultSize時,若要在貴組織中取得 Exchange Online 信箱的相關資訊,您會收到類似以下的錯誤訊息:

[Set-clientaccessserver = XXXXXXXXXCA014,BackEndServer = XXXXXXmb294. namprd05. .com,RequestId = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,TimeStamp =<日期><時間>]。命令中的資料超過會話設定所允許的最大值。 允許的最大值為500MB。 變更輸入、在遠端電腦上使用不同的會話設定,或變更會話設定的「PSMaximumReceivedObjectSizeMB」和「PSMaximumReceivedDataSizePerCommandMB」屬性

原因

當程式嘗試在一個會話中檢索大量資料時,就會發生此問題。 當您嘗試從超大型組織中檢索信箱資訊時,可能會發生這個問題。

避免

若要解決此問題,請執行要在伺服器上執行的命令,然後在每個命令之間新增暫停,以避免節流。

步驟1:從伺服器中檢索物件清單

使用Invoke 命令Cmdlet 來從伺服器執行命令。 例如:

$mailboxes = Invoke-Command -Session (Get-PSSession) -ScriptBlock {Get-Mailbox -ResultSize Unlimited | Select-Object -Property Identity,DisplayName} 

步驟2:在每個命令之間新增暫停

使用 [啟動-睡眠] Cmdlet,在處理的每個物件之間新增暫停。 例如:

foreach($m in $mailboxes) {Get-MailboxPermission $m.Identity.ToString() | Where { ($_.AccessRights -eq "FullAccess") -and ($_.IsInherited -eq $False) -and -not ($_.User -like "NT AUTHORITY\SELF")}; Start-Sleep -Milliseconds 500} 

其他相關資訊

如需詳細資訊,請參閱下列 Microsoft TechNet 資源:

是否仍需要協助? 前往 Microsoft Community

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×