RemoteserverRemote Servers

Dieses Thema gilt für: JaSQL ServerkeineAzure SQL-DatenbankkeineAzure SQL Data Warehouse keine Parallel DatawarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Remoteserver werden in SQL ServerSQL Server nur aus Gründen der Abwärtskompatibilität unterstützt.Remote servers are supported in SQL ServerSQL Server for backward compatibility only. Neue Anwendungen sollten stattdessen Verbindungsserver verwenden.New applications should use linked servers instead. Weitere Informationen finden Sie unter Verbindungsserver (Datenbankmodul).For more information, see Linked Servers (Database Engine).

Durch die Konfiguration eines Remoteservers kann ein Client, der eine Verbindung mit einer Instanz von SQL ServerSQL Server hergestellt hat, eine gespeicherte Prozedur in einer anderen Instanz von SQL ServerSQL Server ausführen, ohne eine separate Verbindung einrichten zu müssen.A remote server configuration allows for a client connected to one instance of SQL ServerSQL Server to execute a stored procedure on another instance of SQL ServerSQL Server without establishing a separate connection. Der mit dem Client verbundene Server nimmt in diesem Fall die Clientanforderung an und sendet die Anforderung im Auftrag des Clients an den Remoteserver.Instead, the server to which the client is connected accepts the client request and sends the request to the remote server on behalf of the client. Der Remoteserver verarbeitet die Anforderung und gibt die Ergebnisse an den ursprünglichen Server zurück.The remote server processes the request and returns any results to the original server. Dieser Server übergibt seinerseits die Ergebnisse an den Client.This server in turn passes those results to the client. Wenn Sie eine Remoteserverkonfiguration einrichten, sollten Sie auch Sicherheitsaspekte berücksichtigen.When you set up a remote server configuration, you should also consider how to establish security.

Wenn Sie eine Serverkonfiguration einrichten möchten, um gespeicherte Prozeduren auf einem anderen Server auszuführen, jedoch keine Remoteserverkonfigurationen vorhanden sind, sollten Sie Verbindungsserver statt Remoteserver verwenden.If you want to set up a server configuration to execute stored procedures on another server and do not have existing remote server configurations, use linked servers instead of remote servers. Sowohl gespeicherte Prozeduren als auch verteilte Abfragen sind mit Verbindungsservern möglich. Auf Remoteservern können hingegen nur gespeicherte Prozeduren ausgeführt werden.Both stored procedures and distributed queries are allowed against linked servers; however, only stored procedures are allowed against remote servers.

Einzelheiten zu RemoteservernRemote Server Details

Remoteserver werden paarweise eingerichtet.Remote servers are set up in pairs. Wenn Sie ein Remoteserverpaar einrichten möchten, sollten Sie beide Server so konfigurieren, dass sie sich gegenseitig als Remoteserver erkennen.To set up a pair of remote servers, configure both servers to recognize each other as remote servers.

In den meisten Fällen ist es nicht erforderlich, Konfigurationsoptionen für Remoteserver festzulegen.Most of the time, you should not have to set configuration options for remote servers. SQL ServerSQL Server legt die Standardeinstellungen auf den lokalen und Remotecomputern für Remoteserververbindungen fest. Set sets the defaults on both the local and remote computers to allow for remote server connections.

Damit der Zugriff auf Remoteserver funktioniert, muss die Konfigurationsoption Remotezugriff auf den lokalen und den Remotecomputern auf 1 festgelegt werden.For remote server access to work, the remote access configuration option must be set to 1 on both the local and remote computers. (Dies ist die Standardeinstellung.) Remotezugriff steuert Anmeldungen von Remoteservern.(This is the default setting.) remote access controls logins from remote servers. Diese Konfigurationsoption können Sie entweder mit der gespeicherten Transact-SQLTransact-SQL sp_configure stored procedure or SQL Server Management StudioSQL Server Management Studio.You can reset this configuration option by using either the Transact-SQLTransact-SQL sp_configure stored procedure or SQL Server Management StudioSQL Server Management Studio. Wenn Sie die Option in SQL Server Management StudioSQL Server Management Studiofestlegen möchten, verwenden Sie auf der Seite Verbindungen die Option Remoteverbindungen mit diesem Server zulassen.To set the option in SQL Server Management StudioSQL Server Management Studio, on the Server Properties Connections page, use Allow remote connections to this server. Um auf die Seite Verbindungen zu gelangen, klicken Sie im Objekt-Explorer mit der rechten Maustaste auf den Servernamen, und klicken Sie auf Eigenschaften.To reach the Server Properties Connections page, in Object Explorer, right-click the server name, and then click Properties. Klicken Sie auf der Seite Servereigenschaften auf die Seite Verbindungen .On the Server Properties page, click the Connections page.

