Share via


Evaluatieregels voor migratie 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

Titel van regel Niveau Categorie Details
AnalysisCommandJob Exemplaar Waarschuwing AnalysisCommand-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
AnalysisQueryJob Exemplaar Waarschuwing AnalysisQuery-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
AssemblyFromFile Database Probleem CREATE ASSEMBLY en ALTER ASSEMBLY met een bestandsparameter worden niet ondersteund in Azure SQL Managed Instance.
BulkInsert Database Probleem BULK INSERT met niet-Azure Blob-gegevensbron wordt niet ondersteund in Azure SQL Managed Instance.
ClrStrictSecurity Database Waarschuwing CLR-assembly's die zijn gemarkeerd als VEILIG of EXTERNAL_ACCESS worden beschouwd als ONVEILIG.
ComputeClause Database Waarschuwing DE COMPUTE-component wordt niet meer ondersteund en is verwijderd.
CryptographicProvider Database Probleem Er is een gebruik van CREATE CRYPTOGRAPHIC PROVIDER of ALTER CRYPTOGRAPHIC PROVIDER gevonden. Dit wordt niet ondersteund in Azure SQL Managed Instance.
DatabasePrincipalAlias Database Probleem SYS. DATABASE_PRINCIPAL_ALIASES wordt niet meer ondersteund en is verwijderd.
DbCompatLevelLowerThan100 Database Waarschuwing Databasecompatibiliteitsniveau onder de 100 wordt niet ondersteund.
DisableDefCNSTCHK Database Probleem SET-optie DISABLE_DEF_CNST_CHK niet meer wordt ondersteund en is verwijderd.
FastFirstRowHint Database Waarschuwing FASTFIRSTROW-queryhint wordt niet meer ondersteund en is verwijderd.
Filestream Database Probleem FILESTREAM en FileTable worden niet ondersteund in Azure SQL Managed Instance.
LinkedServerWithNonSQLProvider Database Probleem Gekoppelde server met niet-SQL Server-provider wordt niet ondersteund in Azure SQL Managed Instance.
MergeJob Exemplaar Waarschuwing De samenvoegtaakstap wordt niet ondersteund in Azure SQL Managed Instance.
MIDatabaseSize Database Probleem Azure SQL Managed Instance biedt geen ondersteuning voor databasegrootte van meer dan 16 TB.
MIHeterogeneousMSDTCTransactSQL Database Probleem BEGIN DISTRIBUTED TRANSACTION with non-SQL Server remote server wordt niet ondersteund in Azure SQL Managed Instance.
MIHomogeneousMSDTCTransactSQL Database Probleem BEGIN DISTRIBUTED TRANSACTION wordt ondersteund op meerdere servers voor Azure SQL Managed Instance.
MIInstanceSize Exemplaar Waarschuwing De maximale opslaggrootte van exemplaren in Azure SQL Managed Instance mag niet groter zijn dan 8 TB.
MultipleLogFiles Database Probleem Azure SQL Managed Instance biedt geen ondersteuning voor databases met meerdere logboekbestanden.
NextColumn Database Probleem Tabellen en kolommen met de naam NEXT leiden tot een fout in Azure SQL Managed Instance.
NonANSILeftOuterJoinSyntax Database Waarschuwing Niet-ANSI-stijl left outer join wordt niet meer ondersteund en is verwijderd.
NonANSIRightOuterJoinSyntax Database Waarschuwing Niet-ANSI-stijl right outer join wordt niet meer ondersteund en is verwijderd.
NumDbExceeds100 Exemplaar Waarschuwing Azure SQL Managed Instance ondersteunt maximaal 100 databases per exemplaar.
OpenRowsetWithNonBlobDataSourceBulk Database Probleem OpenRowSet die wordt gebruikt in bulkbewerkingen met niet-Azure Blob Storage-gegevensbron, wordt niet ondersteund in Azure SQL Managed Instance.
OpenRowsetWithNonSQLProvider Database Probleem OpenRowSet met niet-SQL-provider wordt niet ondersteund in Azure SQL Managed Instance.
PowerShellJob Exemplaar Waarschuwing PowerShell-taakstap wordt niet ondersteund in Azure SQL Managed Instance.
QueueReaderJob Exemplaar Waarschuwing De taakstap Wachtrijlezer wordt niet ondersteund in Azure SQL Managed Instance.
RAISERROR Database Waarschuwing Verouderde RAISERROR-aanroepen moeten worden vervangen door moderne equivalenten.
SqlMail Database Waarschuwing SQL Mail wordt niet meer ondersteund.
SystemProcedures110 Database Waarschuwing Gedetecteerde instructies die verwijzen naar verwijderde door het systeem opgeslagen procedures die niet beschikbaar zijn in Azure SQL Managed Instance.
TraceFlags Exemplaar Waarschuwing Traceringsvlagmen die niet worden ondersteund in Azure SQL Managed Instance, zijn gevonden.
TransactSqlJob Exemplaar Waarschuwing De TSQL-taakstap bevat niet-ondersteunde opdrachten in Azure SQL Managed Instance.
WindowsAuthentication Exemplaar Waarschuwing Databasegebruikers die zijn toegewezen met Windows-verificatie (geïntegreerde beveiliging) worden niet ondersteund in Azure SQL Managed Instance.
XpCmdshell Database Probleem xp_cmdshell wordt niet ondersteund in Azure SQL Managed Instance.

