Поделиться через


Microsoft Entra Connect: восстановление из LocalDB с ограничением в 10 ГБ

Microsoft Entra Connect требуется база данных SQL Server для хранения учетных данных. Вы можете использовать sql Server 2019 Express LocalDB по умолчанию, установленный с помощью Microsoft Entra Подключение или использовать собственный полный SQL. SQL Server Express налагает ограничение в размере 10 ГБ. Если при использовании LocalDB достигнут этот предел, служба синхронизации Microsoft Entra Connect больше не сможет запускаться или выполнять синхронизацию должным образом. Эта статья содержит рекомендации по восстановлению.

Симптомы

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

  • Служба синхронизации Microsoft Entra Подключение запущена, но не удается синхронизировать с ошибкой "остановленная база данных-диск-full".

  • Не удается запустить службу синхронизации Microsoft Entra Подключение. Попытка запуска службы завершается сбоем (событие 6323) и сообщением об ошибке Ошибка сервера в связи с недостатком места на диске для SQL Server.

Краткосрочные действия по восстановлению

В этом разделе приведены шаги по освобождению пространства базы данных, необходимого для службы синхронизации Microsoft Entra Подключение для возобновления работы. Эти шаги включают:

  1. Определите состояние службы синхронизации.
  2. Выполните сжатие базы данных.
  3. Удалите данные журнала выполнения.
  4. Сократите срок хранения данных журнала выполнения.

Определите состояние службы синхронизации.

Во-первых, определите, выполняется ли служба синхронизации:

  1. Войдите на сервер Microsoft Entra Подключение от имени администратора.

  2. Перейдите к диспетчеру управления службами.

  3. Проверьте состояние синхронизации идентификаторов Microsoft Entra ID.

  4. Если она выполняется, не останавливайте и не перезапускайте службу. Пропустите шаг сжатия базы данных и перейдите к шагу удаления данных журнала выполнения.

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

Выполните сжатие базы данных.

Операция сжатия позволяет освободить достаточный объем пространства базы данных, чтобы запустить службу синхронизации. При этом освобождается место в базе данных путем удаления пробелов. Этот наилучшее, но не всегда действующее решение. Дополнительные сведения об операции сжатия см. в статье Сжатие базы данных.

Важно!

Этот шаг можно пропустить, если службу синхронизации удалось запустить. Не рекомендуется сжимать базу данных SQL, так как это может привести к снижению производительности из-за увеличения фрагментации.

Имя базы данных, созданной для Microsoft Entra Connect, — ADSync. Чтобы выполнить операцию сжатия, необходимо войти от имени системного администратора или владельца базы данных. Во время установки Microsoft Entra Connect следующим учетным записям предоставляются права системного администратора:

  • локальные администраторы;
  • учетная запись пользователя, которая использовалась для установки Microsoft Entra Connect;
  • Учетная запись службы синхронизации, используемая в качестве операционного контекста службы синхронизации Microsoft Entra Подключение.
  • локальная группа ADSyncAdmins, которая была создана во время установки.
  1. Выполните резервное копирование базы данных в безопасное расположение, скопировав файлы ADSync.mdf и ADSync_log.ldf, расположенные в %ProgramFiles%\Microsoft Azure AD Sync\Data.

  2. Запустите сеанс PowerShell.

  3. Перейдите в папку %ProgramFiles%\Microsoft SQL Server\110\Tools\Binn.

  4. Запустите служебную программу sqlcmd с помощью команды ./SQLCMD.EXE -S "(localdb)\.\ADSync" -U <Username> -P <Password>, используя учетные данные системного администратора или владельца базы данных.

  5. Чтобы сжать базу данных, в командной строке sqlcmd (1>) введите DBCC Shrinkdatabase(ADSync,1);, а затем GO в следующей строке.

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

Удалите данные журнала выполнения.

По умолчанию Microsoft Entra Connect сохраняет данные журнала выполнения, накопленные за период до 7 дней. На этом шаге мы удалим данные журнала выполнения, чтобы освободить пространство базы данных, чтобы microsoft Entra Подключение Sync Service могли снова синхронизироваться.

  1. Запустите Synchronization Service Manager, выбрав "Запуск → Служба синхронизации".

  2. Перейдите на вкладку Операции.

  3. В разделе "Действия" выберите "Очистить запуски".

  4. Вы можете выбрать " Очистить все запуски " или "Очистить" до... <параметр date> . Рекомендуется начать с очистки тех данных журнала выполнения, которым больше двух дней. Если вы продолжаете сталкиваться с проблемой размера базы данных, выберите параметр Clear all runs (Очистить все выполнения).

Сократите срок хранения данных журнала выполнения.

Этот шаг необходим для снижения вероятности возникновения проблемы нехватки дискового пространства после нескольких циклов синхронизации.

  1. Запустите новый сеанс PowerShell.

  2. Запустите Get-ADSyncScheduler и обратите внимание на свойство PurgeRunHistoryInterval, которое указывает текущий срок хранения.

  3. Выполните Set-ADSyncScheduler -PurgeRunHistoryInterval 2.00:00:00, чтобы установить для срока хранения значение 2 дня. Измените срок хранения соответствующим образом.

Долгосрочное решение. Переход на полную версию SQL Server

В общем случае проблема свидетельствует о том, что размер базы данных в 10 ГБ больше не достаточно для microsoft Entra Подключение для синхронизации локальная служба Active Directory с идентификатором Microsoft Entra. Рекомендуется перейти на использование полной версии SQL Server. Нельзя напрямую заменить LocalDB существующего развертывания Microsoft Entra Connect полной версией SQL Server. Вместо этого необходимо развернуть новый сервер Microsoft Entra Connect с полной версией SQL Server. Рекомендуется выполнить обновление со сменой сервера, при котором новый сервер Microsoft Entra Connect (с базой данных SQL) развертывается в качестве промежуточного сервера рядом с существующим сервером Microsoft Entra Connect (с LocalDB).

Следующие шаги

Узнайте больше об интеграции локальных удостоверений с идентификатором Microsoft Entra.