Pravidla hodnocení pro migraci SQL Serveru do služby Azure SQL Managed Instance

Platí pro:Azure SQL Managed Instance

Nástroje pro migraci ověřují zdrojová instance SQL Serveru spuštěním několika pravidel posouzení. Pravidla identifikují problémy, které je potřeba vyřešit před migrací databáze SQL Serveru do služby Azure SQL Managed Instance.

Tento článek obsahuje seznam pravidel používaných k posouzení proveditelnosti migrace databáze SQL Serveru do služby Azure SQL Managed Instance.

Souhrn pravidel

Název pravidla Level Kategorie Podrobnosti
AnalysisCommandJob Instance Upozorňující Krok úlohy AnalysisCommand není ve službě Azure SQL Managed Instance podporovaný.
AnalysisQueryJob Instance Upozorňující Krok úlohy AnalysisQuery se ve službě Azure SQL Managed Instance nepodporuje.
AssemblyFromFile Databáze Problém Funkce CREATE ASSEMBLY a ALTER ASSEMBLY s parametrem souboru se ve službě Azure SQL Managed Instance nepodporuje.
BulkInsert Databáze Problém Funkce BULK INSERT se zdrojem dat mimo Azure blob se ve službě Azure SQL Managed Instance nepodporuje.
ClrStrictSecurity Databáze Upozorňující Sestavení CLR označená jako SAFE nebo EXTERNAL_ACCESS jsou považována za NEBEZPEČNÁ.
ComputeClause Databáze Upozorňující Klauzule COMPUTE se už nepodporuje a byla odebrána.
Kryptografickýprovider Databáze Problém Bylo nalezeno použití CREATE CRYPTOGRAPHIC PROVIDER nebo ALTER CRYPTOGRAPHIC PROVIDER. Azure SQL Managed Instance to nepodporuje.
DatabasePrincipalAlias Databáze Problém SYS. DATABASE_PRINCIPAL_ALIASES se už nepodporuje a je odebraný.
DbCompatLevelLowerThan100 Databáze Upozorňující Úroveň kompatibility databáze nižší než 100 není podporovaná.
DisableDefCNSTCHK Databáze Problém Možnost SET DISABLE_DEF_CNST_CHK již není podporována a byla odebrána.
FastFirstRowHint Databáze Upozorňující Nápověda dotazu FASTFIRSTROW se už nepodporuje a byla odebrána.
Filestream Databáze Problém FileSTREAM a FileTable se ve službě Azure SQL Managed Instance nepodporují.
LinkedServerWithNonSQLProvider Databáze Problém Propojený server s jiným poskytovatelem než SQL Server není ve službě Azure SQL Managed Instance podporovaný.
MergeJob Instance Upozorňující Krok úlohy sloučení není ve službě Azure SQL Managed Instance podporovaný.
MIDatabaseSize Databáze Problém Spravovaná instance Azure SQL nepodporuje velikost databáze větší než 16 TB.
MIHeterogeneousMSDTCTransactSQL Databáze Problém Funkce BEGIN DISTRIBUTED TRANSACTION with non-SQL Server remote server není podporována ve službě Azure SQL Managed Instance.
MIHomogeneousMSDTCTransactSQL Databáze Problém FUNKCE BEGIN DISTRIBUTED TRANSACTION se podporuje napříč několika servery pro službu Azure SQL Managed Instance.
MIInstanceSize Instance Upozorňující Maximální velikost úložiště instance ve službě Azure SQL Managed Instance nemůže být větší než 8 TB.
MultipleLogFiles Databáze Problém Spravovaná instance Azure SQL nepodporuje databáze s více soubory protokolů.
Dalšísloupce Databáze Problém Tabulky a sloupce s názvem NEXT vedou k chybě ve spravované instanci Azure SQL.
NonANSILeftOuterJoinSyntax Databáze Upozorňující Levé vnější spojení bez ansi není podporováno a bylo odebráno.
NonANSIRightOuterJoinSyntax Databáze Upozorňující Pravé vnější spojení bez ANSI už není podporováno a bylo odebráno.
NumDbExceeds100 Instance Upozorňující Spravovaná instance Azure SQL podporuje maximálně 100 databází na instanci.
OpenRowsetWithNonBlobDataSourceBulk Databáze Problém OpenRowSet používaný v hromadné operaci se zdrojem dat mimo Azure Blob Storage se ve službě Azure SQL Managed Instance nepodporuje.
OpenRowsetWithNonSQLProvider Databáze Problém OpenRowSet s jiným poskytovatelem než SQL se ve službě Azure SQL Managed Instance nepodporuje.
PowerShellJob Instance Upozorňující Krok úlohy PowerShellu není ve službě Azure SQL Managed Instance podporovaný.
QueueReaderJob Instance Upozorňující Krok úlohy Čtenář fronty není ve službě Azure SQL Managed Instance podporovaný.
RAISERROR Databáze Upozorňující Starší verze volání RAISERROR by měla být nahrazena moderními ekvivalenty.
SqlMail Databáze Upozorňující Sql Mail se už nepodporuje.
SystemProcedures110 Databáze Upozorňující Zjištěné příkazy, které odkazují na odebrané systémové uložené procedury, které nejsou dostupné ve službě Azure SQL Managed Instance.
TraceFlags Instance Upozorňující Ve službě Azure SQL Managed Instance se nenašly příznaky trasování.
TransactSqlJob Instance Upozorňující Krok úlohy TSQL zahrnuje nepodporované příkazy ve službě Azure SQL Managed Instance.
WindowsAuthentication Instance Upozorňující Uživatelé databáze mapovaní pomocí ověřování Systému Windows (integrované zabezpečení) se ve službě Azure SQL Managed Instance nepodporují.
XpCmdShell Databáze Problém xp_cmdshell se ve službě Azure SQL Managed Instance nepodporuje.

