Управление ростом журнала базы данных с помощью сценария Troubleshoot-DatabaseSpace.ps1 в консоли

 

Применимо к: Exchange Server 2010 SP2, Exchange Server 2010 SP3

Последнее изменение раздела: 2016-11-28

Сценарий Troubleshoot-DatabaseSpace.ps1 используется диспетчером Microsoft System Center Operations Manager 2007 для обнаружения и исправления избыточного роста размера журнала или файла базы данных Microsoft Exchange (EDB), что может приводить к простою базы данных. По умолчанию диспетчер System Center Operations Manager 2007 запускает сценарий каждые 15 минут. Тем не менее, можно использовать планировщик задач для настройки и запуска этого сценария для отслеживания роста файлов журнала и базы данных.

ПримечаниеПримечание.
Сценарий необходимо запустить из папки, в которой он находится. По умолчанию для установки сценариев Exchange 2010 используется каталог C:\Program Files\Microsoft\Exchange Server\V14\Scripts. Командная консоль не загружает сценарии автоматически. Чтобы запустить сценарий из локального файла, перед всеми сценариями необходимо ввести последовательность символов ".\". Например, чтобы запустить сценарий SampleScript.ps1, введите .\SampleScript.ps1. Чтобы запустить сценарий и указать пусть установки по умолчанию, введите "C:\Program Files\Microsoft\Exchange Server\V14\Scripts\SampleScript.ps1". Дополнительные сведения см. в статье Создание сценариев в среде управления Exchange.

Сценарий Troubleshoot-DatabaseSpace.ps1 выполняет следующие действия.

  1. Отслеживает скорость создания журнала для наилучших генераторов журналов по базам данных. Это помогает определить, какие пользователи создают слишком много журналов, что может привести к проблемам со свободным местом на диске.

  2. Отслеживает доступное место на диске для файлов базы данных и журнала. Если какой-либо из них достиг порогового значения или превысил его, необходимо предпринять дальнейшие действия.

  3. Следит за скоростью создания журнала. Если объем свободного места на диске оказывается меньше значения параметра HourThreshold (рассчитанного на основе скорости создания журнала), необходимо предпринять дальнейшие действия.

    ПримечаниеПримечание.
    Чтобы избежать критических проблем, убедитесь, что значение параметра HourThreshold достаточно велико и оставляет достаточно времени на принятие мер в течение рабочего дня, пока на диске достаточно места. Если заполнение дисков происходит быстрее по сравнению с указанным значением, то необходимо немедленно выполнить действия по защите диска.
  4. Если все предыдущие условия выполнены, сценарий определяет список первых 25 пользователей, получавших доступ к базе данных в течение последнего часа. Согласно сценарию наиболее часто используемые почтовые ящики, для которых суммарная скорость создания журнала выше разницы между текущей скоростью создания и устойчивой скоростью создания, помещаются на карантин, что позволяет выделить дополнительное время на настройку. Эти пользователи помещаются на карантин на шесть часов, в течение которых они не имеют доступа к электронной почте.

  5. Если средству устранения неполадок не удается сбросить скорость создания журнала до порогового значения, то создаются события, которые затем преобразуются в оповещения по модели работоспособности. В этот момент сценарий снимает базу данных с подготовки путем запуска командлета Set-MailboxDatabase с параметром ExcludeFromProvisioning, имеющим значение $true, для данной базы данных. Может потребоваться переместить почтовые ящики на новый сервер для освобождения места на диске.

  6. Если средством устранения неполадок помещено на карантин более 10 пользователей, это указывает на проблему в системе, которую необходимо окончательно устранить. В этом случае модель работоспособности выдает срочное оповещение.

Параметры по умолчанию, используемые в сценарии Troubleshoot-DatabaseSpace.ps1, определяются в сценарии StoreTSConstants.ps1.

Необходимы сведения о других задачах управления, связанных с базами данных? См. раздел Управление базами данных почтовых ящиков.

Использование сценария Troubleshoot-DatabaseSpace.ps1

Для выполнения этой процедуры необходимы соответствующие разрешения. Сведения о необходимых разрешениях см. в разделе Запись «Базы данных почтовых ящиков» в разделе Разрешения для почтового ящика.

В следующей таблице приводится набор синтаксических правил для параметров, которые можно использовать для перемещения определенных почтовых ящиков.

