Greifen Sie über verknüpfte SQL Server von Microsoft Server auf Amazon EC2 auf lokale Microsoft SQL Server-Tabellen zu - AWS Prescriptive Guidance

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

AWS Cloud architecture with VPC, availability zones, EC2 instances, and hybrid environment setup.

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

AufgabeBeschreibungErforderliche 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
AufgabeBeschreibungErforderliche Fähigkeiten

Den Service SQL neu starten.

  1. Wählen Sie im SSMS Object Explorer die SQL Serverinstanz aus.

  2. Öffnen Sie das Kontextmenü (Rechtsklick).

  3. Wählen Sie Neu starten.

DBA
AufgabeBeschreibungErforderliche 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
AufgabeBeschreibungErforderliche 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
AufgabeBeschreibungErforderliche 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
AufgabeBeschreibungErforderliche 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
AufgabeBeschreibungErforderliche 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