Überprüfen einer SQL Managed Instance

Abgeschlossen

Obwohl viele Organisationen mit IaaS-Angeboten zu Azure migrieren, bietet das Platform as a Service-Angebot (PaaS) zusätzliche Vorteile. Sie müssen SQL Server zudem nicht mehr installieren oder patchen, da dies vom Dienst durchgeführt wird. Konsistenzprüfungen und Sicherungen sind ebenso Teil des verwalteten Diensts, einschließlich Sicherheits- und Leistungstools, die Teil des PaaS-Angebots sind.

Azure SQL Managed Instance ist eine voll funktionsfähige SQL Server-Instanz, die fast zu 100 % mit Ihrem lokalen Ökosystem kompatibel ist. Sie enthält Features wie SQL-Agent, Zugriff auf tempdb, datenbankübergreifende Abfrage und Common Language Runtime (CLR). Der Dienst verwendet dieselbe Infrastruktur wie Azure SQL-Datenbank und bietet alle Vorteile eines PaaS-Diensts, z. B. automatische Sicherungen, automatisches Patchen und integrierte Hochverfügbarkeit.

Features von Azure SQL Managed Instance

Azure SQL Managed Instance ermöglicht einfache Migrationspfade für vorhandene Anwendungen, indem Wiederherstellungen aus lokalen Sicherungen zugelassen werden. Im Gegensatz zum Dienst „Azure SQL-Datenbank“, der auf Basis von Einzeldatenbankstrukturen entwickelt wurde, stellt SQL Managed Instance eine ganze SQL Server-Instanz bereit, die bis zu 100 Datenbanken sowie Zugriff auf die Systemdatenbanken zulässt. SQL Managed Instance bietet weitere Features, die nicht in Azure SQL-Datenbank verfügbar sind, z. B. datenbankübergreifende Abfragen, die Common Language Runtime (CLR) und, zusammen mit der Systemdatenbank „msdb“, die Verwendung des SQL-Agents.

Tastatur

Für das Erstellen einer Instanz von Azure SQL Managed Instance sind zwei Dienstebenen verfügbar. Diese sind identisch mit den Ebenen des vCore-Modells von Azure SQL-Datenbank (Managed Instance wird mit dem vCore-Modell erworben): unternehmenskritisch und universell. Es bestehen minimale Funktionsunterschiede zwischen beiden Ebenen, die hauptsächlich darin bestehen, dass „Unternehmenskritisch“ In-Memory-OLTP beinhaltet und ein lesbares sekundäres Replikat bietet, das in der universellen Ebene nicht verfügbar ist. Beide Ebenen bieten die gleichen Verfügbarkeitsstufen und ermöglichen eine unabhängige Konfiguration von Speicher und Compute.

Die Linkfunktion bietet hybride Funktionen für das Replizieren von Datenbanken von SQL Server-Instanzen auf Azure SQL Managed Instance. Die Linkfunktion repliziert Daten mithilfe verteilter Verfügbarkeitsgruppen, die in der Always On-Verfügbarkeitsgruppentechnologie verfügbar sind. Transaktionsprotokolldatensätze werden als Teil der verteilten Verfügbarkeitsgruppen repliziert.

Die Transaktionsprotokolldatensätze in der primären Instanz können erst abgeschnitten werden, wenn sie in die sekundäre Instanz repliziert wurden. Regelmäßige Transaktionsprotokollsicherungen verringern das Risiko, dass zu wenig Speicherplatz in Ihrer primären Instanz vorhanden ist.

Die Linkfunktion kann auch als hybride Notfallwiederherstellungslösung verwendet werden, bei der Sie ein Failover Ihrer SQL Server-Datenbanken, die an einer beliebigen Stelle in einer Datenbank gehostet werden, auf eine Datenbank ausführen können, die auf SQL Managed Instance ausgeführt wird. Ebenso können Sie die Linkfunktion verwenden, um eine schreibgeschützte sekundäre Datenbank in der SQL Managed Instance der SQL-Datenbank bereitzustellen, um intensive schreibgeschützte Vorgänge abzuladen.