AnalysisCommand-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 betreffende objecten in Azure Migrate om alle taken te bekijken met behulp van de taakstap analysis service en te evalueren of de taakstap of het betrokken object kan worden verwijderd. U kunt ook migreren naar SQL Server op azure Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

AnalysisQuery-taak

Titel: 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 Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

Assembly 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 CREATE ASSEMBLY voor 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 Virtual Machine.

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: Verschillen bulksgewijs invoegen en OPENROWSET 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. Vanaf SQL Server 2017 (14.x) database-engine wordt een sp_configure optie met de naam clr strict security geïntroduceerd om de beveiliging van CLR-assembly's te verbeteren. Clr strikte beveiliging is standaard ingeschakeld en behandelt SAFE en EXTERNAL_ACCESS CLR-assembly's alsof ze als ONVEILIG zijn gemarkeerd. Wanneer de strikte beveiliging van clr is uitgeschakeld, kan een CLR-assembly die is gemaakt met PERMISSION_SET = SAFE, toegang krijgen tot externe systeembronnen, onbeheerde code aanroepen en sysadmin-bevoegdheden verkrijgen. Na het inschakelen van strikte beveiliging kunnen assembly's die niet zijn ondertekend niet worden geladen. Als een database OOK SAFE of EXTERNAL_ACCESS assembly's heeft, kunnen RESTORE- of ATTACH DATABASE-instructies worden voltooid, maar de assembly's kunnen niet worden geladen. Als u de assembly's wilt laden, moet u elke assembly wijzigen of verwijderen en opnieuw maken, zodat deze is ondertekend met een certificaat of asymmetrische sleutel met een bijbehorende aanmelding met de machtiging ONVEILIGE ASSEMBLY op de server.

Meer informatie: CLR strikte beveiliging

COMPUTE-component

Titel: COMPUTE-component 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 database-enginefunctionaliteit in SQL Server

Cryptografische provider

Titel: Er is een gebruik van CREATE CRYPTOGRAPHIC PROVIDER of ALTER CRYPTOGRAPHIC PROVIDER gevonden, die niet wordt 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'. Verwijder in dergelijke objecten die vereist zijn het gebruik van deze functies. U kunt ook migreren naar SQL Server op azure Virtual Machine.

Meer informatie: Verschillen tussen cryptografische providers in Azure SQL Managed Instance

Databasecompatibiliteit

Titel: Databasecompatibiliteitsniveau onder de 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 Virtual Machine.

Meer informatie: Ondersteunde compatibiliteitsniveaus in Azure SQL Managed Instance

Database-principalalias

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: Stopgezette database-enginefunctionaliteit in SQL Server

DISABLE_DEF_CNST_CHK optie

Titel: DE OPTIE SET 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 database-enginefunctionaliteit 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

BESTANDSSTROOM

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 Virtual Machine.

Meer informatie: Blobs streamen naar en van SQL Azure-blog

Heterogene MS DTC

Titel: BEGIN DISTRIBUTED TRANSACTION with non-SQL Server remote 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 zien met BEHULP van BEGIN DISTRUBUTED 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 Instance voor meer informatie.

U kunt ook migreren naar SQL Server op azure Virtual Machine.

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 zien met BEHULP van BEGIN DISTRUBUTED 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 Instance voor meer informatie.

U kunt ook migreren naar SQL Server op azure Virtual Machine.

