Get-MailboxStatistics
Командлет Get-MailboxStatistics используется для получения информации о почтовых ящиках: размер, количество элементов, активность, системные таблицы и пр. Ниже примеры полезных сценариев.
Get-MailboxStatistics -Identity myuser@mydomain.ru | Select-object DisplayName,LastLogonTime,TotalItemSize,ItemCount,TotalDeletedItemSize,DeletedItemCount, AttachmentTableTotalSize,database,DatabaseIssueWarningQuota, DatabaseProhibitSendQuota,DatabaseProhibitSendReceiveQuota
Основные параметры (размер, количество писем, дата входа)
Get-MailboxStatistics -Identity "user@domain.com" | Select-Object DisplayName,TotalItemSize,ItemCount,LastLogonTime
Топ-10 самых больших ящиков
Get-MailboxStatistics -Database "Mailbox Database 01" | Select-Object DisplayName,TotalItemSize | Sort-Object TotalItemSize -Descending | Select-Object -First 10
Кто занимает больше всего места в базе
Отчёт по всем ящикам в CSV
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Select-Object DisplayName,TotalItemSize,ItemCount | Export-Csv C:\Reports\MailboxSizes.csv -NoTypeInformation -Encoding UTF8
Неактивные ящики (90+ дней)
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Where-Object { $_.LastLogonTime -lt (Get-Date).AddDays(-90) } | Select DisplayName,LastLogonTime
Размер удалённых элементов (Recoverable Items)
Get-MailboxStatistics -Identity "user@domain.com" | Select-Object DisplayName,TotalDeletedItemSize,DeletedItemCount
Сравнение писем и вложений
Get-MailboxStatistics -Identity "user@domain.com" | Select DisplayName,MessageTableTotalSize,AttachmentTableTotalSize
Активность и последний вход
Get-MailboxStatistics -Identity "user@domain.com" | Select DisplayName,LastLogonTime,LastLogoffTime,LastLoggedOnUserAccount
Поиск пустых ящиков
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Where-Object { $_.TotalItemSize -eq 0 } | Select-Object DisplayName
Статистика по базам данных
Get-MailboxDatabase | ForEach-Object { Get-MailboxStatistics -Database $_.Name | Measure-Object TotalItemSize -Maximum -Minimum -Average }
Таблицы почтового ящика (Mailbox Tables) в Exchange
При выполнении команды
Get-MailboxStatistics
выводятся дополнительные поля вида *TableTotalSize*. Они показывают размер внутренних таблиц почтового ящика в базе Exchange (ESE/Jet DB).
Основные таблицы
| Поле | Что хранит | Что означает размер |
|---|---|---|
| MessageTableTotalSize | Основная таблица сообщений | Суммарный объём всех писем (без вложений) |
| AttachmentTableTotalSize | Таблица вложений | Размер всех файлов-вложений (doc, pdf, jpg, inline-объекты) |
| FolderTableTotalSize | Таблица папок | Служебные данные о структуре папок почтового ящика |
| RecipientTableTotalSize | Таблица получателей | Данные о получателях писем (To, Cc, Bcc) |
Удалённые элементы
| Поле | Что хранит | Что означает размер |
|---|---|---|
| DeletedMessageTableTotalSize | Удалённые письма | Объём сообщений, перемещённых в Recoverable Items/удалённых |
| DeletedAttachmentTableTotalSize | Удалённые вложения | Размер вложений, находящихся в удалённых элементах |
| DeletedFolderTableTotalSize | Удалённые папки | Мета-информация о папках, которые были удалены |
Служебные таблицы
| Поле | Что хранит | Что означает размер |
|---|---|---|
| SearchTableTotalSize | Таблица поиска | Индексы и кэш для поиска по ящику |
| RulesTableTotalSize | Таблица правил | Почтовые правила пользователя (Inbox Rules) |
| ViewsTableTotalSize | Таблица представлений | Сведения о кастомных видах/сортировках в Outlook/OWA |
| ExtendedPropertiesTableTotalSize | Доп. свойства | Хранение MAPI/Custom свойств сообщений |
Пример получения
Get-MailboxStatistics -Identity "user@domain.com" | Select DisplayName,TotalItemSize, MessageTableTotalSize, AttachmentTableTotalSize, FolderTableTotalSize, RecipientTableTotalSize
Практическое использование
- Анализ, что именно занимает место (тексты писем или вложения).
- Диагностика роста базы данных.
- Настройка правил архивации и хранения больших вложений.
- Контроль квот и планирование ресурсов.