Weitere Informationen zum Konfigurieren der Linkfunktion für Azure SQL Managed Instance finden Sie unter Vorbereiten der Umgebung für die Linkfunktion – Azure SQL Managed Instance.

Instanzenpool (Vorschau)

Instanzpools: Eine kostengünstige Möglichkeit, um kleinere SQL Server-Instanzen zur Cloud zu migrieren. Wenn Sie zu Azure migrieren, anstatt kleinere Datenbanken in größere verwaltete Instanzen zu konsolidieren, die zusätzliche Governance und Sicherheitsplanung erfordern, können Sie Ihre Ressourcen basierend auf Ihren gesamten Migrationsressourcen und -anforderungen vorab bereitstellen.

Die Instanzpoolfunktion bietet eine schnelle Bereitstellungszeit von bis zu fünf Minuten, was eine gute Option für Szenarien ist, bei denen die Bereitstellungsdauer wichtig ist. Außerdem teilen alle Instanzen in einem Pool denselben virtuellen Computer, und die Gesamt-IP-Zuteilung ist unabhängig von der Anzahl der bereitgestellten Instanzen.

Informationen zum Bereitstellen eines Instanzpools für SQL Managed Instance finden Sie unter Bereitstellen von Azure SQL Managed Instance in einem Instanzpool.

Hochverfügbarkeit

Da Azure SQL Managed Instance vom PaaS-Dienst unterstützt wird, ist Hochverfügbarkeit tief im Produkt verankert. Eine eigenständige SQL Managed Instance bietet eine 99,99%ige Vereinbarung zum Servicelevel (Service Level Agreement, SLA), die höchstens 52,60 Minuten Downtime pro Jahr garantiert. Die Architektur ist identisch mit der universellen Ebene, in der die Verfügbarkeit durch Speicherreplikation gewährleistet wird, sowie der unternehmenskritischen Ebene von Azure SQL-Datenbank, in der mehrere Replikate verwendet werden.

Backups

Automatische Sicherungen werden auch automatisch für Azure SQL Managed Instance konfiguriert. Ein wichtiger Unterschied zwischen Azure SQL Managed Instance und Azure SQL-Datenbank besteht darin, dass Sie mit Managed Instance manuell eine Kopiesicherung einer Datenbank erstellen können. Sie müssen die Sicherung unter einer URL speichern, da der Zugriff auf den lokalen Speicher nicht zulässig ist. Sie können für die Langzeitaufbewahrung (Long-Term Retention, LTR) automatischer Sicherungen in georedundantem Azure-Blobspeicher einen Zeitraum von bis zu 10 Jahren konfigurieren.

Datenbanksicherungen erfolgen nach dem gleichen Zeitplan wie in Azure SQL-Datenbank. Diese Zeitpläne können nicht angepasst werden.

  • Vollständig: einmal pro Woche
  • Differenziell: alle 12 Stunden
  • Transaktionsprotokoll: je nach Transaktionsprotokollnutzung alle 5–10 Minuten

Das Wiederherstellen einer Datenbank in einer Instanz von Azure SQL Managed Instance ist ebenfalls mit Azure SQL-Datenbank vergleichbar. Verwenden Sie Folgendes:

  • Azure-Portal
  • PowerShell
  • Azure CLI

Bei Wiederherstellungen gelten jedoch bestimmte Einschränkungen. Damit eine Instanz in einer anderen wiederhergestellt werden kann, müssen sich beide im gleichen Azure-Abonnement und in der gleichen Azure-Region befinden. Außerdem können keine ganzen verwalteten Instanzen, sondern nur einzelne Datenbanken innerhalb der SQL Managed Instance wiederhergestellt werden.