Sie können eine Remoteserverkonfiguration von einem lokalen Server aus deaktivieren, um den Zugriff auf diesen lokalen Server durch Benutzer des diesem zugeordneten Remoteservers zu verhindern.From the local server, you can disable a remote server configuration to prevent access to that local server by users on the remote server with which it is paired.

Sicherheit für RemoteserverSecurity for Remote Servers

Um Remoteprozeduraufrufe (Remote Procedure Calls, RPCs) für einen Remoteserver zu ermöglichen, müssen Sie auf dem Remoteserver sowie gegebenenfalls auf dem lokalen Server, auf dem eine Instanz von SQL ServerSQL Serverausgeführt wird, Anmeldungszuordnungen einrichten.To enable remote procedure calls (RPC) against a remote server, you must set up login mappings on the remote server and possibly on the local server that is running an instance of SQL ServerSQL Server. RPC ist in SQL ServerSQL Serverstandardmäßig deaktiviert.RPC is disabled by default in SQL ServerSQL Server. Durch diese Konfiguration wird die Angriffsfläche des Servers verkleinert und dadurch die Sicherheit des Servers verbessert.This configuration enhances the security of your server by reducing its attackable surface area. RPC muss aktiviert werden, bevor Sie diese Funktion verwenden können.Before using RPC you must enable this feature. Weitere Informationen finden Sie unter sp_configure (Transact-SQL).For more information see sp_configure (Transact-SQL).

Einrichten des RemoteserversSetting Up the Remote Server

Auf dem Remoteserver müssen Anmeldungszuordnungen eingerichtet werden.Remote login mappings must be set up on the remote server. Der Remoteserver ordnet über diese Zuordnungen die von einem bestimmten Server eingehende Anmeldung für eine RPC-Verbindung einer lokalen Anmeldung zu.Using these mappings, the remote server maps the incoming login for an RPC connection from a specified server to a local login. Zuordnungen von Remoteanmeldungen können mithilfe der gespeicherten Prozedur sp_addremotelogin auf dem Remoteserver eingerichtet werden.Remote login mappings can be set up by using the sp_addremotelogin stored procedure on the remote server.

Hinweis

Die trusted -Option von sp_remoteoption wird in SQL ServerSQL Servernicht unterstützt.The trusted option of sp_remoteoption is not supported in SQL ServerSQL Server.

Einrichten des lokalen ServersSetting Up the Local Server

Für die lokale Anmeldung mit SQL ServerSQL Server -Authentifizierung müssen Sie keine Anmeldungszuordnung auf dem lokalen Server einrichten.For SQL ServerSQL Server authenticated local logins, you do not have to set up a login mapping on the local server. SQL ServerSQL Server verwendet den Anmeldenamen und das Kennwort der lokalen Anmeldung, um die Verbindung mit dem Remoteserver herzustellen. uses the local login and password to connect to the remote server. Bei Windows-authentifizierten Anmeldungen richten Sie eine lokale Anmeldungszuordnung auf einem lokalen Server ein, über die definiert wird, welche Anmeldung und welches Kennwort von einer SQL ServerSQL Server -Instanz verwendet werden, wenn eine RPC-Verbindung mit einem Remoteserver hergestellt wird.For Windows authenticated logins, set up a local login mapping on a local server that defines what login and password are used by an instance of SQL ServerSQL Server when it makes an RPC connection to a remote server.

Bei durch die Windows-Authentifizierung erstellten Anmeldungen müssen Sie eine Anmeldungs- und Kennwortzuordnung über die gespeicherte Prozedur sp_addlinkedservlogin erstellen.For logins created by Windows Authentication, you must create a mapping to a login name and password by using the sp_addlinkedservlogin stored procedure. Diese mithilfe von sp_addremoteloginerstellte Anmeldung und dieses Kennwort müssen mit der eingehenden Anmeldung bzw. dem eingehenden Kennwort übereinstimmen.This login name and password must match the incoming login and password expected by the remote server, as created by sp_addremotelogin.