Troubleshoot-DatabaseSpace.ps1 -MailboxDatabaseName <DatabaseID> [-PercentEdbFreeSpaceThreshold <1-99>] [-PercentLogFreeSpaceThreshold <1-99>] [-HourThreshold <1- 1000000000>] [-Quarantine <switch>] [-MonitoringContext <switch>]
Troubleshoot-DatabaseSpace.ps1 -Server <ServerID> [-PercentEdbFreeSpaceThreshold <1-99>] [-PercentLogFreeSpaceThreshold <1-99>] [-HourThreshold <1- 1000000000>] [-Quarantine <switch>] [-MonitoringContext <switch>]
Параметр Обязательный Описание

MailboxDatabaseName

Обязательный

Параметр MailboxDatabaseName указывает базу данных почтовых ящиков, в которой отслеживается рост размера журнала.

Параметр может иметь указанные ниже значения.

  • GUID

  • Различающееся имя (DN)

  • Имя базы данных

ПримечаниеПримечание.
Этот параметр нельзя использовать совместно с параметром Server.

Server

Обязательный

Параметр Server указывает сервер почтовых ящиков, на котором отслеживается рост размера журнала для всех баз данных почтовых ящиков.

ПримечаниеПримечание.
Этот параметр нельзя использовать совместно с параметром MailboxDatabaseName.

HourThreshold

Необязательный

Параметр HourThreshold указывает количество часов возможного ожидания до окончания свободного места на диске. Значение по умолчанию равно 12 часам.

MonitoringContext

Необязательный

Параметр MonitoringContext указывает, будут ли в результаты команды включаться события отслеживания для записи в обычных журналах приложений в средстве просмотра событий и в журнале операций. Если не указать это значение, журналы операций будут записаны в следующее местоположение в средстве «Просмотр событий»:

Просмотр событий > Журналы приложений и служб > Средства устранения неполадок Microsoft Exchange/Операционные.

Указывать значение для этого параметра необязательно.

PercentEdbFreeSpaceThreshold

Необязательный

Параметр PercentEdbFreeSpaceThreshold указывает процент свободного дискового пространства для файла EDB, при котором сервер Exchange должен начать помещение пользователей на карантин. Например, если указать 10 процентов, сервер Exchange начнет переводить в режим карантина наиболее проблемных пользователей, когда команда обнаружит, что диск заполнен из-за роста размера файла EDB, в течение времени, указанного в параметре HourThreshold.

По умолчанию для этого параметра установлено значение 25 процентов.

PercentLogFreeSpaceThreshold

Необязательный

Параметр PercentLogFreeSpaceThreshold указывает процент свободного дискового пространства для файлов журнала, при котором сервер Exchange начинает помещать пользователей на карантин. Например, если задать 10 процентов, сервер Exchange начнет переводить в режим карантина наиболее проблемных пользователей, когда команда обнаружит, что диск заполнен из-за роста размера файла EDB, в течение времени, указанного в параметре HourThreshold.

По умолчанию для этого параметра установлено значение 25 процентов.

Quarantine

Необязательный

Параметр Quarantine указывает, что проблемные пользователи будут помещены на карантин. Если этот параметр не задан, пользователи не будут переведены в режим карантина.

Указывать значение для этого параметра необязательно.

Пример

В этом примере показано, как запускать сценарий Troubleshoot-DatabaseSpace.ps1 со следующими параметрами:

  • Предупреждения выдаются при достижении 10 процентов свободного пространства в томе, содержащем журналы базы данных, и такого же значения показателя для файла базы данных и тома, содержащего его.

  • Пороговое значение устанавливается равным 5 часам.

При этих значениях параметров, если средство устранения неполадок определяет, что свободное дисковое пространство сократилось до 10 процентов или меньше за 5 часов, то наиболее проблемные пользователи помещаются на карантин.

.\Troubleshoot-databasespace.ps1 -server MBX01 -PercentLogFreeSpace 10 -PercentEDBFreeSpace 10 -HourThreshold 5 -Quarantine
ПримечаниеПримечание.
В этом примере показано, как запустить данную команду один раз вручную. Чтобы собрать данные, которые требуются средству устранения неполадок для эффективного отслеживания сервера или базы данных, необходимо выполнить эту команду несколько раз с регулярными интервалами. Рекомендуется использовать планировщик задач в операционной системе Microsoft Windows для настройки этой задачи. Дополнительные сведения см. в разделе Обзор планировщика задач.