Úloha AnalysisCommand

Název: Krok úlohy AnalysisCommand není ve službě Azure SQL Managed Instance podporovaný.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který spouští příkaz Analysis Services. Krok úlohy AnalysisCommand není ve službě Azure SQL Managed Instance podporovaný.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy pomocí kroku úlohy příkazu Analysis Service a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

Úloha AnalysisQuery

Název: Krok úlohy AnalysisQuery se ve službě Azure SQL Managed Instance nepodporuje.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který spouští dotaz služby Analysis Services. Krok úlohy AnalysisQuery se ve službě Azure SQL Managed Instance nepodporuje.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy pomocí kroku úlohy Analysis Service Query a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

Sestavení ze souboru

Název: Funkce CREATE ASSEMBLY a ALTER ASSEMBLY s parametrem souboru se ve službě Azure SQL Managed Instance nepodporuje.
Kategorie: Problém

Popis
Spravovaná instance Azure SQL nepodporuje CREATE ASSEMBLY ani ALTER ASSEMBLY s parametrem souboru. Podporuje se binární parametr. Konkrétní objekt, ve kterém se používá parametr souboru, najdete v části Ovlivněné objekty.

Doporučení
Zkontrolujte objekty pomocí CREATE ASSEMBLY nebo ALTER ASSEMBLY s parametrem souboru. Pokud se vyžadují nějaké takové objekty, převeďte parametr souboru na binární parametr. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly CLR ve službě Azure SQL Managed Instance

BULK INSERT

Název: FUNKCE BULK INSERT se zdrojem dat objektů blob mimo Azure není ve službě Azure SQL Managed Instance podporovaná.
Kategorie: Problém

Popis
Azure SQL Managed Instance nemá přístup ke sdíleným složkám ani složkám Windows. Konkrétní použití příkazů BULK INSERT, které neodkazují na objekty blob Azure, najdete v části Ovlivněné objekty blob. Objekty s příkazem BULK INSERT, kde zdroj není azure Blob Storage, po migraci na spravovanou instanci Azure SQL nefunguje.

Doporučení
Při migraci na spravovanou instanci Azure SQL je potřeba převést příkazy BULK INSERT, které používají místní soubory nebo sdílené složky, aby místo toho používaly soubory ze služby Azure Blob Storage.

Další informace: Rozdíly v hromadném vkládání a OPENROWSET ve službě Azure SQL Managed Instance

Zabezpečení CLR

Název: Sestavení CLR označená jako SAFE nebo EXTERNAL_ACCESS jsou považována za NEBEZPEČNÁ
Kategorie: Upozornění

Popis
Režim striktního zabezpečení CLR se vynucuje ve službě Azure SQL Managed Instance. Tento režim je ve výchozím nastavení povolený a zavádí zásadní změny pro databáze obsahující uživatelem definované sestavení CLR označené jako SAFE nebo EXTERNAL_ACCESS.

