Когда на Exchange-сервере заканчивается место или нужно проверить размещение почтовых баз, первый вопрос простой: где находится база данных Exchange и куда пишутся журналы транзакций. Искать это руками в Проводнике — плохая идея. Быстрее и безопаснее спросить сам Exchange через Management Shell.
Почтовая база Exchange хранится в файле .edb. Рядом или на отдельном диске лежат transaction logs. Для диагностики места, бэкапа, переноса и сжатия базы важно знать оба пути: EdbFilePath и LogFolderPath.
Откройте Exchange Management Shell
Запустите Exchange Management Shell от имени администратора. Обычный PowerShell подойдёт только в том случае, если в нём загружены Exchange-командлеты. На самом Exchange-сервере проще открыть готовую консоль из меню.
Показать путь к EDB-файлу
Чтобы вывести список баз и пути к файлам EDB, выполните:
Get-MailboxDatabase | Format-List Name,EdbFilePath
Если баз несколько, команда покажет каждую отдельно. Поле EdbFilePath — это полный путь к файлу базы. Именно этот файл обычно занимает основное место на диске.
Показать путь к журналам транзакций
Одного EDB-файла мало. Журналы транзакций тоже могут быстро забить диск, особенно если давно не было корректного Exchange-aware бэкапа.
Get-MailboxDatabase | Format-List Name,EdbFilePath,LogFolderPath
Поле LogFolderPath показывает папку журналов. Если этот диск заполнится, база может размонтироваться, а пользователи потеряют доступ к почте.
Информация по одной базе
Если нужна конкретная база, укажите её имя:
Get-MailboxDatabase "Mailbox Database 01" | Format-List Name,EdbFilePath,LogFolderPath,Server,Mounted
Так удобнее работать на серверах с несколькими базами. Заодно видно, на каком сервере находится база и смонтирована ли она.
Проверить состояние базы
Для одиночного сервера и DAG полезно проверить состояние копий баз:
Get-MailboxDatabaseCopyStatus *
В DAG эта команда покажет активные и пассивные копии, состояние репликации и очереди. На одиночном сервере вывод будет проще, но всё равно полезен для быстрой проверки.
Что нельзя делать с EDB и логами
- не удаляйте EDB-файл вручную;
- не чистите transaction logs через Проводник;
- не переносите базу простым cut/paste;
- не меняйте права на каталоги базы без причины;
- не запускайте сжатие или перенос без актуального бэкапа.
Для переноса базы используйте штатные команды Exchange. Для очистки логов нужен корректный бэкап, который понимает Exchange и подтверждает успешное сохранение базы.
Короткая шпаргалка
Get-MailboxDatabase | fl Name,EdbFilePath Get-MailboxDatabase | fl Name,EdbFilePath,LogFolderPath Get-MailboxDatabase "Mailbox Database 01" | fl Name,EdbFilePath,LogFolderPath,Server,Mounted Get-MailboxDatabaseCopyStatus *
FAQ
Можно ли узнать путь через Exchange Admin Center?
Часть информации можно найти в админке, но в Exchange Management Shell это быстрее, точнее и удобнее для копирования в рабочие заметки.
Почему журналы Exchange занимают много места?
Частая причина — давно не было корректного бэкапа Exchange. После успешного Exchange-aware backup журналы обычно очищаются штатно.
Можно ли просто перенести EDB на другой диск?
Нет, не вручную. Используйте штатные команды Exchange и сначала проверьте бэкап, свободное место и окно обслуживания.


