MS Exchange: Работа с базами данных

Рассмотрим команды по работе с базами данных MS Exchange. Команды вводятся в терминале Exchange PowerShell от имени Администратора.

Анализ

  • Посмотреть список баз данных:
1
Get-MailboxDatabase -IncludePreExchange -Status | Sort-Object 'Name' | Format-Table 'Name', 'Server', 'Mounted', 'AdminDisplayVersion' -AutoSize
  • Посмотреть размер баз данных:
1
Get-MailboxDatabase -IncludePreExchange -Status | Select-Object 'Name', 'DatabaseSize', 'AvailableNewMailboxSpace'
  • Посмотреть размер баз данных в удобном виде:
1
Get-MailboxDatabase -IncludePreExchange -Status | Sort-Object 'AvailableNewMailboxSpace' -Descending | Select Name,@{ Name='DatabaseSize (GB)'; Expression={$_.DatabaseSize.ToGb()} },@{ Name='AvailableNewMailboxSpace (GB)'; Expression={$_.AvailableNewMailboxSpace.ToGb()} }

Создание

  • Создать базу данных DB01 в директории E:\DB01\ на сервере MX01:
1
New-MailboxDatabase 'DB01' -EdbFilePath 'E:\DB01\DB01.edb' -LogFolderPath 'E:\DB01' -Server 'MX01'
  • Создать базы данных DB01, DB02 и DB03 в директории E:\{DB0*}\ на сервере MX01:
1
'DB01', 'DB02', 'DB03' | ForEach-Object { New-MailboxDatabase "${_}" -EdbFilePath "E:\${_}\${_}.edb" -LogFolderPath "E:\${_}" -Server 'MX01' }

Подключение / Отключение

  • Подключить базу данных DB01:
1
Mount-Database 'DB01' -Confirm:$false
  • Отключить базу данных DB01:
1
Dismount-Database 'DB01' -Confirm:$false
  • Перезапустить Microsoft Exchange Information Store:
1
Restart-Service 'MSExchangeIS'

Переименование

  • Показать базы данных:
1
Get-MailboxDatabase
  • Переименовать базу данных DB01 в DB02:
1
Set-MailboxDatabase 'DB01' -Name 'DB02'

Перемещение

  • Показать базы данных:
1
Get-MailboxDatabase | Format-List 'Name', 'EdbFilePath', 'LogFolderPath'
  • Переместить базу данных DB01 на диск E и директорию логов на диск F:
1
Move-DatabasePath 'DB01' -EdbFilePath 'E:\DB01\DB01.edb' -LogFolderPath 'F:\DB01'

Удаление

  • Удалить базу данных DB01:
1
Remove-MailboxDatabase 'DB01'
  • Удалить базы данных DB01, DB02 и DB03 без подтверждения операции:
1
'DB01', 'DB02', 'DB03' | ForEach-Object { Remove-MailboxDatabase "${_}" -Confirm:$false }

Квоты

  • Посмотреть квоты всех баз данных:
1
Get-MailboxDatabase -IncludePreExchange | Format-Table 'Name', 'IssueWarningQuota', 'ProhibitSendQuota', 'ProhibitSendReceiveQuota' -AutoSize
  • Установить квоты для базы данных DB01:
1
Get-MailboxDatabase 'DB01' | Set-MailboxDatabase -IssueWarningQuota '5GB' -ProhibitSendQuota '6GB' -ProhibitSendReceiveQuota '10GB'
  • Установить квоты для баз данных DB01 и DB02:
1
'DB01','DB02' | Set-MailboxDatabase -IssueWarningQuota '5GB' -ProhibitSendQuota '6GB' -ProhibitSendReceiveQuota '10GB'
  • Установить квоты для всех баз данных на сервере SRV-MX:
1
Get-MailboxDatabase -Server 'SRV-MX' | Set-MailboxDatabase -IssueWarningQuota '5GB' -ProhibitSendQuota '6GB' -ProhibitSendReceiveQuota '10GB'