Linked server – uruchamianie procedur zdalnych

3-Cze-2014

 

Chcesz utworzyć serwer linkowany, ale w taki sposób aby jeden wybrany użytkownik z lokalnego serwera mógł uruchomić jedną konkretną procedurę na serwerze zdalnym.

1. Na serwerze zdalnym załóż login sql. Nadaj mu odpowiednie minimalne uprawnienia (user w bazie i execute na wybranej procedurze)

2. Na obu serwerach upewnij się, że jest włączona opcja remote access. Dzięki niej uruchamianie procedur przez linked serwer jest możliwe.

Zmiana opcji wymaga restartu SQL

3. Na serwerze lokalnym zdefiniuj linked server:

remote-server-as-linked

Uwaga, aby uruchamiać zdalnie procedury, linked server musi na to zezwalać. Dlatego przełącz opcje PRC i PRC Out na true.

remote-server-RPC

 

 

No i pora na konfigurację uprawnień. Jeżeli jesteś lokalnym użytkownikiem my_local_user to do zdalnego serwera połącz się wykorzystując login z serwera zdalnego my_remote_user 

remote-server-permissions

Jeżeli po drodze otrzymasz błąd:

remote_server_error

To sprawdź, czy rzeczywiście masz (powinieneś mieć) uprawnienia do połaczenia do zdalnego serwera. Jeśli nadałeś uprawnienia jak powyżej to dostęp posiada tylko my_local_user a ty niekoniecznie…, nawet jeśli jesteś sysadminem. Zignoruj błąd, a linked serwer dla wskazanego użytkownika będzie działać!

Dodaj komentarz:

Autor: Rafał Kraik