Tutorial: Konfigurieren von in Microsoft Fabric gespiegelten Datenbanken aus Azure SQL Managed Instance (Vorschau)
Spiegelung in Fabric ist eine unternehmensbasierte, cloudbasierte, Zero-ETL-, SaaS-Technologie. In diesem Abschnitt erfahren Sie, wie Sie eine gespiegelte Azure SQL Managed Instance-Datenbank erstellen, die eine schreibgeschützte, fortlaufend replizierte Kopie der ausgewählten Datenbank aus Ihrer Azure SQL Managed Instance in OneLake darstellt.
Voraussetzungen
- Erstellen Sie eine Azure SQL Managed Instance, oder verwenden Sie eine vorhandene.
- Die Updaterichtlinie für die von Azure SQL Managed Instance-Quelle muss auf „Immer auf dem neuesten Stand“ konfiguriert werden.
- Die Azure SQL Managed Instance-Quelle kann entweder eine einzelne SQL Managed Instance oder eine SQL Managed Instance, die zu einem Instanzpool gehört, sein.
- Wenn Sie keine Azure SQL Managed Instance verfügen, können Sie eine neue SQL Managed Instance erstellen. Sie können das kostenlose Angebot für Azure SQL Managed Instance verwenden, wenn Sie möchten.
- Während der aktuellen Vorschauversion empfehlen wir Ihnen, eine Kopie einer Ihrer vorhandenen Datenbanken oder eine vorhandene Test- oder Entwicklungsdatenbank zu verwenden, die Sie schnell aus einem Backup wiederherstellen können. Weitere Informationen zum Verwenden einer Datenbank aus einer vorhandenen Sicherung finden Sie unter Wiederherstellen einer Datenbank aus einer Sicherung in Azure SQL Managed Instance.
- Sie benötigen eine vorhandene Kapazität für Fabric. Falls dies nicht der Fall ist, können Sie eine Fabric-Testversion starten.
- Die Fabric-Kapazität muss aktiv sein und ausgeführt werden. Eine angehaltene oder gelöschte Kapazität wirkt sich auf die Spiegelung aus, und es werden keine Daten repliziert.
- Aktivieren Sie die Fabric-Mandanteneinstellung Fabric APIs für Dienstprinzipale zulassen. Informationen zum Aktivieren der Mandanteneinstellungen finden Sie unter Fabric-Mandanteneinstellungen.
- Wenn in Ihrem Fabric-Arbeitsbereich oder -Mandanten nicht „Spiegelung“ angezeigt wird, muss Ihr Organisationsadministrator die Option in den Administratoreinstellungen aktivieren.
- Netzwerkanforderungen für Fabric für den Zugriff auf Ihre Azure SQL Managed Instance:
- In der aktuellen Vorschau erfordert die Spiegelung, dass Ihre Azure SQL Managed Instance über einen öffentlichen Endpunkt verfügt, auf den über Azure Cloud- oder Power BI-Diensttags zugegriffen werden muss. Weitere Informationen dazu, wie sie einen öffentlichen Endpunkt für Azure SQL Managed Instance sicher ausführen, finden Sie unter Sicheres Verwenden der Azure SQL Managed Instance mit öffentlichen Endpunkten.
Aktivieren der systemseitig zugewiesenen verwalteten Identität (SAMI) Ihrer Azure SQL Managed Instance
Die systemseitig zugewiesene verwaltete Identität (SAMI) Ihrer Azure SQL Managed Instance muss aktiviert sein, und sie muss die primäre Identität sein, um Daten in Fabric OneLake zu veröffentlichen.
- Um zu konfigurieren oder zu überprüfen, ob die SAMI aktiviert ist, wechseln Sie zur SQL Managed Instance im Azure-Portal. Wählen Sie unter Sicherheit im Ressourcenmenü die Option Identität.
- Unter Systemseitig zugewiesene verwaltete Identität, stellen Sie die Option Status auf Ein.
- Das SAMI muss die primäre Identität sein. Stellen Sie sicher, dass SAMI die primäre Identität mit der folgenden T-SQL-Abfrage ist:
SELECT * FROM sys.dm_server_managed_identities;
Datenbankprinzipal für Fabric
Als Nächstes müssen Sie eine Möglichkeit für den Fabric-Dienst erstellen, eine Verbindung mit Ihrer Azure SQL Managed Instance herzustellen.
Sie können dies mit einem Login und einem zugeordneten Datenbankbenutzer erreichen. Nach dem Prinzip der geringsten Berechtigung für Sicherheit sollten Sie nur die Berechtigung CONTROL DATABASE in der Datenbank, die Sie spiegeln möchten, gewähren.
Verwendung einer Anmeldung und eines zugeordneten Datenbankbenutzers
Stellen Sie eine Verbindung mit Ihrer Azure SQL Managed Instance mithilfe von SQL Server Management Studio (SSMS) oder Azure Data Studio her. Stellen Sie eine Verbindung mit der
master
-Datenbank her.Erstellen Sie eine Serveranmeldung, und weisen Sie die entsprechenden Berechtigungen zu.
- Erstellen Sie eine SQL-authentifizierte Anmeldung. Sie können einen beliebigen Namen für diese Anmeldung auswählen, ersetzen Sie ihn im folgenden Skript durch
<fabric_login>
. Geben Sie Ihr eigenes sicheres Kennwort an. Führen Sie das folgende T-SQL-Skript in dermaster
-Datenbank aus:
CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>'; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER <fabric_login>;
- Oder erstellen Sie eine authentifizierte Microsoft Entra-ID aus einem vorhandenen Konto. Führen Sie das folgende T-SQL-Skript in der
master
-Datenbank aus:
CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
- Erstellen Sie eine SQL-authentifizierte Anmeldung. Sie können einen beliebigen Namen für diese Anmeldung auswählen, ersetzen Sie ihn im folgenden Skript durch
Wechseln Sie den Abfragebereich zu der Datenbank, die Sie spiegeln möchten. Ersetzen Sie den Namen Ihrer Datenbank durch
<mirroring_source_database>
, und führen Sie die folgende T-SQL-Datei aus:USE [<mirroring_source_database>];
Erstellen Sie einen Datenbankbenutzer, der mit der Anmeldung verbunden ist. Ersetzen Sie den Namen eines neuen Datenbankbenutzers für diesen Zweck durch
<fabric_user>
:CREATE USER <fabric_user> FOR LOGIN <fabric_login>; GRANT CONTROL TO <fabric_user>;
Oder Microsoft Entra-Anmeldungen:
CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT CONTROL TO [bob@contoso.com];
Erstellen einer gespiegelten Azure SQL Managed Instance-Datenbank
- Öffnen Sie das Fabric-Portal.
- Sie können einen neuen Arbeitsbereich erstellen oder einen vorhandenen Arbeitsbereich verwenden.
- Navigieren Sie zum Bereich Erstellen. Wählen Sie das Symbol Erstellen aus.
- Scrollen Sie zum Abschnitt Data Warehouse, und wählen Sie dann Gespiegelte Azure SQL Managed Instance (Vorschau) aus.
Herstellen einer Verbindung mit Ihrer Azure SQL Managed Instance
Zum Aktivieren der Spiegelung müssen Sie eine Verbindung mit der Azure SQL Managed Instance aus Fabric herstellen, um die Verbindung zwischen SQL Managed Instance und Fabric zu initiieren. Anhand der folgenden Schritte können Sie die Verbindung zu Ihrer Azure SQL Managed Instance herstellen:
- Wählen Sie unter Neue Quellen die Option Azure SQL Managed Instance aus. Oder wählen Sie eine vorhandene Azure SQL Managed Instance-Verbindung aus dem OneLake-Datenhub aus.
- Vorhandene Azure SQL Managed Instance-Verbindungen vom Typ „SQL Server“ (generischer Verbindungstyp) können nicht verwendet werden. Nur Verbindungen vom Verbindungstyp „SQL Managed Instance“ werden für die Spiegelung von Azure SQL Managed Instance-Daten unterstützt.
- Wenn Sie Neue Verbindung ausgewählt haben, geben Sie die Verbindungsdetails der Azure SQL Managed Instance ein. Sie müssen eine Verbindung mit einer bestimmten Datenbank herstellen, sie können keine Spiegelung für die gesamte SQL Managed Instance und alle zugehörigen Datenbanken einrichten.
- Server: Sie finden den Servernamen, indem Sie zur Seite Networking der Azure SQL Managed Instance im Azure-Portal navigieren (im Menü „Sicherheit“) und sich das Feld „Öffentlicher Endpunkt“ ansehen. Beispiel:
<managed_instance_name>.public.<dns_zone>.database.windows.net,3342
. - Datenbank: Geben Sie den Namen der Datenbank ein, die Sie spiegeln möchten.
- Verbindung: Neue Verbindung erstellen.
- Verbindungsname: Es wird ein automatischer Name angegeben. Sie können sie ändern, um die Suche nach dieser SQL Managed Instance-Datenbankverbindung zu einem späteren Zeitpunkt zu erleichtern, falls erforderlich.
- Authentifizierungsart:
- Basic (SQL-Authentifizierung)
- Organisationskonto (Microsoft Entra-ID)
- Mandanten-ID (Azure Dienstprinzipal)
- Server: Sie finden den Servernamen, indem Sie zur Seite Networking der Azure SQL Managed Instance im Azure-Portal navigieren (im Menü „Sicherheit“) und sich das Feld „Öffentlicher Endpunkt“ ansehen. Beispiel:
- Wählen Sie Verbinden.
Starten des Spiegelungsprozesses
Auf dem Bildschirm Spiegelung konfigurieren können Sie standardmäßig alle Daten in der Datenbank spiegeln.
Alle Daten spiegeln bedeutet, dass alle neuen Tabellen, die nach dem Starten der Spiegelung erstellt wurden, gespiegelt werden.
Sie können optional auch nur bestimmte Objekte für die Spiegelung wählen. Deaktivieren Sie die Option Alle Daten spiegeln, und wählen Sie dann einzelne Tabellen aus Ihrer Datenbank aus.
Wenn Tabellen überhaupt nicht gespiegelt werden können, zeigen sie ein Fehlersymbol und relevanten Erklärungstext an. Ebenso wird, wenn Tabellen nur mit Einschränkungen gespiegelt werden können, ein Warnsymbol mit relevantem Erklärungstext angezeigt.
In diesem Lernprogramm wählen wir die Option Alle Daten spiegeln aus.
Geben Sie auf dem nächsten Bildschirm dem Zielelement einen Namen, und wählen Sie Gespiegelte Datenbank erstellen aus. Warten Sie nun eine oder zwei Minuten, bis Fabric alles für Sie bereit stellt.
Wählen Sie nach 2 bis 5 Minuten die Option Replikation überwachen aus, um den Status anzuzeigen.
Nach ein paar Minuten sollte sich der Status auf Ausführen ändern, was bedeutet, dass die Tabellen synchronisiert werden.
Wenn die Tabellen und der entsprechende Replikationsstatus nicht angezeigt werden, warten Sie einige Sekunden, und aktualisieren Sie dann den Bereich.
Wenn das anfängliche Kopieren der Tabellen abgeschlossen ist, wird in der Spalte Letzte Aktualisierung ein Datum angezeigt.
Da Ihre Daten nun in Betrieb sind, stehen in allen Fabric-Szenarien verschiedene Analyseszenarien zur Verfügung.
Wichtig
Detaillierte Sicherheitseinstellungen in der Quelldatenbank müssen in der gespiegelten Datenbank in Microsoft Fabric neu konfiguriert werden.
Fabric-Spiegelung überwachen
Nachdem die Spiegelung konfiguriert wurde, werden Sie zur Seite Spiegelungsstatus weitergeleitet. Hier können Sie den aktuellen Replikationsstatus überwachen.
Dies sind die Replikationsstatus:
Für die Überwachung auf Datenbankebene:
- Wird ausgeführt – Replikation wird derzeit ausgeführt, um Momentaufnahmen zu erstellen und Daten in OneLake zu ändern.
- Wird mit Warnung ausgeführt – Replikation wird ausgeführt, mit vorübergehenden Fehlern
- Wird beendet/Beendet – Replikation wird beendet.
- Fehler – Schwerwiegender Fehler bei der Replikation, die nicht wiederhergestellt werden kann.
Für die Überwachung auf Tabellenebene:
- Wird ausgeführt – Die Daten aus der Tabelle werden erfolgreich in das Warehouse repliziert.
- Wird mit Warnung ausgeführt – Warnung zu einem nicht schwerwiegenden Fehler bei der Replikation der Daten aus der Tabelle
- Wird beendet/Beendet– Replikation wurde beendet
- Fehler – Schwerwiegender Fehler bei der Replikation für diese Tabelle.
Wenn die anfängliche Synchronisierung abgeschlossen ist, wird neben dem Tabellennamen ein Zeitstempel Zuletzt abgeschlossen angezeigt. Dieser Zeitstempel gibt den Zeitpunkt an, zu dem Fabric die Tabelle zuletzt auf Änderungen überprüft hat.
Beachten Sie außerdem die Spalte Replizierte Zeilen. Es zählt alle Zeilen, die für die Tabelle repliziert wurden. Jedes Mal, wenn eine Zeile repliziert wird, wird sie erneut gezählt. Dies bedeutet, dass beispielsweise das Einfügen einer Zeile mit dem Primärschlüssel „=1“ in der Quelle die Anzahl „Replizierte Zeilen“ um eins erhöht. Wenn Sie die Zeile mit demselben Primärschlüssel aktualisieren, wird sie erneut in Fabric repliziert, und die Zeilenanzahl wird um eins erhöht, auch wenn es sich um dieselbe Zeile handelt, die erneut repliziert wurde. Fabric zählt alle Replikationen, die in der Zeile aufgetreten sind, einschließlich Einfügungen, Löschungen, Aktualisierungen.
Der Bildschirm Monitorreplikation zeigt auch alle Fehler und Warnungen bei gespiegelten Tabellen an. Wenn die Tabelle nicht unterstützte Spaltentypen aufweist oder die gesamte Tabelle nicht unterstützt wird (z. B. im Speicher- oder im Columnstoreindex), wird auf diesem Bildschirm eine Benachrichtigung über die Einschränkung angezeigt. Weitere Informationen und Details zu den Replikationsstatus finden Sie unter Überwachen von Fabric-Spiegelreplikation.
Wichtig
Wenn keine Aktualisierungen in den Quelltabellen vorhanden sind, beginnt die Replicator Engine mit einer exponentiell steigenden Dauer zu sichern, bis zu einer Stunde. Die Replicator Engine setzt die regelmäßige Abfrage automatisch fort, nachdem aktualisierte Daten erkannt wurden.