Почему я не могу получить доступ к хранимым процедурам на связанном сервере 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:
- Щелкните правой кнопкой мыши экземпляр связанного сервера MSDE и выберите [Свойства]
- Выберите [Параметры сервера]
- Убедитесь, что свойства [RPC] и [RPC Out] установлены на [TRUE]
(в моем случае они оба были установлены в ЛОЖЬ)
Вы можете хранить учетные данные в сеансе PowerShell, используя get-credentials, но я предполагаю, что это не то, что вам нужно.
Powershell запускается в контексте того, кто его запускает (как и все выполнимые окна), поэтому для операций SQL Server я бы просто использовал встроенную защиту Windows для соединения, а затем назначил правильные разрешения SQL для учетной записи пользователя / службы, которую вы настроили. чтобы запустить сценарии. Таким образом, вы используете модель безопасности в Windows и вам не придется создавать свою собственную:-)