Doporučení
CLR používá v rozhraní .NET Framework zabezpečení přístupu kódu (CAS), který se už nepodporuje jako hranice zabezpečení. Počínaje databázovým strojem sp_configure SQL Serveru 2017 (14.x) se zavádí možnost s názvem clr strict security, která vylepšuje zabezpečení sestavení CLR. Ve výchozím nastavení je povolené striktní zabezpečení Clr a považuje sestavení CLR za bezpečné a EXTERNAL_ACCESS, jako by byly označeny jako NEBEZPEČNÉ. Pokud je zakázané striktní zabezpečení clr, sestavení CLR vytvořené s PERMISSION_SET = SAFE může mít přístup k externím systémovým prostředkům, volat nespravovaný kód a získat oprávnění správce systému. Po povolení striktního zabezpečení se nenačtou všechna sestavení, která nejsou podepsaná. Pokud má databáze bezpečné nebo EXTERNAL_ACCESS sestavení, příkazy RESTORE nebo ATTACH DATABASE mohou být dokončeny, ale sestavení se nemusí načíst. Chcete-li načíst sestavení, musíte buď změnit nebo odstranit a znovu vytvořit každé sestavení tak, aby bylo podepsáno certifikátem nebo asymetrickým klíčem, který má odpovídající přihlášení s oprávněním NEBEZPEČNÉ SESTAVENÍ na serveru.

Další informace: Striktní zabezpečení CLR

Klauzule COMPUTE

Název: Klauzule COMPUTE se už nepodporuje a byla odebrána.
Kategorie: Upozornění

Popis
Klauzule COMPUTE generuje součty, které se zobrazí jako další souhrnné sloupce na konci sady výsledků. Tato klauzule se už ale ve službě Azure SQL Managed Instance nepodporuje.

Doporučení
Modul T-SQL je potřeba přepsat pomocí operátoru ROLLUP. Následující kód ukazuje, jak lze výpočetní prostředky nahradit funkcí 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;

Další informace: Ukončené funkce databázového stroje na SQL Serveru

Zprostředkovatel kryptografických služeb

Název: Bylo nalezeno použití CREATE CRYPTOGRAPHIC PROVIDER nebo ALTER CRYPTOGRAPHIC PROVIDER, které není podporováno ve službě Azure SQL Managed Instance.
Kategorie: Problém

Popis
Spravovaná instance Azure SQL nepodporuje příkazy CRYPTOGRAPHIC PROVIDER, protože nemá přístup k souborům. Konkrétní použití příkazů CRYPTOGRAPHIC PROVIDER najdete v části Ovlivněné objekty. Objekty s zprostředkovatelem CREATE CRYPTOGRAPHIC nebo ALTER CRYPTOGRAPHIC PROVIDER nefungují správně po migraci na spravovanou instanci Azure SQL.

Doporučení
Zkontrolujte objekty pomocí PŘÍKAZU CREATE CRYPTOGRAPHIC PROVIDER nebo ALTER CRYPTOGRAPHIC PROVIDER. V jakýchkoli takových objektech, které jsou požadovány, odeberte použití těchto funkcí. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly mezi zprostředkovateli kryptografických služeb ve službě Azure SQL Managed Instance

Kompatibilita databází

Název: Úroveň kompatibility databáze nižší než 100 není podporována.
Kategorie: Upozornění

Popis
Úroveň kompatibility databáze je cenný nástroj, který pomáhá s modernizací databáze tím, že umožňuje upgrade databázového stroje SQL Serveru a zachování funkčního stavu aplikací udržováním stejné úrovně kompatibility před upgradem databáze. Spravovaná instance Azure SQL nepodporuje úrovně kompatibility nižší než 100. Při obnovení databáze s úrovní kompatibility nižší než 100 ve službě Azure SQL Managed Instance se úroveň kompatibility upgraduje na 100.

Doporučení
Vyhodnoťte, jestli je funkce aplikace nedotčená, pokud je úroveň kompatibility databáze upgradována na 100 ve spravované instanci Azure SQL. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Podporované úrovně kompatibility ve službě Azure SQL Managed Instance

Alias instančního objektu databáze

Název: SYS. DATABASE_PRINCIPAL_ALIASES se už nepodporuje a je odebraný.
Kategorie: Problém

Popis
SYS. DATABASE_PRINCIPAL_ALIASES se už nepodporuje a ve službě Azure SQL Managed Instance byla odebrána.