Wie in Azure SQL-Datenbank können Sie eine bestehende Datenbank nicht wiederherstellen. Sie müssen die bestehende Datenbank zunächst löschen oder umbenennen, bevor Sie sie aus der Sicherung wiederherstellen können. Da SQL Managed Instance eine voll funktionsfähige SQL Server-Instanz ist, können Sie einen RESTORE-Befehl ausführen, wohingegen dies in Azure SQL-Datenbank nicht möglich ist. Da es sich jedoch um einen PaaS-Dienst handelt, gibt es einige Einschränkungen, wie etwa:

  • Die Wiederherstellung muss von einem URL-Endpunkt aus erfolgen. Sie haben keinen Zugriff auf lokale Laufwerke.
  • Sie können die folgenden Optionen verwenden (zusätzlich zur Angabe der Datenbank):
    • FILELISTONLY
    • HEADERONLY
    • LABELONLY
    • VERIFYONLY
  • Sicherungsdateien, die mehrere Protokolldateien enthalten, können nicht wiederhergestellt werden.
  • Sicherungsdateien, die mehrere Sicherungssätze enthalten, können nicht wiederhergestellt werden.
  • Sicherungen, die In-Memory-/FILESTREAM-Elemente enthalten, können nicht wiederhergestellt werden.

Standardmäßig werden die Datenbanken in einer verwalteten Instanz mithilfe von Transparent Data Encryption (TDE) und einem von Microsoft verwalteten Schlüssel verschlüsselt. Für die Erstellung einer vom Benutzer initiierten Kopiesicherung müssen Sie TDE für die jeweilige Datenbank deaktivieren. Auch verschlüsselte Datenbanken können wiederhergestellt werden. Sie müssen jedoch sicherstellen, dass Sie Zugriff auf das Zertifikat oder den asymmetrischen Schlüssel haben, mit dem die Datenbank verschlüsselt wurde. Wenn Sie über keines dieser beiden Elemente verfügen, können Sie die Datenbank nicht in einer SQL Managed Instance wiederherstellen.

Notfallwiederherstellung

Mit einer verwalteten Azure SQL Managed Instance können Sie die Notfallwiederherstellung mithilfe von automatischen Failovergruppen implementieren. Dieses Feature schützt die gesamte verwaltete Instanz und alle darin enthaltenen Datenbanken, nicht nur bestimmte Datenbanken. Bei diesem Vorgang werden Daten asynchron aus der Instanz von Azure SQL Managed Instance auf ein sekundäres Replikat repliziert. Er ist jedoch zurzeit auf das Azure-Regionspaar der primären Kopie beschränkt, und es ist nur ein Replikat zulässig.

Ähnlich wie bei Azure SQL-Datenbank bieten Autofailover-Gruppen Lese-/Schreibzugriff und schreibgeschützte Listenerendpunkte, die die Verwaltung der Verbindungszeichenfolgen vereinfachen. Im Fall eines Failovers werden die Verbindungszeichenfolgen von Anwendungen automatisch an die entsprechende Instanz weitergeleitet. Diese Endpunkte sind zwar recht konsistent mit Azure SQL-Datenbank, weisen jedoch ein etwas anderes Format auf: <fog-name>.zone_id.database.windows.net whereas Azure SQL Database is in the <fog-name>.secondary.database.windows.net.

Sowohl die primären als auch die sekundären verwalteten Instanzen müssen sich innerhalb der gleichen DNS-Zone befinden. So wird sichergestellt, dass für die Authentifizierung der Clientverbindung zwischen beiden Instanzen einer Failovergruppe das gleiche Multidomänenzertifikat verwendet werden kann. Sie können einen „DNS-Zonenpartner“ über verschiedene Methoden angeben, z. B. das Azure-Portal, PowerShell oder die Azure CLI.

Weitere Informationen zu den neuen Features für Azure SQL Managed Instance finden Sie unter Neuerungen in Azure SQL Managed Instance.