Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak włączyć wyjście RPC za pomocą T-SQL

Czasami może być konieczne włączenie opcji „Wyjście RPC” na serwerze połączonym. Ta opcja włącza RPC do danego serwera.

RPC to skrót od Remote Procedure Calls. RPC to w zasadzie procedura składowana uruchamiana zdalnie z serwera 1 do połączonego serwera 2.

Jeśli tego nie włączysz i spróbujesz wykonać procedurę składowaną na połączonym serwerze, prawdopodobnie otrzymasz komunikat o błędzie Msg 7411 z informacją, że serwer nie jest skonfigurowany do obsługi RPC.

W każdym razie możesz włączyć/wyłączyć tę opcję za pomocą SQL Server Management Studio (SSMS) lub T-SQL.

W SSMS możesz przejść do Linked Server Properties klikając prawym przyciskiem myszy nazwę połączonego serwera. Następnie kliknij Server Options , gdzie zobaczysz RPC Out opcja ustawiona na True lub False .

W T-SQL możesz użyć sp_serveroption systemowa procedura składowana, aby zrobić to samo.

Przykład

Oto przykład użycia sp_serveroption aby włączyć „Wyjście RPC” na podłączonym serwerze.

EXEC sp_serveroption 'MyLinkedServer', 'rpc out', 'true';

Włącza to opcję wyjścia RPC dla połączonego serwera o nazwie MyLinkedServer.

Innym sposobem wykonania tej procedury jest jawne nazwanie nazw parametrów:

EXEC sp_serveroption 
    @server = 'MyLinkedServer', 
    @optname = 'rpc out', 
    @optvalue = 'on';

Możesz więc zobaczyć, że pierwszy argument (@server ) to nazwa połączonego serwera, drugi (@optname ) określa nazwę opcji i trzeci argument (@optvalue ) określa jego wartość.

To wszystko. Wyjście RPC jest teraz włączone na połączonym serwerze.

Sprawdź ustawienie wyjścia RPC

Możemy sprawdzić nasze ustawienie RPC out za pomocą następującego kodu.

SELECT 
    is_rpc_out_enabled
FROM sys.servers
WHERE name = 'MyLinkedServer';

Wynik:

+----------------------+
| is_rpc_out_enabled   |
|----------------------|
| 1                    |
+----------------------+

Wartość 1 oznacza, że ​​wyjście RPC jest włączone. Wartość 0 oznacza, że ​​jest wyłączony.

Wyłączanie wyjścia RPC

Możesz użyć false zamiast true aby go wyłączyć.

EXEC sp_serveroption 'MyLinkedServer', 'rpc out', 'false';

Wykonanie tego kodu spowoduje wyłączenie RPC Out na MyLinkedServer.

Możesz alternatywnie użyć on i off zamiast true i false aby przełączyć tę opcję.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Proaktywne kontrole kondycji programu SQL Server, część 3:ustawienia instancji i bazy danych

  2. Tally Table, aby wstawić brakujące daty między dwiema datami? SQL

  3. Używanie warunku if we wstawianiu SQL Server

  4. Eksportuj dane tabeli z jednego serwera SQL do drugiego

  5. Skonfiguruj wysyłanie dzienników programu SQL Server