Doporučení
Místo aliasů používejte role.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

možnost DISABLE_DEF_CNST_CHK

Název: Možnost SET DISABLE_DEF_CNST_CHK již není podporována a byla odebrána.
Kategorie: Problém

Popis
Možnost SET DISABLE_DEF_CNST_CHK už není podporovaná a ve službě Azure SQL Managed Instance byla odebrána.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

FASTFIRSTROW hint

Název: Nápověda dotazu FASTFIRSTROW se už nepodporuje a byla odebrána.
Kategorie: Upozornění

Popis
Nápověda k dotazu FASTFIRSTROW se už nepodporuje a ve službě Azure SQL Managed Instance se odebrala.

Doporučení
Místo nápovědy k dotazu FASTFIRSTROW použijte OPTION (FAST n).

Další informace: Ukončené funkce databázového stroje na SQL Serveru

FILESTREAM

Název: FileSTREAM a FileTable se ve službě Azure SQL Managed Instance nepodporují.
Kategorie: Problém

Popis
Funkce FILESTREAM, která umožňuje ukládat nestrukturovaná data, jako jsou textové dokumenty, obrázky a videa v systému souborů NTFS, není ve službě Azure SQL Managed Instance podporovaná. Tuto databázi nejde migrovat, protože zálohování obsahující skupiny souborů FILESTREAM nejde obnovit ve službě Azure SQL Managed Instance.

Doporučení
Nahrajte nestrukturované soubory do služby Azure Blob Storage a uložte metadata související s těmito soubory (název, typ, umístění adresy URL, klíč úložiště atd.) ve službě Azure SQL Managed Instance. Možná budete muset znovu provést analýzu aplikace, abyste umožnili streamování objektů blob do a z Azure SQL Managed Instance. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Streamování objektů blob do a z blogu SQL Azure

Heterogenní MS DTC

Název: FUNKCE BEGIN DISTRIBUTED TRANSACTION with non-SQL Server remote server is not supported in Azure SQL Managed Instance.
Kategorie: Problém

Popis
Distribuovaná transakce spuštěná službou Transact SQL BEGIN DISTRIBUTED TRANSACTION a spravovaná koordinátorem distribuovaných transakcí (MS DTC) není ve službě Azure SQL Managed Instance podporovaná, pokud vzdálený server není SQL Server.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny objekty pomocí FUNKCE BEGIN DISTRUBUTED TRANSACTION. Zvažte migraci databází účastníků do spravované instance Azure SQL, kde se podporují distribuované transakce napříč několika instancemi. Další informace najdete v tématu Transakce napříč několika servery pro službu Azure SQL Managed Instance.

Případně migrujte na SQL Server na virtuálním počítači Azure.

Homogenní MS DTC

Název: FUNKCE BEGIN DISTRIBUTED TRANSACTION se podporuje napříč několika servery pro službu Azure SQL Managed Instance.
Kategorie: Problém

Popis
Distribuovaná transakce spuštěná jazykem Transact SQL BEGIN DISTRIBUTED TRANSACTION a spravovaná koordinátorem distribuovaných transakcí (MS DTC) je podporována na více serverech pro službu Azure SQL Managed Instance.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny objekty pomocí FUNKCE BEGIN DISTRUBUTED TRANSACTION. Zvažte migraci databází účastníků do spravované instance Azure SQL, kde se podporují distribuované transakce napříč několika instancemi. Další informace najdete v tématu Transakce napříč několika servery pro službu Azure SQL Managed Instance.

Případně migrujte na SQL Server na virtuálním počítači Azure.

Odkazovaný server (jiný poskytovatel než SQL)

Název: Propojený server s jiným poskytovatelem než SQL Server není podporován ve službě Azure SQL Managed Instance.
Kategorie: Problém

Popis
Propojené servery umožňují databázovému stroji SQL Serveru spouštět příkazy pro zdroje dat OLE DB mimo instanci SQL Serveru. Propojený server s jiným poskytovatelem než SQL Server není ve službě Azure SQL Managed Instance podporovaný.

Doporučení
Spravovaná instance Azure SQL nepodporuje funkci propojeného serveru, pokud je vzdálený poskytovatel serveru jiný než SQL Server, jako je Oracle, Sybase atd.

