Bewertungsregeln für die Migration von Azure SQL Server zu SQL-Datenbank
Gilt für: Azure SQL-Datenbank
Mit Migrationstools wird Ihre SQL Server-Quellinstanz überprüft, indem mehrere Bewertungsregeln angewendet werden. Hiermit sollen Probleme identifiziert werden, die behoben werden müssen, bevor für Ihre SQL Server-Datenbank die Migration zu Azure SQL-Datenbank durchgeführt wird.
Dieser Artikel enthält eine Liste mit den Regeln, die zum Bewerten der Durchführbarkeit einer Migration Ihrer SQL Server-Datenbank zu Azure SQL-Datenbank verwendet werden.
Zusammenfassung von Regeln
BULK INSERT
Titel: BULK INSERT bei anderer Datenquelle als Azure-Blob wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Azure SQL-Datenbank kann nicht auf Dateifreigaben oder Windows-Ordner zugreifen. Der Abschnitt „Betroffene Objekte“ enthält Informationen zu den spezifischen Verwendungsmöglichkeiten für BULK INSERT
-Anweisungen, für die nicht auf ein Azure-Blob verwiesen wird. Objekte mit BULK INSERT
, bei denen die Quelle nicht Azure Blob Storage ist, funktionieren nach der Migration zu Azure SQL-Datenbank nicht mehr.
Empfehlung
Sie müssen die BULK INSERT
-Anweisungen, die lokale Dateien oder Dateifreigaben verwenden, auf die Verwendung von Dateien aus Azure Blob Storage umstellen, wenn Sie eine Migration zu Azure SQL-Datenbank durchführen. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
COMPUTE-Klausel
Titel: Die COMPUTE-Klausel wird nicht mehr unterstützt und wurde entfernt.
Kategorie: Warnung
Beschreibung
Die COMPUTE-Klausel generiert Gesamtsummen, die als zusätzliche Summenspalten am Ende des Resultsets aufgeführt werden. Diese Klausel wird in Azure SQL-Datenbank aber nicht mehr unterstützt.
Empfehlung
Das T-SQL-Modul muss stattdessen mit dem ROLLUP-Operator umgeschrieben werden. Der folgende Code veranschaulicht, wie COMPUTE
durch ROLLUP
ersetzt werden kann:
USE AdventureWorks2022;
GO
SELECT SalesOrderID,
UnitPrice,
UnitPriceDiscount
FROM Sales.SalesOrderDetail
ORDER BY SalesOrderID COMPUTE SUM(UnitPrice),
SUM(UnitPriceDiscount) BY SalesOrderID;
GO
SELECT SalesOrderID,
UnitPrice,
UnitPriceDiscount,
SUM(UnitPrice) AS UnitPrice,
SUM(UnitPriceDiscount) AS UnitPriceDiscount
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID,
UnitPrice,
UnitPriceDiscount
WITH ROLLUP;
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
CLR-Assemblys
Titel: SQL-CLR-Assemblys werden in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Azure SQL-Datenbank unterstützt keine SQL-CLR-Assemblys.
Empfehlung
Derzeit gibt es keine Möglichkeit, dies in Azure SQL-Datenbank zu erreichen. Für die empfohlenen Alternativlösungen dürfen für Anwendungscode und Datenbankänderungen nur Assemblys genutzt werden, die von Azure SQL-Datenbank unterstützt werden. Alternativ können Sie die Migration zu Azure SQL Managed Instance oder SQL Server auf Azure Virtual Machines durchführen.
Weitere Informationen finden Sie unter Fehlende Unterstützung von Transact-SQL: Unterschiede in SQL-Datenbank.
Kryptografieanbieter
Titel: Es wurde eine Verwendung von CREATE CRYPTOGRAPHIC PROVIDER oder ALTER CRYPTOGRAPHIC PROVIDER gefunden. Dies wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Für Azure SQL-Datenbank werden CRYPTOGRAPHIC PROVIDER-Anweisungen nicht unterstützt, weil der Zugriff auf Dateien nicht möglich ist. Der Abschnitt „Betroffene Objekte“ enthält Informationen zu den spezifischen Verwendungsmöglichkeiten für CRYPTOGRAPHIC PROVIDER-Anweisungen. Objekte mit CREATE CRYPTOGRAPHIC PROVIDER
oder ALTER CRYPTOGRAPHIC PROVIDER
funktionieren nach der Migration zu Azure SQL-Datenbank nicht richtig.
Empfehlung
Überprüfen Sie die Objekte mit CREATE CRYPTOGRAPHIC PROVIDER
oder ALTER CRYPTOGRAPHIC PROVIDER
. Entfernen Sie in allen erforderlichen Objekten die Verwendungsmöglichkeiten dieser Funktionen. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Datenbankübergreifende Verweise
Titel: Datenbankübergreifende Abfragen werden in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Für Datenbanken auf diesem Server werden datenbankübergreifende Abfragen verwendet, die in Azure SQL-Datenbank nicht unterstützt werden.
Empfehlung
Für Azure SQL-Datenbank werden datenbankübergreifende Abfragen nicht unterstützt. Die folgenden Aktionen werden empfohlen:
- Migrieren Sie die abhängigen Datenbanken zu Azure SQL-Datenbank, und verwenden Sie das Feature „Abfrage für elastische Datenbanken“ (derzeit in der Vorschauphase), um Abfragen übergreifend für mehrere Azure SQL-Datenbank-Instanzen durchzuführen.
- Verschieben Sie die abhängigen Datasets aus anderen Datenbanken in die zu migrierende Datenbank.
- Führen Sie die Migration zu Azure SQL Managed Instance durch.
- Führen Sie die Migration zu SQL Server auf Azure Virtual Machines durch.
Weitere Informationen finden Sie in der Übersicht über elastische Abfragen in Azure SQL-Datenbank (Vorschau).
Datenbankkompatibilität
Titel: Für Azure SQL-Datenbank werden Kompatibilitätsgrade von unter 100 nicht unterstützt.
Kategorie: Warnung
Beschreibung
Der Datenbank-Kompatibilitätsgrad ist ein wichtiges Tool zur Unterstützung der Datenbankmodernisierung. Hiermit können Upgrades für die SQL Server-Datenbank-Engine durchgeführt werden, während der funktionale Status von Anwendungen, die Verbindungen herstellen, erhalten bleibt, indem der vor einem Upgrade wirksame Kompatibilitätsgrad beibehalten wird. Für Azure SQL-Datenbank werden Kompatibilitätsgrade von unter 100 nicht unterstützt.
Empfehlung
Ermitteln Sie, ob die Anwendungsfunktionalität intakt ist, wenn der Datenbank-Kompatibilitätsgrad in Azure SQL Managed Instance auf 100 aktualisiert wird. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Datenbank-E-Mail
Titel: Datenbank-E-Mail wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Warnung
Beschreibung
Für diesen Server wird das Feature „Datenbank-E-Mail“ verwendet, das in Azure SQL-Datenbank nicht unterstützt wird.
Empfehlung
Erwägen Sie, die Migration zu Azure SQL Managed Instance mit Unterstützung von Datenbank-E-Mail durchzuführen. Alternativ können Sie Azure Functions und SendGrid nutzen, um E-Mail-Funktionen für Azure SQL-Datenbank bereitzustellen.
Datenbankprinzipal-Alias
Titel: SYS.DATABASE_PRINCIPAL_ALIASES wird nicht mehr unterstützt und wurde entfernt.
Kategorie: Problem
Beschreibung
sys.database_principal_aliases
wird nicht mehr unterstützt und wurde in Azure SQL-Datenbank entfernt.
Empfehlung
Verwenden Sie anstelle von Aliasen Rollen.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
Option „DISABLE_DEF_CNST_CHK“
Titel: Die SET-Option „DISABLE_DEF_CNST_CHK“ wird eingestellt und wurde entfernt.
Kategorie: Problem
Beschreibung
Die SET-Option „DISABLE_DEF_CNST_CHK“ wird eingestellt und wurde aus Azure SQL-Datenbank entfernt.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
FASTFIRSTROW-Hinweis
Titel: Der FASTFIRSTROW-Abfragehinweis wird nicht mehr unterstützt und wurde entfernt.
Kategorie: Warnung
Beschreibung
Der FASTFIRSTROW-Abfragehinweis wird nicht mehr unterstützt und wurde in Azure SQL-Datenbank entfernt.
Empfehlung
Verwenden Sie OPTION (FAST n) anstelle des FASTFIRSTROW-Abfragehinweises.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
FILESTREAM
Titel: FILESTREAM wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Das Feature FILESTREAM, mit dem Sie unstrukturierte Daten (z. B. Textdokumente, Bilder und Videos) im NTFS-Dateisystem speichern können, wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Laden Sie die unstrukturierten Dateien in Azure-Blobspeicher hoch, und speichern Sie die Metadaten zu diesen Dateien (Name, Typ, URL-Speicherort, Speicherschlüssel usw.) in Azure SQL-Datenbank. Sie müssen für Ihre Anwendung ggf. das Reengineering durchführen, um das Streamen von Blobs für Azure SQL-Datenbank zu ermöglichen. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Weitere Informationen finden Sie unter Streamen von Blobs für SQL Azure: Blog.
Verbindungsserver
Titel: Funktionalität für Verbindungsserver wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Mit Verbindungsservern kann die SQL Server-Datenbank-Engine Befehle für OLE DB-Datenquellen ausführen, die sich außerhalb der Instanz von SQL Server befinden.
Empfehlung
Für Azure SQL-Datenbank wird die Funktionalität für Verbindungsserver nicht unterstützt. Die folgenden Aktionen werden empfohlen, um zu vermeiden, dass Verbindungsserver verwendet werden müssen:
- Identifizieren Sie die abhängigen Datasets für die SQL-Remoteserver, und erwägen Sie, diese in die zu migrierende Datenbank zu verschieben.
- Migrieren Sie die abhängigen Datenbanken zu Azure, und verwenden Sie das Feature „Abfrage für elastische Datenbanken“ (Vorschauversion), um in Azure SQL-Datenbank datenbankübergreifende Abfragen durchzuführen.
Weitere Informationen finden Sie in der Übersicht über elastische Abfragen in Azure SQL-Datenbank (Vorschau).
MS DTC
Titel: BEGIN DISTRIBUTED TRANSACTION wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
Eine verteilte Transaktion, die mit „Transact SQL BEGIN DISTRIBUTED TRANSACTION“ gestartet und mit Microsoft Distributed Transaction Coordinator (MS DTC) verwaltet wird, wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Navigieren Sie in Azure Migrate zum Abschnitt „Betroffene Objekte“, um alle Objekte anzuzeigen, für die BEGIN DISTRIBUTED TRANSACTION verwendet wird. Erwägen Sie, die Teilnehmerdatenbanken zu Azure SQL Managed Instance zu migrieren, damit verteilte Transaktionen instanzübergreifend unterstützt werden.
Weitere Informationen finden Sie unter Transaktionen über mehrere Server für Azure SQL Managed Instance.
Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
OPENROWSET (Massenvorgang)
Titel: OpenRowSet bei einem Massenvorgang bei einer Datenquelle, die kein Azure-Blobspeicher ist, wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung Für OPENROWSET werden Massenvorgänge über einen integrierten BULK-Anbieter unterstützt, mit dem Daten aus einer Datei gelesen und als Rowset zurückgegeben werden können. OPENROWSET bei einer Datenquelle, die kein Azure-Blobspeicher ist, wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Azure SQL-Datenbank kann nicht auf Dateifreigaben und Windows-Ordner zugreifen. Daher müssen die Dateien aus Azure Blob Storage importiert werden. Aus diesem Grund wird für die OPENROWSET-Funktion nur der Blobtyp DATASOURCE unterstützt. Alternativ können Sie zu SQL Server auf Azure Virtual Machines migrieren
Weitere Informationen finden Sie unter Auflösen von Transact-SQL-Unterschieden während der Migration zur SQL-Datenbank.
OPENROWSET (Anbieter)
Titel: OpenRowSet mit einem SQL-Anbieter oder einem anderen Anbieter wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
OpenRowSet mit einem SQL- oder anderen Anbieter ist eine Alternative zum Zugriff auf Tabellen eines Verbindungsservers. Dies ist eine einmalig verwendete Ad-hoc-Methode zum Verbinden und Zugreifen auf Remotedaten mithilfe von OLE DB. OpenRowSet mit einem SQL-Anbieter oder einem anderen Anbieter wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Azure SQL-Datenbank unterstützt OPENROWSET nur für den Import aus Azure Blob Storage. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Weitere Informationen finden Sie unter Auflösen von Transact-SQL-Unterschieden während der Migration zur SQL-Datenbank.
Linke äußere Verknüpfung (kein ANSI)
Titel: Linke äußere Verknüpfung (kein ANSI-Format) wird nicht mehr unterstützt und wurde entfernt.
Kategorie: Warnung
Beschreibung
Linke äußere Verknüpfung (kein ANSI-Format) wird nicht mehr unterstützt und wurde in Azure SQL-Datenbank entfernt.
Empfehlung
Verwenden Sie die ANSI-Joinsyntax.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
Rechte äußere Verknüpfung (kein ANSI)
Titel: Rechte äußere Verknüpfung (kein ANSI-Format) wird nicht mehr unterstützt und wurde entfernt.
Kategorie: Warnung
Beschreibung
Rechte äußere Verknüpfung (kein ANSI-Format) wird nicht mehr unterstützt und wurde in Azure SQL-Datenbank entfernt.
Empfehlung
Verwenden Sie die ANSI-Joinsyntax.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
Nächste Spalte
Titel: Tabellen und Spalten mit dem Namen NEXT führen in Azure SQL-Datenbank zu einem Fehler.
Kategorie: Problem
Beschreibung
Es wurden Tabellen oder Spalten mit dem Namen NEXT erkannt. In Microsoft SQL Server eingeführte Sequenzen verwenden die ANSI-Standardfunktion NEXT VALUE FOR. Wenn der Name einer Tabelle oder Spalte NEXT lautet, für die Spalte als Alias VALUE verwendet wird und das ANSI-Standardschlüsselwort AS weggelassen wird, kann die resultierende Anweisung einen Fehler verursachen.
Empfehlung
Schreiben Sie Anweisungen so um, dass sie das ANSI-Standardschlüsselwort AS enthalten, wenn für eine Tabelle oder Spalte ein Alias verwendet wird. Wenn eine Spalte beispielsweise den Namen NEXT hat und über den Alias VALUE verfügt, führt die Abfrage SELECT NEXT VALUE FROM TABLE
zu einem Fehler und sollte wie folgt umgeschrieben werden: SELECT NEXT AS VALUE FROM TABLE. Ebenso verursacht die Abfrage SELECT Col1 FROM NEXT VALUE
einen Fehler, wenn der Name einer Tabelle NEXT lautet und für diese Tabelle der Alias VALUE verwendet wird. Diese Abfrage sollte wie folgt umgeschrieben werden: SELECT Col1 FROM NEXT AS VALUE
.
RAISERROR
Titel: RAISERROR-Aufrufe im Legacystil sollten durch moderne Äquivalente ersetzt werden.
Kategorie: Warnung
Beschreibung
RAISERROR-Aufrufe wie im folgenden Beispiel werden als Aufrufe im Legacystil bezeichnet, da sie keine Kommas und Klammern enthalten. RAISERROR 50001 'this is a test'
. Diese Methode zum Aufrufen von RAISERROR wird nicht mehr unterstützt und wurde in Azure SQL-Datenbank entfernt.
Empfehlung
Schreiben Sie die Anweisung um, indem Sie die aktuelle RAISERROR-Syntax verwenden, oder ermitteln Sie, ob der moderne Ansatz mit BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH
möglich ist.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server.
Serverüberwachungen
Titel: Verwenden der Überwachungsfunktionen von Azure SQL-Datenbank als Ersatz für Serverüberwachungen.
Kategorie: Warnung
Beschreibung
Serverüberwachungen werden in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Erwägen Sie, die Überwachungsfunktionen von Azure SQL-Datenbank als Ersatz für Serverüberwachungen zu verwenden. Die Überwachung wird von Azure SQL unterstützt, und die Features sind umfangreicher als bei SQL Server. Mit Azure SQL-Datenbank können verschiedene Datenbankaktionen und -ereignisse überwacht werden, z. B.: Zugriff auf Daten, Schemaänderungen (DDL), Datenänderungen (DML), Konten, Rollen und Berechtigungen (DCL) sowie Sicherheitsausnahmen. Mit den Überwachungsfunktionen von Azure SQL-Datenbank können sich Organisationen eingehender über die Ereignisse und Änderungen in ihrer Datenbank informieren (z. B. über Datenaktualisierungen und -abfragen). Alternativ können Sie die Migration zu Azure SQL Managed Instance oder SQL Server auf Azure Virtual Machines durchführen.
Weitere Informationen finden Sie unter Überprüfungen für die Azure SQL-Datenbank und Azure Synapse Analytics.
Serveranmeldeinformationen
Titel: Serverbezogene Anmeldeinformationen werden in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Warnung
Beschreibung
Anmeldeinformationen sind in einem Datensatz gespeichert, in dem die Authentifizierungsinformationen (Anmeldeinformationen) enthalten sind, die zum Herstellen einer Verbindung mit einer Ressource außerhalb von SQL Server erforderlich sind. Für Azure SQL-Datenbank werden Datenbank-Anmeldeinformationen unterstützt, aber dies gilt nicht für die Anmeldeinformationen, die für den SQL Server-Bereich erstellt wurden.
Empfehlung
Für Azure SQL-Datenbank werden datenbankbezogene Anmeldeinformationen unterstützt. Konvertieren Sie serverbezogene Anmeldeinformationen in datenbankbezogene Anmeldeinformationen. Alternativ können Sie die Migration zu Azure SQL Managed Instance oder SQL Server auf Azure Virtual Machines durchführen.
Weitere Informationen finden Sie unter CREATE DATABASE SCOPED CREDENTIAL
Service Broker
Titel: Das Service Broker-Feature wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
SQL Server Service Broker verfügt über native Unterstützung für Messaging- und Warteschlangenanwendungen in der SQL Server-Datenbank-Engine. Das Service Broker-Feature wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Das Service Broker-Feature wird in Azure SQL-Datenbank nicht unterstützt. Erwägen Sie, die Migration zum Dienst Azure SQL Managed Instance durchzuführen, für den die Nutzung von Service Broker innerhalb derselben Instanz unterstützt wird. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Trigger im Gültigkeitsbereich des Servers
Titel: Trigger im Gültigkeitsbereich des Servers werden in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Warnung
Beschreibung
Ein Trigger ist ein spezieller Typ von gespeicherter Prozedur, die als Reaktion auf eine bestimmte Tabellenaktion, z. B. das Einfügen, Löschen oder Aktualisieren von Daten, ausgeführt wird. Trigger im Gültigkeitsbereich des Servers werden in Azure SQL-Datenbank nicht unterstützt. Für Azure SQL-Datenbank werden die folgenden Optionen für Trigger nicht unterstützt: FOR LOGON, ENCRYPTION, WITH APPEND, NOT FOR REPLICATION, Option EXTERNAL NAME (keine Unterstützung einer externen Methode), Option ALL SERVER (DDL-Trigger), Trigger für ein LOGON-Ereignis (LOGON-Trigger). Für Azure SQL-Datenbank werden auch keine CLR-Trigger unterstützt.
Empfehlung
Verwenden Sie stattdessen einen Trigger auf Datenbankebene. Alternativ können Sie die Migration zu Azure SQL Managed Instance oder SQL Server auf Azure Virtual Machines durchführen.
Weitere Informationen finden Sie unter Auflösen von Transact-SQL-Unterschieden während der Migration zur SQL-Datenbank.
SQL-Agent-Aufträge
Titel: In Azure SQL-Datenbank sind keine SQL Server-Agent-Aufträge verfügbar.
Kategorie: Warnung
Beschreibung
Der SQL Server-Agent ist ein Microsoft Windows-Dienst, der geplante administrative Aufgaben ausführt, die in SQL Server als Aufträge bezeichnet werden. In Azure SQL-Datenbank sind keine SQL Server-Agent-Aufträge verfügbar.
Empfehlung
Verwenden Sie elastische Aufträge, die in Azure SQL-Datenbank als Ersatz für SQL Server-Agent-Aufträge dienen. Elastische Aufträge für Azure SQL-Datenbank ermöglichen die zuverlässige Ausführung von T-SQL-Skripts, die mehrere Datenbanken abdecken, und stellt Funktionen für die automatische Wiederholung und ggf. Abschlussgarantien bereit. Alternativ können Sie erwägen, die Migration zu Azure SQL Managed Instance oder SQL Server auf einem virtuellen Azure-Computer durchzuführen. Weitere Informationen finden Sie unter Elastische Aufträge für Azure SQL-Datenbank.
SQL-Datenbankgröße
Titel: Für Azure SQL-Datenbank wird eine Datenbankgröße von über 100 TB nicht unterstützt.
Kategorie: Problem
Beschreibung
Die Datenbankgröße übersteigt die maximal unterstützte Größe von 100 TB.
Empfehlung
Ermitteln Sie, ob die Daten archiviert oder komprimiert oder per Sharding in mehreren Datenbanken angeordnet werden können. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Weitere Informationen finden Sie unter V-Kern-Ressourcenlimits.
SQL Mail
Titel: SQL Mail wird nicht mehr unterstützt.
Kategorie: Warnung
Beschreibung
SQL Mail wurde eingestellt und in Azure SQL-Datenbank entfernt.
Empfehlung
Erwägen Sie, die Migration zu Azure SQL Managed Instance oder SQL Server auf einem virtuellen Azure-Computer durchzuführen und Datenbank-E-Mail zu nutzen.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server
SystemProcedures110
Titel: Es wurden Anweisungen erkannt, in denen auf entfernte gespeicherte Systemprozeduren verwiesen wird, die in Azure SQL-Datenbank nicht verfügbar sind.
Kategorie: Warnung
Beschreibung
Die folgenden nicht unterstützten Systemprozeduren und erweiterten gespeicherten Prozeduren können in Azure SQL-Datenbank nicht verwendet werden: sp_dboption
, sp_addserver
, sp_dropalias
,sp_activedirectory_obj
, sp_activedirectory_scp
, sp_activedirectory_start
.
Empfehlung
Entfernen Sie Verweise auf nicht unterstützte Systemprozeduren, die in Azure SQL-Datenbank entfernt wurden.
Weitere Informationen finden Sie unter Nicht mehr unterstützte Datenbank-Engine-Funktionalität in SQL Server
Ablaufverfolgungsflags
Titel: Für Azure SQL-Datenbank werden keine Ablaufverfolgungsflags unterstützt
Kategorie: Warnung
Beschreibung
Ablaufverfolgungsflags werden zur temporären Festlegung bestimmter Servereigenschaften oder zum Ausschalten eines bestimmten Verhaltens verwendet. Häufig werden Ablaufverfolgungsflags zur Diagnose der Systemleistung und zum Debuggen von gespeicherten Prozeduren oder komplexen Computersystemen verwendet. Für Azure SQL-Datenbank werden keine Ablaufverfolgungsflags unterstützt.
Empfehlung
Sehen Sie sich in Azure Migrate den Abschnitt mit den betroffenen Objekten an. Darin sind alle Ablaufverfolgungsflags aufgeführt, die in Azure SQL-Datenbank nicht unterstützt werden, und Sie können ermitteln, ob sie entfernt werden können. Alternativ können Sie die Migration zum Dienst Azure SQL Managed Instance, für den eine begrenzte Anzahl von globalen Ablaufverfolgungsflags unterstützt wird, oder zu SQL Server auf Azure Virtual Machines durchführen.
Weitere Informationen finden Sie unter Auflösen von Transact-SQL-Unterschieden während der Migration zur SQL-Datenbank.
Windows-Authentifizierung
Titel: Datenbankbenutzer mit Zuordnung der Windows-Authentifizierung (integrierte Sicherheit) werden in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Warnung
Beschreibung
Azure SQL-Datenbank unterstützt zwei Arten der Authentifizierung:
- SQL-Authentifizierung: Verwendet einen Benutzernamen und ein Kennwort.
- Microsoft Entra-Authentifizierung: verwendet Identitäten, die von Microsoft Entra ID (früher Azure Active Directory) verwaltet werden, und wird für verwaltete und integrierte Domänen unterstützt.
Datenbankbenutzer mit Zuordnung der Windows-Authentifizierung (integrierte Sicherheit) werden in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Verbinden Sie das lokale Active Directory mit der Microsoft Entra ID. Die Windows-Identität kann dann durch die entsprechenden Microsoft Entra-Identitäten ersetzt werden. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Weitere Informationen finden Sie unter Sicherheitsfunktionen von Azure SQL Database.
xp_cmdshell
Titel: xp_cmdshell wird in Azure SQL-Datenbank nicht unterstützt.
Kategorie: Problem
Beschreibung
xp_cmdshell
für die Erstellung einer Windows-Befehlsshell und die Übergabe einer Zeichenfolge für die Ausführung wird in Azure SQL-Datenbank nicht unterstützt.
Empfehlung
Sehen Sie sich in Azure Migrate den Abschnitt mit den betroffenen Objekten an. Darin sind alle Objekte aufgeführt, für die xp_cmdshell
verwendet wird, und Sie können ermitteln, ob der Verweis auf xp_cmdshell
oder das betroffene Objekt entfernt werden kann. Erwägen Sie auch, sich mit Azure Automation vertraut zu machen, um einen cloudbasierten Dienst für die Automatisierung und Konfiguration nutzen zu können. Alternativ können Sie zu SQL Server auf einer Azure-VM migrieren.
Zugehöriger Inhalt
- Migrationsleitfaden: SQL Server zu Azure SQL-Datenbank
- Dienste und Tools für Datenmigrationsszenarien
- Was ist Azure SQL-Datenbank?
- Azure-Gesamtkostenrechner
- Cloud Adoption Framework für Azure
- Bewährte Methoden für die Kostenermittlung und Größenanpassung von zu Azure migrierten Workloads
- Data Access Migration Toolkit (Vorschau)
- Übersicht über den Assistenten für Datenbankexperimente