Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Greifen Sie von Microsoft SQL Server auf Amazon EC2 mithilfe von Verbindungsservern auf lokale Microsoft SQL Server-Tabellen zu
Erstellt von Tirumala Dasari (AWS) und Eduardo Valentim (AWS)
Übersicht
Dieses Muster beschreibt, wie Sie auf lokale Microsoft SQL Server-Datenbanktabellen zugreifen, die unter Microsoft Windows ausgeführt werden, von Microsoft SQL Server-Datenbanken aus, die auf Amazon Elastic Compute Cloud (Amazon EC2) Windows- oder Linux-Instances ausgeführt oder gehostet werden, mithilfe von Verbindungsservern.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto
Amazon EC2 mit Microsoft SQL Server, der auf Amazon Linux AMI (Amazon Machine Image) läuft
AWS Direct Connect zwischen dem lokalen Microsoft SQL Server (Windows) -Server und der Windows- oder Linux-Instance EC2
Produktversionen
SQL Server 2016 oder höher
Architektur
Quelltechnologie-Stack
Lokale Microsoft SQL Server-Datenbank, die unter Windows ausgeführt wird
Amazon EC2 mit Microsoft SQL Server, der auf Windows AMI oder Linux AMI läuft
Zieltechnologie-Stack
Amazon EC2 mit Microsoft SQL Server, der auf Amazon Linux AMI läuft
Amazon EC2 mit Microsoft SQL Server, der auf Windows AMI läuft
Quell- und Zieldatenbankarchitektur

Tools
Microsoft SQL Server Management Studio (SSMS)
ist eine integrierte Umgebung für die Verwaltung einer SQL Server-Infrastruktur. Es bietet eine Benutzeroberfläche und eine Gruppe von Tools mit umfangreichen Skripteditoren, die mit SQL Server interagieren.
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Stellen Sie über SSMS eine Connect zu Windows SQL Server her. | DBA | |
Ändern Sie den Authentifizierungsmodus in SQL Server über das Kontextmenü (Rechtsklick) für die Windows SQL Server-Instanz auf Windows. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Starten Sie den SQL-Dienst neu. |
| DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Öffnen Sie auf der Registerkarte Sicherheit das Kontextmenü (Rechtsklick) für Login und wählen Sie ein neues Login aus. | DBA | |
Wählen Sie auf der Registerkarte Allgemein die Option SQL Server-Authentifizierung aus, geben Sie einen Benutzernamen und das Kennwort ein, bestätigen Sie das Kennwort und deaktivieren Sie die Option zum Ändern des Kennworts bei der nächsten Anmeldung. | DBA | |
Wählen Sie auf der Registerkarte Serverrollen die Option Öffentlich aus. | DBA | |
Wählen Sie auf der Registerkarte Benutzerzuordnung die Datenbank und das Schema aus, auf das Sie zugreifen möchten, und markieren Sie dann die Datenbank, um Datenbankrollen auszuwählen. | Wählen Sie public und db_datareader aus, um auf Daten aus den Datenbanktabellen zuzugreifen. | DBA |
Wählen Sie OK, um einen Benutzer zu erstellen. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Stellen Sie über das Terminalfenster eine Connect zur Linux SQL Server-Box her. | DBA | |
Öffnen Sie die the /etc/hosts Datei und fügen Sie die IP-Adresse des Windows-Computers mit SQL Server hinzu. | DBA | |
Speichern Sie die Hosts-Datei. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen Verbindungsserver mithilfe der gespeicherten Prozeduren master.sys.sp_addlinkedserver und master.dbo.sp_addlinkedsrvlogin. | Weitere Informationen zur Verwendung dieser gespeicherten Prozeduren finden Sie im Abschnitt Zusätzliche Informationen. | DBA, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Gehen Sie in Linux SQL Server in SSMS zu Linked Servers und aktualisieren Sie die Datei. | DBA | |
Erweitern Sie die erstellten Verbindungsserver und Kataloge im linken Bereich. | Sie sehen die ausgewählten SQL Server-Datenbanken mit Tabellen und Ansichten. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Führen Sie im SSMS-Abfragefenster die folgende Abfrage aus: „select top 3 * from [sqllin] .dms_sample_win.dbo.mlb_data“. | Beachten Sie, dass die FROM-Klausel eine vierteilige Syntax verwendet: computer.database.schema.table (z. B. SELECT-Name „databases“ FROM [sqllin] .master.sys.databases). SQL2 In unserem Beispiel haben wir SQL2 in der Hosts-Datei einen Alias für erstellt, sodass Sie den tatsächlichen NetBIOS-Namen nicht zwischen den eckigen Klammern eingeben müssen. Wenn Sie die tatsächlichen NetBIOS-Namen verwenden, beachten Sie, dass AWS standardmäßig NetBIOS-Namen wie Win-XXXX verwendet und SQL Server eckige Klammern für Namen mit Bindestrichen benötigt. | DBA, Entwickler |
Zugehörige Ressourcen
Zusätzliche Informationen
Verwenden von gespeicherten Prozeduren zum Erstellen von Verbindungsservern
SSMS unterstützt die Erstellung von Verbindungsservern für Linux SQL Server nicht, daher müssen Sie diese gespeicherten Prozeduren verwenden, um sie zu erstellen:
EXEC master.sys.sp_addlinkedserver @server= N'SQLLIN' , @srvproduct= N'SQL Server'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'SQLLIN',@useself=N'False',@locallogin=NULL,@rmtuser=N'username',@rmtpassword='Test123$'
Hinweis 1: Geben Sie die Anmeldeinformationen, die Sie zuvor in Windows SQL Server erstellt haben, in die gespeicherte Prozedur ein. master.dbo.sp_addlinkedsrvlogin
Hinweis 2: @server
Name SQLLIN
und Name des Eintrags in der Hostdatei 172.12.12.4 SQLLIN
sollten identisch sein.
Sie können diesen Prozess verwenden, um Verbindungsserver für die folgenden Szenarien zu erstellen:
Linux SQL Server zu Windows SQL Server über einen Verbindungsserver (wie in diesem Muster angegeben)
Windows SQL Server zu Linux SQL Server über einen Verbindungsserver
Linux SQL Server zu einem anderen Linux SQL Server über einen Verbindungsserver