Pokud chcete eliminovat potřebu propojených serverů, doporučujeme následující akce:

  • Identifikujte závislé databáze ze vzdálených serverů, které nejsou SQL, a zvažte jejich přesun do migrované databáze.
  • Migrujte závislé databáze do podporovaných cílů, jako je SQL Managed Instance, SQL Database, Azure Synapse a instance SQL Serveru.
  • Zvažte vytvoření propojeného serveru mezi spravovanou instancí Azure SQL a SQL Serverem na virtuálním počítači Azure (virtuální počítač SQL). Pak z virtuálního počítače SQL vytvořte odkazovaný server na Oracle, Sybase atd. Tento přístup zahrnuje dva segmenty směrování, ale můžete ho použít jako dočasné alternativní řešení.
  • Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly v propojených serverech ve službě Azure SQL Managed Instance

Úloha sloučení

Název: Krok úlohy sloučení není ve službě Azure SQL Managed Instance podporovaný.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který aktivuje agenta sloučení replikace. Agent pro sloučení replikace je spustitelný soubor nástroje, který použije počáteční snímek uložený v databázových tabulkách na odběratele. Sloučí také přírůstkové změny dat, ke kterým došlo v Publisheru po vytvoření počátečního snímku, a sloučí konflikty podle pravidel, která nakonfigurujete, nebo pomocí vlastního překladače, který vytvoříte. Krok úlohy sloučení není ve službě Azure SQL Managed Instance podporovaný.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy pomocí kroku úlohy sloučení a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

Velikost databáze MI

Název: Azure SQL Managed Instance nepodporuje velikost databáze větší než 16 TB.
Kategorie: Problém

Popis
Velikost databáze je větší než maximální rezervované úložiště instance. Tuto databázi nejde vybrat pro migraci, protože velikost překročila povolený limit.

Doporučení
Vyhodnoťte, jestli se data dají archivovat komprimovaná nebo horizontálně dělit do více databází. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Vlastnosti hardwaru spravované instance Azure SQL

Velikost instance MI

Název: Maximální velikost úložiště instance ve službě Azure SQL Managed Instance nesmí být větší než 8 TB.
Kategorie: Upozornění

Popis
Velikost všechdatabázíchch

Doporučení
Pokud všechny databáze musí existovat ve stejné instanci, zvažte migraci databází do různých spravovaných instancí Azure NEBO na SQL Server na virtuálním počítači Azure.

Další informace: Vlastnosti hardwaru spravované instance Azure SQL

Více souborů protokolu

Název: Azure SQL Managed Instance nepodporuje více souborů protokolu.
Kategorie: Problém

Popis
SQL Server umožňuje databázi protokolovat do více souborů. Tato databáze obsahuje několik souborů protokolu, které se ve službě Azure SQL Managed Instance nepodporují. **Tuto databázi nejde migrovat, protože zálohu nejde obnovit ve službě Azure SQL Managed Instance.
**

Doporučení
Spravovaná instance Azure SQL podporuje pouze jeden protokol na databázi. Před migrací této databáze do Azure musíte odstranit všechny soubory protokolu kromě jednoho z nich:

ALTER DATABASE [database_name] REMOVE FILE [log_file_name]

Další informace: Nepodporované možnosti databáze ve službě Azure SQL Managed Instance

Další sloupec

Název: Tabulky a sloupce s názvem NEXT způsobí chybu ve spravované instanci Azure SQL.
Kategorie: Problém

Popis
Byly zjištěny tabulky nebo sloupce s názvem NEXT. Sekvence, představené v Microsoft SQL Serveru, používají funkci NEXT VALUE FOR standard ANSI. Tabulky nebo sloupce s názvem NEXT a column aliased as VALUE with the ANSI standard AS vynechána může způsobit chybu.

Doporučení
Přepište příkazy tak, aby zahrnovaly standardní klíčové slovo AS ANSI při aliasování tabulky nebo sloupce. Pokud je například sloupec s názvem NEXT a tento sloupec je aliasem HODNOTA, dotaz SELECT NEXT VALUE FROM TABLE způsobí chybu a měl by se přepsat jako SELECT NEXT AS VALUE FROM TABLE. Podobně u tabulky s názvem NEXT a aliasem VALUE způsobí dotaz SELECT Col1 FROM NEXT VALUE chybu a měl by se přepsat jako SELECT Col1 FROM NEXT AS VALUE.

Styl bez ANSI levé vnější spojení

Název: Levé vnější spojení bez ANSI už není podporováno a bylo odebráno.
Kategorie: Upozornění