Просмотр выходных данных средства устранения неполадок в результате роста размера журнала

В средстве «Просмотр событий» результаты сценария Troubleshoot-DatabaseSpace.ps1 будут доступны в следующем расположении: Просмотр событий > Журналы приложений и служб > Microsoft Exchange-Средства устранения неполадок/Операционные.

Например, ниже приводятся выходные данные события с кодом 5101. Эти выходные данные будут возвращены, если сценарий выполнен успешно и без ошибок.

Средство устранения неполадок, связанных с пространством базы данных, завершило свою работу в томе D:\ для базы данных MBD01, проблемы не обнаружены.

Свободного места на диске с базой данных EDB: 151938752512 Б

Свободного места на диске с журналом: 151845265408 Б

Пороговое значение свободного дискового пространства для базы данных EDB: 10%

Пороговое значение свободного дискового пространства для журнала: 10%

Пороговое значение времени: 12 ч

Текущая скорость роста: 314572800 Б/ч

В следующей таблице приводятся события с кодами, описаниями и необходимыми мерами.

ПримечаниеПримечание.
Описания в данной таблице являются примерами сведений, которые могут быть включены в эти события.
Код события Описание Действие

5100

Средство устранения неполадок пространства базы данных запущено в томе D:\ для базы данных MBD01.

Только сведения. Никаких действий выполнять не требуется.

5101

Средство устранения неполадок пространства базы данных завершило работу в томе D:\ для базы данных MBD01. Проблемы не обнаружены.

Только сведения. Никаких действий выполнять не требуется.

5400

Средство устранения неполадок пространства базы данных завершило работу в томе D:\ для базы данных MBD01. Для базы данных превышено пороговое значение свободного дискового пространства. Пользователи были помещены на карантин во избежание нехватки места.

Предупреждение. Продолжайте отслеживание. Пользователи будут помещены на карантин на шесть часов и не будут иметь доступа к своим почтовым ящикам.

5401

Средство устранения неполадок пространства базы данных завершило работу в томе D:\ для базы данных MBD01. База данных близка к пороговому значению свободного дискового пространства, но скорость ее роста обычна. Действие не выполнено.

Предупреждение. Продолжайте отслеживание.

5410

Средство устранения неполадок пространства базы данных поместило на карантин почтовый ящик f3bb8007-b6d1-45f5-b748-211d66fa43f6 в базе данных MBD01.

Предупреждение. Это событие создается при создании события 5400. Продолжайте отслеживание.

5700

Средство устранения неполадок пространства базы данных завершило работу в томе D:\ для базы данных MBD01. База данных превысила пороговое значение свободного дискового пространства и продолжает расти. Требуется ручное вмешательство.

Это событие ошибки указывает, что пространство базы данных превысило пороговое значение свободного дискового пространства. Запустите монитор пользователей сервера Microsoft Exchange (Exmon) для отслеживания пользователей или служб, которые приводят к чрезмерному росту размера журнала. Дополнительные сведения см. в статье Монитор пользователей сервера Microsoft Exchange.

5701

Средство устранения неполадок пространства базы данных обнаружило недостаток места в томе D:\ для базы данных MBD01. Подготовка для этой базы данных отключена. Свободное дисковое пространство для этой базы данных меньше 10 процентов.

Это событие ошибки указывает, что база данных была снята с подготовки. В этом случае сценарий запускает командлет Set-MailboxDatabase с параметром ExcludeFromProvisioning, равным $true, для указанной базы данных. После разрешения проблемы с пространством базы данных необходимо вручную снова включить подготовку базы данных почтовых ящиков.

Может потребоваться переместить почтовые ящики на новый сервер для освобождения места на диске.

5702

Средство устранения неполадок пространства базы данных обнаружило критическую нехватку места в томе D:\ для базы данных MBD01. Подготовка для этой базы данных отключена. Свободное дисковое пространство для этой базы данных меньше 10 процентов.

Это событие ошибки указывает, что база данных была снята с подготовки из-за нехватки ресурсов.

В этом случае сценарий запускает командлет Set-MailboxDatabase с параметром ExcludeFromProvisioning, равным $true, для указанной базы данных. После разрешения проблемы с пространством базы данных необходимо вручную снова включить подготовку базы данных почтовых ящиков.

Может потребоваться переместить пользователей в новую базу данных для освобождения места на диске.

 © Корпорация Майкрософт (Microsoft Corporation), 2010. Все права защищены.