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 über verknüpfte SQL Server von Microsoft Server auf Amazon EC2 auf lokale Microsoft SQL Server-Tabellen zu
Erstellt von Tirumala Dasari () und Eduardo Valentim () AWS AWS
Umgebung: PoC oder Pilotprojekt | Technologien: Datenbanken | Arbeitslast: Microsoft |
Ü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 (AmazonEC2) Windows- oder Linux-Instances laufen oder gehostet werden, mithilfe von Verbindungsservern.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives Konto AWS
Amazon EC2 mit Microsoft SQL Server, der auf Amazon Linux läuft AMI (Amazon Machine Image)
AWSDirektverbindung zwischen dem lokalen Microsoft SQL Server (Windows) -Server und der Windows- oder Linux-Instanz EC2
Produktversionen
SQLServer 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 unter Windows AMI oder Linux läuft AMI
Zieltechnologie-Stack
Amazon EC2 mit Microsoft SQL Server, der auf Amazon Linux läuft AMI
Amazon EC2 mit Microsoft SQL Server, der unter Windows läuft AMI
Quell- und Zieldatenbankarchitektur
Tools
Microsoft SQL Server Management Studio (SSMS)
ist eine integrierte Umgebung für die Verwaltung einer SQL Serverinfrastruktur. Es bietet eine Benutzeroberfläche und eine Gruppe von Tools mit umfangreichen Skript-Editoren, die mit SQL Server interagieren.
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Connect zu Windows SQL Server her überSSMS. | DBA | |
Ändern Sie im Kontextmenü (Rechtsklick) der Windows SQL Server-Instanz den Authentifizierungsmodus auf Windows in SQL Server. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Den Service SQL neu starten. |
| 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 Serverauthentifizierung aus, geben Sie einen Benutzernamen und das Passwort ein, bestätigen Sie dann das Passwort und deaktivieren Sie die Option zum Ändern des Passworts 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 Datei /etc/hosts 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 unter 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 Serverdatenbanken 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. Name „databases“ [sqllin] .master.sys.databases). SELECT SQL2 FROM In unserem Beispiel haben wir in der Hosts-Datei einen Alias für erstellt, sodass Sie den tatsächlichen SQL2 Netznamen nicht zwischen den eckigen Klammern eingeben müssen. BIOS Wenn Sie die tatsächlichen BIOS Netznamen verwenden, beachten Sie, dass AWS standardmäßig BIOS Netznamen wie Win-XXXX verwendet werden 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
SSMSunterstü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 master.dbo.sp_addlinkedsrvlogin
ein.
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:
SQLLinux-Server zu Windows SQL Server über einen Verbindungsserver (wie in diesem Muster angegeben)
Windows SQL Server zu Linux SQL Server über einen Verbindungsserver
SQLLinux-Server über einen SQL Verbindungsserver zu einem anderen Linux-Server