Popis
Levé vnější spojení bez ANSI se už nepodporuje a ve službě Azure SQL Managed Instance se odebralo.

Doporučení
Použijte syntaxi spojení ANSI.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

Bez ansi stylu pravé vnější spojení

Název: Pravé vnější spojení bez ANSI už není podporováno a bylo odebráno.
Kategorie: Upozornění

Popis
Pravé vnější spojení bez ANSI se už nepodporuje a ve službě Azure SQL Managed Instance se odebralo.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

Doporučení
Použijte syntaxi spojení ANSI.

Databáze překračují 100

Název: Azure SQL Managed Instance podporuje maximálně 100 databází na instanci.
Kategorie: Upozornění

Popis
Maximální počet databází podporovaných ve službě Azure SQL Managed Instance je 100, pokud nedošlo k dosažení limitu velikosti úložiště instance.

Doporučení
Pokud všechny databáze musí existovat ve stejné instanci, zvažte migraci databází do různých spravovaných instancí Azure NEBO na SQL Server na virtuálním počítači Azure.

Další informace: Omezení prostředků služby Azure SQL Managed Instance

OPENROWSET (zdroj dat bez objektu blob)

Název: OpenRowSet používaný v hromadné operaci se zdrojem dat mimo Azure Blob Storage se ve spravované instanci Azure SQL nepodporuje.
Kategorie: Problém

Popis
OPENROWSET podporuje hromadné operace prostřednictvím integrovaného zprostředkovatele BULK, který umožňuje čtení a vracení dat ze souboru jako sadu řádků. OpenROWSET se zdrojem dat mimo Azure Blob Storage není ve službě Azure SQL Managed Instance podporovaná.

Doporučení
Spravovaná instance Azure SQL nemá přístup ke sdíleným složkám a složkám Windows, takže soubory se musí importovat ze služby Azure Blob Storage. Proto je ve funkci OPENROWSET podporován pouze typ objektu blob DATASOURCE. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly v hromadném vkládání a OPENROWSET ve službě Azure SQL Managed Instance

OPENROWSET (poskytovatel bez SQL)

Název: OpenRowSet s jiným poskytovatelem než SQL se ve službě Azure SQL Managed Instance nepodporuje.
Kategorie: Problém

Popis
Tato metoda je alternativou pro přístup k tabulkám na propojeném serveru a jedná se o jednorázovou metodu připojení a přístupu ke vzdáleným datům pomocí OLE DB. OpenRowSet s jiným poskytovatelem než SQL se ve službě Azure SQL Managed Instance nepodporuje.

Doporučení
Funkci OPENROWSET je možné použít ke spouštění dotazů pouze v instancích SQL Serveru (spravovaných, místních nebo virtuálních počítačích). Poskytovatelé SQLNCLI, SQLNCLI11, SQLOLEDBa MSOLEDBSQL (doporučeno) jsou podporovány. Pro nový vývoj se doporučuje ovladač Microsoft OLE DB (MSOLEDBSQL) pro SQL Server .

Tato akce doporučení spočívá v identifikaci závislých databází ze vzdálených serverů, které nejsou sql servery, a zvažte jejich přesun do migrované instance.

Další informace: Rozdíly v hromadném vkládání a OPENROWSET ve službě Azure SQL Managed Instance

Úloha PowerShellu

Název: Krok úlohy PowerShellu není ve službě Azure SQL Managed Instance podporovaný.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který spouští skript PowerShellu. Krok úlohy PowerShellu není ve službě Azure SQL Managed Instance podporovaný.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy pomocí kroku úlohy PowerShellu a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Vyhodnoťte, jestli je možné použít Službu Azure Automation. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

Úloha čtenáře fronty

Název: Krok úlohy Čtenář fronty není ve službě Azure SQL Managed Instance podporovaný.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který aktivuje agenta čtenáře fronty replikace. Agent čtenáře fronty replikace je spustitelný soubor, který čte zprávy uložené ve frontě microsoft SQL Serveru nebo frontě zpráv společnosti Microsoft a potom tyto zprávy použije na vydavatele. Agent čtenáře fronty se používá se snímkovými a transakčními publikacemi, které umožňují aktualizaci ve frontě. Krok úlohy Čtenář fronty není ve službě Azure SQL Managed Instance podporovaný.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy pomocí kroku úlohy Čtenář fronty a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

RAISERROR

Název: Volání RAISERROR starší verze by měla být nahrazena moderními ekvivalenty.
Kategorie: Upozornění

