Почему я не могу получить доступ к хранимым процедурам на связанном сервере MSDE 8.x?

Я пытаюсь выполнить хранимую процедуру на связанном сервере MSDE 8.x, запустив следующий SQL для родительского экземпляра SQL Server 2000...

DECLARE @RC int

EXECUTE @RC = [LINKED_SERVER_NAME].[LINKED_SERVER_DATABASE].[dbo].[STORED_PROCEDURE_NAME]

GO

... но я получаю это сообщение об ошибке:

Msg 7411, Level 16, State 1, Line 2
Server 'LINKED_SERVER_NAME' is not configured for RPC.

2 ответа

Решение

В SQL Server Management Studio:

  1. Щелкните правой кнопкой мыши экземпляр связанного сервера MSDE и выберите [Свойства]
  2. Выберите [Параметры сервера]
  3. Убедитесь, что свойства [RPC] и [RPC Out] установлены на [TRUE]

(в моем случае они оба были установлены в ЛОЖЬ)

Вы можете хранить учетные данные в сеансе PowerShell, используя get-credentials, но я предполагаю, что это не то, что вам нужно.

Powershell запускается в контексте того, кто его запускает (как и все выполнимые окна), поэтому для операций SQL Server я бы просто использовал встроенную защиту Windows для соединения, а затем назначил правильные разрешения SQL для учетной записи пользователя / службы, которую вы настроили. чтобы запустить сценарии. Таким образом, вы используете модель безопасности в Windows и вам не придется создавать свою собственную:-)

Другие вопросы по тегам