Gekoppelde server (niet-SQL-provider)

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 Machine (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 Virtual Machine.

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 replicatie samenvoegagent is een uitvoerbaar hulpprogramma dat de eerste 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 Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

MI-databasegrootte

Titel: Azure SQL Managed Instance biedt geen ondersteuning voor de 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 kunnen worden gearchiveerd of in meerdere databases worden geshard. U kunt ook migreren naar SQL Server op azure Virtual Machine.

Meer informatie: Hardwarekenmerken van Azure SQL Managed Instance

MI-exemplaargrootte

Titel: De maximale opslaggrootte van exemplaren 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 azure Virtual Machine 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 met de naam NEXT en kolom met de alias VALUE met de ANSI-standaard-AS die worden weggelaten, kunnen een fout veroorzaken.

Aanbeveling
Herschrijfinstructies om het standaard-AS-trefwoord ANSI op te nemen bij het aliasen van een tabel of kolom. Als een kolom bijvoorbeeld NEXT heet en die kolom als WAARDE is alias, veroorzaakt de query SELECT NEXT VALUE FROM TABLE een fout en moet deze worden herschreven als SELECT NEXT AS VALUE FROM TABLE. Op dezelfde manier wordt voor een tabel met de naam NEXT en alias VALUE de query SELECT Col1 FROM NEXT VEROORZAAKT een fout en moet deze worden herschreven als SELECT Col1 FROM NEXT AS VALUE.

Niet-ANSI-stijl left outer join

Titel: Niet-ANSI-stijl left outer join wordt niet meer 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 database-enginefunctionaliteit 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 100

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 azure Virtual Machine als alle databases op hetzelfde exemplaar moeten bestaan.

Meer informatie: Resourcelimieten voor Azure SQL Managed Instance

OPENROWSET (niet-BLOB-gegevensbron)

Titel: OpenRowSet die wordt gebruikt in bulkbewerkingen met niet-Azure Blob Storage-gegevensbron, 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 gegevensbron van het blobtype ondersteund in de functie OPENROWSET. U kunt ook migreren naar SQL Server op azure Virtual Machine.

Meer informatie: Verschillen bulksgewijs invoegen en OPENROWSET 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 providersSQLNCLI, SQLNCLI11en SQLOLEDBMSOLEDBSQL (aanbevolen) worden ondersteund. Het Microsoft OLE DB-stuurprogramma (MSOLEDBSQL) 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: Verschillen bulksgewijs invoegen 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 Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

Wachtrijlezertaak

Titel: De taakstap 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 het bijwerken in de wachtrij toestaan. 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 Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

RAISERROR

Titel: Oudere stijl RAISERROR-aanroepen moeten worden vervangen door moderne equivalenten.
Categorie: Waarschuwing

Beschrijving
RAISERROR-aanroepen zoals in het onderstaande voorbeeld worden aangeduid als verouderd omdat ze geen komma's en haakjes bevatten. RAISERROR 50001 'this is a test'. Deze methode voor het aanroepen van RAISERROR wordt niet meer ondersteund en verwijderd in Azure SQL Managed Instance.

Aanbeveling
Herschrijf de instructie met behulp van de huidige RAISERROR-syntaxis of evalueer of de moderne benadering 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 database-enginefunctionaliteit 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_dropaliassp_addserver, ,sp_activedirectory_objsp_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 waarmee Transact-SQL-scripts op gepland tijdstip worden uitgevoerd. 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 Virtual Machine.

Meer informatie: verschillen in SQL Server Agent in Azure SQL Managed Instance

Traceringsvlaggen

Titel: Traceringsvlagmen 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 Virtual Machine.

Meer informatie: Traceringsvlagmen

Windows-verificatie

Titel: Databasegebruikers die zijn toegewezen met Windows-verificatie (geïntegreerde beveiliging) worden niet ondersteund in Azure SQL Managed Instance
Categorie: Waarschuwing

Beschrijving
Azure SQL Managed Instance ondersteunt twee typen verificatie:

  • SQL-verificatie, waarbij een gebruikersnaam en wachtwoord worden gebruikt
  • Microsoft Entra-verificatie, die gebruikmaakt van identiteiten die worden beheerd door Microsoft Entra ID (voorheen Azure Active Directory) 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 Virtual Machine.

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 en xp_cmdshell 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 Virtual Machine.

Meer informatie: Verschillen in opgeslagen procedures in Azure SQL Managed Instance