Popis
Volání RAISERROR jako v následujícím příkladu se označují jako starší verze, protože neobsahují čárky a závorky. RAISERROR 50001 'this is a test'. Tato metoda volání FUNKCE RAISERROR se už nepodporuje a odebere ve spravované instanci Azure SQL.

Doporučení
Přepište příkaz pomocí aktuální syntaxe RAISERROR nebo vyhodnoťte, jestli je moderní přístup BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH proveditelný.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

Pošta SQL

Název: Pošta SQL už není podporovaná.
Kategorie: Upozornění

Popis
Pošta SQL už není ve spravované instanci Azure SQL podporovaná a odebraná.

Doporučení
Použijte Databázová pošta.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

SystemProcedures110

Název: Zjištěné příkazy, které odkazují na odebrané systémové uložené procedury, které nejsou dostupné ve službě Azure SQL Managed Instance.
Kategorie: Upozornění

Popis
Následující nepodporované systémové a rozšířené uložené procedury nelze použít ve službě Azure SQL Managed Instance – sp_dboption, sp_addserver, sp_dropaliassp_activedirectory_obj, , sp_activedirectory_scpa sp_activedirectory_start.

Doporučení
Odeberte odkazy na nepodporované systémové procedury, které byly odebrány ve službě Azure SQL Managed Instance.

Další informace: Ukončené funkce databázového stroje na SQL Serveru

Úloha Transact-SQL

Název: Krok úlohy TSQL zahrnuje nepodporované příkazy ve službě Azure SQL Managed Instance.
Kategorie: Upozornění

Popis
Jedná se o krok úlohy, který spouští skripty Jazyka Transact-SQL v naplánovaném čase. Krok úlohy TSQL zahrnuje nepodporované příkazy, které nejsou podporované ve službě Azure SQL Managed Instance.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny úlohy, které obsahují nepodporované příkazy ve službě Azure SQL Managed Instance, a vyhodnoťte, jestli je možné odebrat krok úlohy nebo ovlivněný objekt. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly agenta SQL Serveru ve službě Azure SQL Managed Instance

Příznaky trasování

Název: Byly nalezeny příznaky trasování, které se ve službě Azure SQL Managed Instance nepodporují.
Kategorie: Upozornění

Popis
Spravovaná instance Azure SQL podporuje pouze omezený počet globálních příznaků trasování. Příznaky trasování relace se nepodporují.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte všechny příznaky trasování, které nejsou ve spravované instanci Azure SQL podporované, a vyhodnoťte, jestli se dají odebrat. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Příznaky trasování

Ověřování systému Windows

Název: Uživatelé databáze mapovaní pomocí ověřování Systému Windows (integrované zabezpečení) se ve službě Azure SQL Managed Instance nepodporují.
Kategorie: Upozornění

Popis
Spravovaná instance Azure SQL podporuje dva typy ověřování:

  • Ověřování SQL, které používá uživatelské jméno a heslo.
  • Ověřování Microsoft Entra, které používá identity spravované pomocí Microsoft Entra ID (dříve Azure Active Directory) a je podporováno pro spravované a integrované domény.

Uživatelé databáze mapovaní pomocí ověřování Systému Windows (integrované zabezpečení) se ve službě Azure SQL Managed Instance nepodporují.

Doporučení
Federujte místní službu Active Directory s ID Microsoft Entra. Identitu systému Windows pak můžete nahradit ekvivalentními identitami Microsoft Entra. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Možnosti zabezpečení služby SQL Managed Instance

Xp_cmdshell

Název: xp_cmdshell Ve službě Azure SQL Managed Instance se nepodporuje.
Kategorie: Problém

Popis
Xp_cmdshell, který vytváří příkazové prostředí Windows a předává řetězec ke spuštění, se ve spravované instanci Azure SQL nepodporuje.

Doporučení
V části Ovlivněné objekty ve službě Azure Migrate zkontrolujte, jestli se všechny objekty používají xp_cmdshell , a vyhodnocujte, jestli je možné odebrat odkaz na xp_cmdshell objekt nebo ovlivněný objekt. Zvažte prozkoumání služby Azure Automation, která poskytuje cloudovou automatizaci a konfigurační službu. Případně migrujte na SQL Server na virtuálním počítači Azure.

Další informace: Rozdíly uložených procedur ve službě Azure SQL Managed Instance