У нас есть два SQL-сервера, и мы настроили их как связанные серверы. Запросы работают нормально, если я подключаю удаленный рабочий стол к одному из них и выполняю запрос. Если я попытаюсь выполнить запрос с третьей машины (в том же домене, что и первые две), которая использует связанные серверы, я получаю следующую ошибку :(
Сообщение 18456, уровень 14, состояние 1, строка 1 Ошибка входа в систему для пользователя NT AUTHORITY \ ANONYMOUS LOGON.
Это моя текущая установка:
SELECT @@servername as [SQL Instance]
, s.name as [Linked Server]
, s.data_source as [Remote Server]
, CASE l.uses_self_credential
WHEN 1 THEN 'PASS-THRU'
ELSE ISNULL(p.name, 'UNMAPPED LOGINS')
END AS [Local Login]
, CASE l.uses_self_credential
WHEN 1 THEN 'PASS-THRU'
ELSE l.remote_name
END AS [Remote Login]
FROM sys.linked_logins l
JOIN sys.servers s ON s.server_id = l.server_id AND is_data_access_enabled = 1
LEFT OUTER JOIN sys.server_principals p ON p.principal_id = l.local_principal_id
ORDER BY [Linked Server], [Local Login]
Результат:
SQL Instance Linked Server Remote Server Local Login Remote Login T-CLSQL-01 T-CLSQL-02\R T-BN-CLSQL-02\R PASS-THRU PASS-THRU
Заранее спасибо!
Это похоже на проблему с Kerberos, скорее всего, имя участника-службы не зарегистрировано правильно, поэтому вы не можете отправить учетные данные на удаленный сервер. Посмотрите отличный пост от evilhomers здесь: Настройка связанного сервера SQL Server на sql server