Evaluatieregels voor migratie van SQL Server naar Azure SQL Managed Instance
van toepassing op:Azure SQL Managed Instance
Migratiehulpprogramma's valideren uw SQL Server-bronexemplaren door verschillende evaluatieregels uit te voeren. De regels identificeren problemen die moeten worden opgelost voordat u uw SQL Server-database migreert naar Azure SQL Managed Instance.
Dit artikel bevat een lijst met de regels die worden gebruikt om de haalbaarheid van de migratie van uw SQL Server-database naar Azure SQL Managed Instance te beoordelen.
Overzicht van regels
Analyse-opdracht-taak
Titel: De taakstap AnalysisCommand wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Waarschuwing
Beschrijving
Het is een taakstap waarmee een Analysis Services-opdracht wordt uitgevoerd. AnalysisCommand-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
Aanbeveling
Bekijk de sectie van de beïnvloede objecten in Azure Migrate om alle taken te bekijken die gebruikmaken van de Analysis Service Command-taakstap, en beoordeel of de taakstap of het getroffen object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: SQL Server Agent verschillen in Azure SQL Managed Instance
AnalyseQuerytaak
Titel: De AnalysisQuery-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Waarschuwing
beschrijving
Het is een taakstap waarmee een Analysis Services-query wordt uitgevoerd. AnalysisQuery-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
Aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle taken te bekijken met behulp van de taakstap Analysis Service-query en te evalueren of de taakstap of het betrokken object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: De verschillen in de SQL Server Agent in Azure SQL Managed Instance
Assemblage uit bestand
Titel: CREATE ASSEMBLY en ALTER ASSEMBLY met een bestandsparameter worden niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
Beschrijving
Azure SQL Managed Instance biedt geen ondersteuning voor CREATE ASSEMBLY
of ALTER ASSEMBLY
met een bestandsparameter. Een binaire parameter wordt ondersteund. Zie de sectie Betrokken objecten voor het specifieke object waarin de bestandsparameter wordt gebruikt.
Aanbeveling
Objecten controleren met behulp van CREATE ASSEMBLY
of ALTER ASSEMBLY
met een bestandsparameter. Als dergelijke objecten vereist zijn, converteert u de bestandsparameter naar een binaire parameter. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: CLR-verschillen in Azure SQL Managed Instance
BULK INSERT
Titel: BULK INSERT met niet-Azure blob-gegevensbron wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
Azure SQL Managed Instance heeft geen toegang tot bestandsshares of Windows-mappen. Zie de sectie Betrokken objecten voor het specifieke gebruik van BULK INSERT-instructies die niet verwijzen naar een Azure-blob. Objecten met BULK INSERT, waarbij de bron niet Azure Blob Storage is, werkt niet na de migratie naar Azure SQL Managed Instance.
aanbeveling
U moet BULK INSERT-instructies converteren die lokale bestanden of bestandsshares gebruiken om in plaats daarvan bestanden uit Azure Blob Storage te gebruiken, wanneer u migreert naar Azure SQL Managed Instance.
Meer informatie: Bulk invoegen en OPENROWSET-verschillen in Azure SQL Managed Instance
CLR-beveiliging
Titel: CLR-assembly's die zijn gemarkeerd als VEILIG of EXTERNAL_ACCESS, worden beschouwd als ONVEILIG
Categorie: Waarschuwing
beschrijving
De strikte beveiligingsmodus CLR wordt afgedwongen in Azure SQL Managed Instance. Deze modus is standaard ingeschakeld en introduceert belangrijke wijzigingen voor databases met door de gebruiker gedefinieerde CLR-assembly's die zijn gemarkeerd als VEILIG of EXTERNAL_ACCESS.
aanbeveling
CLR maakt gebruik van CAS (Code Access Security) in .NET Framework, dat niet meer wordt ondersteund als een beveiligingsgrens. Een CLR-assembly die is gemaakt met PERMISSION_SET = SAFE
kan mogelijk toegang krijgen tot externe systeembronnen, onbeheerde code aanroepen en sysadmin-bevoegdheden verkrijgen. In SQL Server 2017 (14.x) en latere versies verbetert de sp_configure
optie, strikte beveiliging, de beveiliging van CLR-assembly's.
clr strict security
is standaard ingeschakeld en behandelt SAFE
en EXTERNAL_ACCESS
assembly's alsof ze zijn gemarkeerd als UNSAFE
. De optie clr strict security
kan worden uitgeschakeld voor achterwaartse compatibiliteit, maar wordt niet aanbevolen.
We raden aan alle assembly's te ondertekenen met een certificaat of asymmetrische sleutel, waarbij een bijbehorende login UNSAFE ASSEMBLY
machtigingen heeft in de master
-database. SQL Server-beheerders kunnen ook assembly's toevoegen aan een lijst met assembly's, die de Database Engine moet vertrouwen. Zie sys.sp_add_trusted_assemblyvoor meer informatie.
COMPUTE-instructie
Titel: COMMUTE-clause wordt niet meer ondersteund en is verwijderd.
Categorie: Waarschuwing
Beschrijving
De COMPUTE-component genereert totalen die worden weergegeven als extra samenvattingskolommen aan het einde van de resultatenset. Deze component wordt echter niet meer ondersteund in Azure SQL Managed Instance.
aanbeveling
De T-SQL-module moet opnieuw worden geschreven met behulp van de ROLLUP-operator. De volgende code laat zien hoe COMPUTE kan worden vervangen door ROLLUP:
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;
Meer informatie: Stopgezette functionaliteit van de database-engine in SQL Server
Cryptografische provider
Titel: Er is gebruik gemaakt van de opdrachten CREATE CRYPTOGRAPHIC PROVIDER of ALTER CRYPTOGRAPHIC PROVIDER, die niet worden ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
Azure SQL Managed Instance biedt geen ondersteuning voor CRYPTOGRAFISCHE PROVIDER-instructies omdat het geen toegang heeft tot bestanden. Zie de sectie Betrokken objecten voor het specifieke gebruik van CRYPTOGRAFISCHE PROVIDER-instructies. Objecten met 'CREATE CRYPTOGRAPHIC PROVIDER' of 'ALTER CRYPTOGRAPHIC PROVIDER' werken niet correct na de migratie naar Azure SQL Managed Instance.
aanbeveling
Objecten controleren met 'CREATE CRYPTOGRAPHIC PROVIDER' of 'ALTER CRYPTOGRAPHIC PROVIDER'. In alle objecten die vereist zijn, verwijder het gebruik van deze functies. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: verschillen tussen cryptografische providers in Azure SQL Managed Instance
Databasecompatibiliteit
Title: Databasecompatibiliteitsniveau onder 100 wordt niet ondersteund
Categorie: Waarschuwing
beschrijving
Databasecompatibiliteitsniveau is een waardevol hulpmiddel om te helpen bij het moderniseren van databases, doordat de SQL Server Database Engine kan worden bijgewerkt, terwijl de functionele status van toepassingen wordt behouden door hetzelfde databasecompatibiliteitsniveau vóór de upgrade te behouden. Azure SQL Managed Instance biedt geen ondersteuning voor compatibiliteitsniveaus onder de 100. Wanneer de database met compatibiliteitsniveau onder de 100 wordt hersteld in Azure SQL Managed Instance, wordt het compatibiliteitsniveau bijgewerkt naar 100.
aanbeveling
Evalueer of de functionaliteit van de toepassing intact is wanneer het databasecompatibiliteitsniveau wordt bijgewerkt naar 100 op Azure SQL Managed Instance. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: Ondersteunde compatibiliteitsniveaus in Azure SQL Managed Instance
Database principaalalias
titel: SYS. DATABASE_PRINCIPAL_ALIASES wordt niet meer ondersteund en is verwijderd.
Categorie: Probleem
beschrijving
sys.database_principal_aliases
wordt niet meer ondersteund en is verwijderd in Azure SQL Managed Instance.
aanbeveling
Gebruik rollen in plaats van aliassen.
Meer informatie: beëindigde database-engine-functionaliteit in SQL Server
DISABLE_DEF_CNST_CHK optie
Titel: SET-optie DISABLE_DEF_CNST_CHK wordt niet meer ondersteund en is verwijderd.
Categorie: Probleem
beschrijving
SET-optie DISABLE_DEF_CNST_CHK wordt niet meer ondersteund en is verwijderd in Azure SQL Managed Instance.
Meer informatie: Stopgezette functionaliteit van de database-engine in SQL Server
FASTFIRSTROW-hint
Titel: FASTFIRSTROW queryhint wordt niet meer ondersteund en is verwijderd.
Categorie: Waarschuwing
beschrijving
FASTFIRSTROW-queryhint wordt niet meer ondersteund en is verwijderd in Azure SQL Managed Instance.
aanbeveling
In plaats van FASTFIRSTROW-queryhint gebruikt u OPTION (FAST n).
Meer informatie: Stopgezette Database-Enginefunctionaliteit in SQL Server
FILESTREAM
titel: FILESTREAM en FileTable worden niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
De functie FILESTREAM, waarmee u ongestructureerde gegevens, zoals tekstdocumenten, afbeeldingen en video's in het NTFS-bestandssysteem, kunt opslaan, wordt niet ondersteund in Azure SQL Managed Instance.
Deze database kan niet worden gemigreerd omdat de back-up met FILESTREAM-bestandsgroepen niet kan worden hersteld in Azure SQL Managed Instance.
Aanbeveling
Upload de ongestructureerde bestanden naar Azure Blob Storage en sla metagegevens op die betrekking hebben op deze bestanden (naam, type, URL-locatie, opslagsleutel, enzovoort) in Azure SQL Managed Instance. Mogelijk moet u uw toepassing opnieuw ontwerpen om streaming-blobs naar en van Azure SQL Managed Instance in te schakelen. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: streaming-blobs naar en van SQL Azure-blog
Heterogene MS DTC
Titel: BEGIN DISTRIBUTED TRANSACTION met niet-SQL Server externe server wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
Gedistribueerde transactie gestart door Transact SQL BEGIN DISTRIBUTED TRANSACTION en beheerd door Microsoft Distributed Transaction Coordinator (MS DTC) wordt niet ondersteund in Azure SQL Managed Instance als de externe server geen SQL Server is.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle objecten te bekijken met BEHULP van BEGIN DISTRIBUTED TRANSACTION. Overweeg om de deelnemersdatabases te migreren naar Azure SQL Managed Instance, waarbij gedistribueerde transacties over meerdere exemplaren worden ondersteund. Zie Transacties op meerdere servers voor Azure SQL Managed Instancevoor meer informatie.
U kunt ook migreren naar SQL Server op azure-VM's.
Homogene MS DTC
titel: BEGIN DISTRIBUTED TRANSACTION wordt ondersteund op meerdere servers voor Azure SQL Managed Instance.
Categorie: Probleem
Beschrijving
Gedistribueerde transactie gestart door Transact SQL BEGIN DISTRIBUTED TRANSACTION en beheerd door Microsoft Distributed Transaction Coordinator (MS DTC) wordt ondersteund op meerdere servers voor Azure SQL Managed Instance.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle objecten te bekijken met BEHULP van BEGIN DISTRIBUTED TRANSACTION. Overweeg om de deelnemersdatabases te migreren naar Azure SQL Managed Instance, waarbij gedistribueerde transacties over meerdere exemplaren worden ondersteund. Zie Transacties op meerdere servers voor Azure SQL Managed Instancevoor meer informatie.
U kunt ook migreren naar SQL Server op azure-VM's.
Gekoppelde server (niet-SQL-leverancier)
titel: gekoppelde server met niet-SQL Server-provider wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
Beschrijving
Met gekoppelde servers kan de SQL Server Database Engine opdrachten uitvoeren op OLE DB-gegevensbronnen buiten het exemplaar van SQL Server. Gekoppelde server met niet-SQL Server-provider wordt niet ondersteund in Azure SQL Managed Instance.
Aanbeveling
Azure SQL Managed Instance biedt geen ondersteuning voor functionaliteit voor gekoppelde servers als de externe serverprovider niet-SQL Server is, zoals Oracle, Sybase, enzovoort.
De volgende acties worden aanbevolen om de noodzaak van gekoppelde servers te elimineren:
- Identificeer de afhankelijke databases van externe niet-SQL-servers en overweeg deze te verplaatsen naar de database die wordt gemigreerd.
- Migreer de afhankelijke databases naar ondersteunde doelen, zoals SQL Managed Instance, SQL Database, Azure Synapse en SQL Server-exemplaren.
- Overweeg om een gekoppelde server te maken tussen Azure SQL Managed Instance en SQL Server op Azure Virtual Machines (SQL VM). Maak vervolgens vanuit de SQL-VM een gekoppelde server met Oracle, Sybase, enzovoort. Deze aanpak omvat twee hops, maar kan worden gebruikt als tijdelijke tijdelijke oplossing.
- U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: verschillen tussen gekoppelde servers in Azure SQL Managed Instance
Taak samenvoegen
titel: de taakstap Samenvoegen wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Waarschuwing
Beschrijving
Dit is een taakstap waarmee de replicatiesamenvoegagent wordt geactiveerd. De replicatiesamenvoegagent is een uitvoerbaar programma dat de aanvankelijke momentopname in de databasetabellen toepast op de abonnees. Ook worden incrementele gegevenswijzigingen samengevoegd die in Publisher zijn opgetreden nadat de eerste momentopname is gemaakt en worden conflicten afgestemd op basis van de regels die u configureert, of met behulp van een aangepaste resolver die u maakt. De samenvoegtaakstap wordt niet ondersteund in Azure SQL Managed Instance.
Aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle taken te bekijken met de taakstap Samenvoegen en te evalueren of de taakstap of het betrokken object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Verschillen in SQL Server Agent in Azure SQL Managed Instance: Meer informatie
Databasegrootte van SQL Managed Instance
titel: Azure SQL Managed Instance biedt geen ondersteuning voor databasegrootte van meer dan 16 TB.
Categorie: Probleem
Beschrijving
De grootte van de database is groter dan de maximale gereserveerde opslag voor instanties.
Deze database kan niet worden geselecteerd voor migratie omdat de toegestane limiet is overschreden.
Aanbeveling
Evalueer of de gegevens gecomprimeerd gearchiveerd kunnen worden of opgesplitst in meerdere databases. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: Hardwarekenmerken van Azure SQL Managed Instance
Grootte van SQL Managed Instance-exemplaar
Titel: De maximale exemplaaropslaggrootte in Azure SQL Managed Instance mag niet groter zijn dan 8 TB.
Categorie: Waarschuwing
beschrijving
De grootte van alle databases is groter dan de maximale gereserveerde opslag voor instanties.
aanbeveling
Overweeg om de databases te migreren naar verschillende met Azure SQL beheerde exemplaren of naar SQL Server op virtuele Azure-machines als alle databases op hetzelfde exemplaar moeten bestaan.
Meer informatie: Hardwarekenmerken van Azure SQL Managed Instance
meerdere logboekbestanden
titel: Azure SQL Managed Instance biedt geen ondersteuning voor meerdere logboekbestanden.
Categorie: Probleem
beschrijving
Met SQL Server kan een database zich aanmelden bij meerdere bestanden. Deze database heeft meerdere logboekbestanden, die niet worden ondersteund in Azure SQL Managed Instance.
Deze database kan niet worden gemigreerd omdat de back-up niet kan worden hersteld in Azure SQL Managed Instance.
aanbeveling
Azure SQL Managed Instance ondersteunt slechts één logboek per database. U moet alle logboekbestanden behalve een van de logboekbestanden verwijderen voordat u deze database naar Azure migreert:
ALTER DATABASE [database_name] REMOVE FILE [log_file_name]
Meer informatie: niet-ondersteunde databaseopties in Azure SQL Managed Instance
Volgende kolom
Titel: Tabellen en kolommen met de naam NEXT leiden tot een fout in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
Tabellen of kolommen met de naam NEXT zijn gedetecteerd. Reeksen, geïntroduceerd in Microsoft SQL Server, gebruiken de ANSI-standaard NEXT VALUE FOR, functie. Tabellen of kolommen die NEXT heten en kolommen die de alias VALUE hebben, zonder de ANSI-standaard AS, kunnen een fout veroorzaken.
aanbeveling
Herschrijf statements om het ANSI-standaard AS-sleutelwoord op te nemen bij het alias gebruiken van een tabel of kolom. Als een kolom bijvoorbeeld NEXT heet en die kolom als WAARDE is gealiaseerd, veroorzaakt de query SELECT NEXT WAARDE VAN TABLE een fout en moet deze worden herschreven als SELECT NEXT ALS WAARDE VAN TABLE. Op dezelfde manier veroorzaakt de query SELECT Col1 FROM NEXT VALUE voor een tabel met de naam NEXT en alias VALUE een fout en moet worden herschreven als SELECT Col1 FROM NEXT AS VALUE.
Niet-ANSI-stijl left outer join
Titel: De left outer join-stijl die niet ANSI-conform is, wordt niet langer ondersteund en is verwijderd.
Categorie: Waarschuwing
beschrijving
Niet-ANSI-stijl left outer join wordt niet meer ondersteund en is verwijderd in Azure SQL Managed Instance.
aanbeveling
Gebruik de ANSI-joinsyntaxis.
Meer informatie: Stopgezette functionaliteit van de database-engine in SQL Server
Niet-ANSI-stijl right outer join
Titel: Niet-ANSI-stijl right outer join wordt niet meer ondersteund en is verwijderd.
Categorie: Waarschuwing
beschrijving
Niet-ANSI-stijl right outer join wordt niet meer ondersteund en is verwijderd in Azure SQL Managed Instance.
Meer informatie: stopgezette database-enginefunctionaliteit in SQL Server
aanbeveling
Gebruik de ANSI-joinsyntaxis.
Databases overschrijden de 100 items
titel: Azure SQL Managed Instance ondersteunt maximaal 100 databases per exemplaar.
Categorie: Waarschuwing
Beschrijving
Het maximum aantal databases dat wordt ondersteund in Azure SQL Managed Instance is 100, tenzij de limiet voor de opslaggrootte van het exemplaar is bereikt.
Aanbeveling
Overweeg om de databases te migreren naar verschillende met Azure SQL beheerde exemplaren of naar SQL Server op virtuele Azure-machines als alle databases op hetzelfde exemplaar moeten bestaan.
Meer informatie: Resource Limieten van Azure SQL Managed Instance
OPENROWSET (niet-BLOB-gegevensbron)
nl-NL: titel: OpenRowSet, gebruikt in bulkbewerkingen met een niet-Azure-blobopslaggegevensbron, wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
Beschrijving
OPENROWSET ondersteunt bulkbewerkingen via een ingebouwde BULK-provider waarmee gegevens uit een bestand kunnen worden gelezen en geretourneerd als een rijenset. OPENROWSET met niet-Azure Blob Storage-gegevensbron wordt niet ondersteund in Azure SQL Managed Instance.
aanbeveling
Azure SQL Managed Instance heeft geen toegang tot bestandsshares en Windows-mappen, dus de bestanden moeten worden geïmporteerd uit Azure Blob Storage. Daarom wordt alleen het blobtype DATASOURCE ondersteund in de functie OPENROWSET. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: Bulkinvoeging en OPENROWSET-verschillen in Azure SQL Managed Instance
OPENROWSET (niet-SQL-provider)
titel: OpenRowSet met niet-SQL-provider wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
Beschrijving
Deze methode is een alternatief voor het openen van tabellen op een gekoppelde server en is een eenmalige ad-hocmethode voor het verbinden en openen van externe gegevens met behulp van OLE DB. OpenRowSet met niet-SQL-provider wordt niet ondersteund in Azure SQL Managed Instance.
Aanbeveling
De functie OPENROWSET kan alleen worden gebruikt om query's uit te voeren op SQL Server-exemplaren (beheerd, on-premises of in virtuele machines). De providers SQLNCLI
, SQLNCLI11
, SQLOLEDB
en MSOLEDBSQL
(aanbevolen) worden ondersteund. Het Microsoft OLE DB-stuurprogramma voor SQL Server- wordt aanbevolen voor nieuwe ontwikkeling.
De aanbevelingsactie is om de afhankelijke databases van externe niet-SQL-servers te identificeren en deze te verplaatsen naar het exemplaar dat wordt gemigreerd.
Meer informatie: de verschillen tussen Bulk Insert en OPENROWSET in Azure SQL Managed Instance
PowerShell-taak
titel: PowerShell-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Waarschuwing
beschrijving
Het is een taakstap waarmee een PowerShell-script wordt uitgevoerd. PowerShell-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle taken te bekijken met behulp van de PowerShell-taakstap en te evalueren of de taakstap of het betrokken object kan worden verwijderd. Evalueren of Azure Automation kan worden gebruikt. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: verschillen van SQL Server Agent in Azure SQL Managed Instance
Wachtrijlezertaak
Titel: De jobstap voor wachtrijlezer wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Waarschuwing
Beschrijving
Dit is een taakstap waarmee de agent voor replicatiewachtrijlezer wordt geactiveerd. De replicatiewachtrijlezeragent is een uitvoerbaar bestand dat berichten leest die zijn opgeslagen in een Microsoft SQL Server-wachtrij of een Microsoft-berichtenwachtrij en die berichten vervolgens toepast op de Uitgever. Queue Reader Agent wordt gebruikt met momentopnamen en transactionele publicaties die bijwerken in de wachtrij mogelijk maken. De taakstap Wachtrijlezer wordt niet ondersteund in Azure SQL Managed Instance.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle taken te zien met behulp van de taakstap Wachtrijlezer en evalueer of de taakstap of het betrokken object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: SQL Server Agent-verschillen in Azure SQL Managed Instance
RAISERROR
Titel: Verouderde stijl RAISERROR-aanroepen moeten worden vervangen door moderne equivalenten.
Categorie: Waarschuwing
Beschrijving
RAISERROR-aanroepen zoals in het voorbeeld hieronder worden bestempeld als verouderd omdat ze geen komma's en haakjes hebben.
RAISERROR 50001 'this is a test'
. Deze methode voor het aanroepen van RAISERROR wordt niet meer ondersteund en verwijderd in Azure SQL Managed Instance.
De aanbeveling
Herschrijf de instructie met behulp van de huidige RAISERROR-syntaxis of evalueer of de moderne benadering van BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH
haalbaar is.
Meer informatie: stopgezette database-enginefunctionaliteit in SQL Server
SQL Mail
titel: SQL Mail wordt niet meer ondersteund.
Categorie: Waarschuwing
beschrijving
SQL Mail wordt niet meer ondersteund en verwijderd in Azure SQL Managed Instance.
Aanbeveling
Gebruik Database Mail.
Meer informatie: Stopgezette functionaliteit van de database-engine in SQL Server
SystemProcedures110
Titel: Gedetecteerde instructies die verwijzen naar verwijderde door het systeem opgeslagen procedures die niet beschikbaar zijn in Azure SQL Managed Instance.
Categorie: Waarschuwing
beschrijving
Het volgen van niet-ondersteunde systeem- en uitgebreide opgeslagen procedures kan niet worden gebruikt in Azure SQL Managed Instance: sp_dboption
, sp_addserver
, sp_dropalias
,sp_activedirectory_obj
, sp_activedirectory_scp
en sp_activedirectory_start
.
aanbeveling
Verwijder verwijzingen naar niet-ondersteunde systeemprocedures die zijn verwijderd in Azure SQL Managed Instance.
Meer informatie: stopgezette database-enginefunctionaliteit in SQL Server
Transact-SQL taak
Titel: TSQL-taakstap bevat niet-ondersteunde opdrachten in azure SQL Managed Instance
Categorie: Waarschuwing
beschrijving
Het is een taakstap die Transact-SQL scripts op gepland tijdstip uitvoert. TSQL-taakstap bevat niet-ondersteunde opdrachten, die niet worden ondersteund in Azure SQL Managed Instance.
Aanbeveling
Controleer de sectie betreffende objecten in Azure Migrate om alle taken te zien die niet-ondersteunde opdrachten bevatten in Azure SQL Managed Instance en evalueren of de taakstap of het betrokken object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: SQL Server Agent-verschillen in Azure SQL Managed Instance
Traceringsvlaggen
Titel: Traceringsvlaggen die niet worden ondersteund in Azure SQL Managed Instance, zijn gevonden
Categorie: Waarschuwing
Beschrijving
Azure SQL Managed Instance ondersteunt slechts een beperkt aantal globale traceringsvlagmen. Sessietraceringsvlagmen worden niet ondersteund.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle traceringsvlagmen te zien die niet worden ondersteund in Azure SQL Managed Instance en te evalueren of ze kunnen worden verwijderd. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: traceringsvlagmen
Windows-verificatie
Titel: Databasegebruikers die zijn gemapt met Windows-authenticatie (geïntegreerde beveiliging) worden niet ondersteund in Azure SQL Managed Instance
Categorie: Waarschuwing
beschrijving
Azure SQL Managed Instance ondersteunt twee typen verificatie:
- SQL-verificatie, die gebruikmaakt van een gebruikersnaam en wachtwoord
- Microsoft Entra-verificatie, die gebruikmaakt van identiteiten die worden beheerd door Microsoft Entra ID en wordt ondersteund voor beheerde en geïntegreerde domeinen.
Databasegebruikers die zijn toegewezen met Windows-verificatie (geïntegreerde beveiliging) worden niet ondersteund in Azure SQL Managed Instance.
aanbeveling
De lokale Active Directory federeren met Microsoft Entra ID. De Windows-identiteit kan vervolgens worden vervangen door de equivalente Microsoft Entra-identiteiten. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: beveiligingsmogelijkheden van SQL Managed Instance
xp_cmdshell
titel: xp_cmdshell wordt niet ondersteund in Azure SQL Managed Instance.
Categorie: Probleem
beschrijving
xp_cmdshell
, die een Windows-opdrachtshell maakt en een tekenreeks doorgeeft voor uitvoering, wordt niet ondersteund in Azure SQL Managed Instance.
aanbeveling
Bekijk de sectie betreffende objecten in Azure Migrate om alle objecten te bekijken met behulp van xp_cmdshell
en te evalueren of de verwijzing naar xp_cmdshell
of het betreffende object kan worden verwijderd. Overweeg Om Azure Automation te verkennen die automatisering en configuratieservice in de cloud levert. U kunt ook migreren naar SQL Server op azure-VM's.
Meer informatie: Verschillen in Opgeslagen Procedures in Azure SQL Managed Instance
Verwante inhoud
- Migratiehandleiding: SQL Server naar Azure SQL Managed Instance
- Services en hulpprogramma's die beschikbaar zijn voor scenario's voor gegevensmigratie
- Serviceniveaus in Azure SQL Managed Instance
- T-SQL-verschillen tussen SQL Server & Azure SQL Managed Instance
- Azure Totale Kosten van Eigendom Calculator
- Cloud Adoption Framework voor Azure
- Aanbevolen procedures voor het migreren van kosten en het aanpassen van de grootte van workloads naar Azure