Hinweis

Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.When possible, use Windows Authentication.

Beispiel für die Sicherheit von RemoteservernRemote Server Security Example

Betrachten Sie diese beiden SQL ServerSQL Server -Installationen: serverSend und serverReceive.Consider these SQL ServerSQL Server installations: serverSend and serverReceive. serverReceive ist so konfiguriert, dass eine eingehende Anmeldung von serverSendnamens Sales_Maryeiner SQL ServerSQL Server -authentifizierten Anmeldung bei serverReceivenamens Alicezugeordnet wird.serverReceive is configured to map an incoming login from serverSend, called Sales_Mary, to a SQL ServerSQL Server authenticated login in serverReceive, called Alice. Eine weitere eingehende Anmeldung von serverSend namens Joe wird einer SQL ServerSQL Server-authentifizierten Anmeldung auf serverReceive** namens Joe zugeordnet.Another incoming login from serverSend, called Joe, is mapped to a SQL ServerSQL Server authenticated login in serverReceive, called Joe.

Der folgende Transact-SQL-Beispielcode konfiguriert serverSend so, dass Remoteprozeduraufrufe auf serverReceiveausgeführt werden können.The following Transact-SQL code example configures serverSend to perform RPCs against serverReceive.

--Create remote server entry for RPCs   
--from serverSend in serverReceive.  
EXEC sp_addserver 'serverSend';  
GO  

--Create remote login mapping for login 'Sales_Mary' from serverSend  
--to Alice.  
EXEC sp_addremotelogin 'serverSend', 'Alice', 'Sales_Mary';  
GO  
--Create remote login mapping for login Joe from serverReceive   
--to same login.  
--Assumes same password for Joe in both servers.  
EXEC sp_addremotelogin 'serverSend', 'Joe', 'Joe';  
GO  

Auf serverSendwird eine lokale Anmeldungszuordnung zwischen der Windows-authentifizierten Anmeldung Sales\Mary und einer Anmeldung Sales_Maryerstellt.On serverSend, a local login mapping is created for a Windows authenticated login Sales\Mary to a login Sales_Mary. Für Joeist keine lokale Anmeldungszuordnung erforderlich, da standardmäßig dieselbe Anmeldung und dasselbe Kennwort verwendet werden und serverReceive über eine Zuordnung für Joeverfügt.No local mapping is required for Joe, because the default is to use the same login name and password, and serverReceive has a mapping for Joe.

--Create a remote server entry for RPCs from serverReceive.  
EXEC sp_addserver 'serverReceive';  
GO  
--Create a local login mapping for the Windows authenticated login.  
--Sales\Mary to Sales_Mary. The password should match the  
--password for the login Sales_Mary in serverReceive.  
EXEC sp_addlinkedsrvlogin 'serverReceive', false, 'Sales\Mary',  
   'Sales_Mary', '430[fj%dk';  
GO  

Anzeigen der Eigenschaften von lokalen Servern oder RemoteservernViewing Local or Remote Server Properties

Sie können die erweiterte gespeicherte Prozedur xp_msver verwenden, um Serverattribute von lokalen oder Remoteservern zu überprüfen.You can use the xp_msver extended stored procedure to review server attributes for local or remote servers. Diese Attribute enthalten die Versionsnummer von SQL ServerSQL Server, Typ und Anzahl von Prozessoren des Computers, sowie die Version des Betriebssystems.These attributes include the version number of SQL ServerSQL Server, the type and number of processors in the computer, and the version of the operating system. Sie können vom lokalen Server Datenbanken, Dateien, Anmeldungen und Tools eines Remoteserver anzeigen.From the local server, you can view databases, files, logins, and tools for a remote server. Weitere Informationen finden Sie unter xp_msver (Transact-SQL).For more information, see xp_msver (Transact-SQL).

Verbindungsserver (Datenbankmodul)Linked Servers (Database Engine)

sp_configure (Transact-SQL)sp_configure (Transact-SQL)

Konfigurieren der Serverkonfigurationsoption RemotezugriffConfigure the remote access Server Configuration Option

RECONFIGURE (Transact-SQL)RECONFIGURE (Transact-SQL)