Назад | Перейти на главную страницу

Почему я не могу получить доступ к хранимым процедурам на связанном сервере 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.

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

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

В SQL Server Management Studio:

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

(в моем случае они оба были установлены на FALSE)