Я получаю следующую запись журнала событий от Sql Server 2012:
Запланированное задание SQL Server «Проверка агентов репликации» - Состояние: сбой - Вызвано: 2012-08-04 10:00:00 - Сообщение: сбой задания. Невозможно определить, есть ли у владельца (AD \ Administrator) проверки агентов репликации задания доступ к серверу (причина: не удалось получить информацию о группе / пользователе Windows NT «AD \ Administrator», код ошибки 0x6e. [SQLSTATE 42000] (ошибка 15404)) ).
Я предполагаю, что это происходит потому, что Sql Server 2012 использует виртуальную учетную запись, которая не может получить необходимую информацию об активном каталоге. Из Документация по Sql Server 2012:
Виртуальные учетные записи в Windows Server 2008 R2 и Windows 7 - это управляемые локальные учетные записи, которые предоставляют следующие функции для упрощения администрирования служб. Виртуальная учетная запись управляется автоматически, и виртуальная учетная запись может получить доступ к сети в доменной среде. Если значение по умолчанию используется для учетных записей служб во время установки SQL Server в Windows Server 2008 R2 или Windows 7, используется виртуальная учетная запись, использующая имя экземпляра в качестве имени службы в формате NT SERVICE \ (SERVICENAME). Службы, которые работают как виртуальные учетные записи, получают доступ к сетевым ресурсам, используя учетные данные учетной записи компьютера в формате (имя_домена) \ (имя_компьютера) $.
Итак, возникает вопрос: как мне создать разрешения в моем контроллере домена для пользователя (имя_домена) \ (имя_компьютера) $ и какие разрешения мне нужно предоставить для Sql Server 2012, чтобы иметь возможность получать требуемую информацию? Или мне нужно переключиться на управляемую учетную запись службы, чтобы это работало правильно? Или мне следует сменить владельца работы на другого?
По умолчанию учетная запись службы сможет видеть домен и запрашивать его при необходимости.
Это проблема, которая возникает время от времени. Измените владельца задания на sa и нажмите OK. Затем измените его обратно на AD \ Administrator и нажмите ОК. В следующий раз, когда задание будет запущено, оно должно работать нормально.
Я попробовал два других ответа, но ни один из них не помог моей ситуации. В конечном счете, единственный способ заставить это работать - это переключиться с виртуальной учетной записи (VA) на управляемую учетную запись службы (MSA), как описано Вот и Вот.
Кроме того, мне не удалось заставить репликацию транзакций работать ни с виртуальным устройством, ни с MSA - в обоих случаях журнал истории заданий всегда показывал ошибку аутентификации. В конце концов я вернулся к использованию обычного пользователя домена для различных агентов репликации, и это сработало.
Убедитесь, что учетная запись сетевой службы компьютеров имеет разрешения на чтение групп AD. Я думаю, что в среде AD лучше использовать учетную запись MSA, чем виртуальную.