Rozdíly v SQL mezi SQL Server & spravovanou instancí Azure SQL
platí pro:
spravovaná Instance Azure SQL
Tento článek shrnuje a vysvětluje rozdíly v syntaxi a chování mezi službami Azure SQL Managed Instance a SQL Server.
SQL Managed Instance poskytuje vysokou kompatibilitu s databázovým strojem SQL Server a většina funkcí je podporována ve spravované instanci SQL systému.

Existují určitá omezení PaaS, která jsou zavedená ve spravované instanci SQL, a některé změny chování v porovnání s SQL Server. Rozdíly jsou rozdělené do následujících kategorií:
- Dostupnost zahrnuje rozdíly ve skupinách dostupnosti Always On a zálohách.
- Zabezpečení zahrnuje rozdíly v auditování,certifikátech, přihlašovacích údajůch,zprostředkovatelích kryptografických služeb, přihlašovánía uživatelích a klíč služby a hlavní klíč služby.
- Konfigurace zahrnuje rozdíly mezi rozšířením fonduvyrovnávacích pamětí, kolací,úrovněmi kompatibility, zrcadlením databáze,možnostmi databáze, SQL Server agentema možnostmi tabulky.
- Mezi funkce patří BULK INSERT/OPENROWSET, CLR, DBCC,distribuované transakce,rozšířené události,externí knihovny ,filestream a FileTable, fulltextovésémantické vyhledávání,odkazované servery, PolyBase, replikace, RESTORE, Service Broker, uložené procedury, funkce a triggery.
- Nastavení prostředí, jako jsou virtuální sítě a konfigurace podsítí.
Většina z těchto funkcí představuje architektonická omezení a představuje funkce služby.
Dočasné známé problémy, které jsou zjištěny SQL spravované instanci a budou vyřešeny v budoucnu, jsou popsány v článku Co je nového?.
Dostupnost
Skupiny dostupnosti Always On
Vysoká dostupnost je integrovaná SQL spravované instanci a uživatelé ji nespravovat. Následující příkazy nejsou podporovány:
- CREATE ENDPOINT ... PRO DATABASE_MIRRORING
- VYTVOŘENÍ SKUPINY DOSTUPNOSTI
- ALTER AVAILABILITY GROUP
- DROP AVAILABILITY GROUP
- Klauzule SET HADR příkazu ALTER DATABASE
Backup
SQL managed instance má automatické zálohy, takže uživatelé mohou vytvářet úplné COPY_ONLY zálohy databáze. Rozdílové zálohování, zálohování protokolů a snímků souborů se nepodporuje.
- V případě SQL spravované instance můžete zálohovat databázi instance pouze do účtu úložiště objektů blob v Azure:
- Podporuje
BACKUP TO URLse pouze . FILEZálohovací zařízení , aTAPEse nepodporují.
- Podporuje
- Většina obecných
WITHmožností je podporována.COPY_ONLYje povinné.FILE_SNAPSHOTse nepodporuje.- Možnosti pásky: , , a
REWINDNOREWINDnejsouUNLOADNOUNLOADpodporovány. - Možnosti specifické pro protokol: , a
NORECOVERYSTANDBYseNO_TRUNCATEnepodporují.
Omezení:
Se spravovanou instancí SQL můžete zálohovat databázi instance do zálohy s až 32 pruhy, což je dostačující pro databáze až 4 TB, pokud se používá komprese záloh.
U databáze, která je šifrovaná pomocí služby spravované služby, se ne
BACKUP DATABASE ... WITH COPY_ONLYtransparentní šifrování dat (TDE). TDE spravované službou vynutí šifrování záloh pomocí interního klíče TDE. Klíč není možné exportovat, takže zálohu nemůžete obnovit. Použijte automatické zálohování a obnovení k bodu v čase nebo místo toho použijte TDE spravované zákazníkem (BYOK). Můžete také zakázat šifrování databáze.Nativní zálohy pořízené ve spravované instanci není možné obnovit do SQL Server. Je to proto, že spravovaná instance má vyšší verzi interní databáze ve srovnání s jakoukoli SQL Server.
Pokud chcete zálohovat nebo obnovit databázi do a z úložiště Azure, je potřeba vytvořit sdílený přístupový podpis (SAS) identifikátor URI, který vám uděluje omezená přístupová práva k prostředkům Azure Storage Další informace o tomto tématu. Použití přístupových klíčů pro tyto scénáře se nepodporuje.
Maximální velikost prokládaného zálohování pomocí příkazu v SQL Managed Instance je
BACKUP195 GB, což je maximální velikost objektu blob. Zvýšením počtu pruhů v příkazu pro zálohování zmenšete velikost jednotlivých pruhů a zůstaňte v tomto limitu.Tip
Pokud chcete toto omezení obejít, můžete při zálohování databáze SQL Server v místním prostředí nebo na virtuálním počítači:
- Zálohování na
DISKmísto zálohování doURL. - Upload záložní soubory do úložiště objektů blob.
- Obnovte do SQL spravované instance.
Příkaz ve spravované SQL podporuje větší velikosti objektů blob v záložních souborech, protože pro ukládání nahraných záložních souborů se používá
Restorejiný typ objektu blob.- Zálohování na
Informace o zálohování pomocí T-SQL v tématu ZÁLOHOVÁNÍ.
Zabezpečení
Auditování
Mezi hlavní rozdíly mezi auditování v Microsoft Azure SQL a v SQL Server jsou:
- V SQL spravované instanci funguje auditování na úrovni serveru. Soubory
.xelprotokolu se ukládají v úložišti objektů blob v Azure. - Při Azure SQL Database funguje auditování na úrovni databáze. Soubory
.xelprotokolu se ukládají v úložišti objektů blob v Azure. - Díky SQL Server, místnímu prostředí nebo virtuálním počítačům funguje auditování na úrovni serveru. Události se ukládají v systému souborů nebo Windows protokolů událostí.
Auditování XEvent ve spravované instanci SQL podporuje cíle služby Azure Blob Storage. Soubory a Windows se nepodporují.
Hlavní rozdíly v CREATE AUDIT syntaxi pro auditování do služby Azure Blob Storage jsou následující:
- K dispozici je nová syntaxe, kterou můžete použít k zadání adresy URL kontejneru
TO URLúložiště objektů blob v Azure, kam se soubory.xelumístí. - Syntaxe není podporovaná, protože SQL instance nemá přístup ke Windows
TO FILEsdílených složek.
Další informace naleznete v tématu:
Certifikáty
SQL spravovaná instance nemůže přistupovat ke složkám souborů a Windows, takže platí následující omezení:
- Tento
CREATE FROM/BACKUP TOsoubor není podporovaný pro certifikáty. - Certifikát
CREATE/BACKUPzFILE/ASSEMBLYse nepodporuje. Soubory privátních klíčů nelze použít.
Viz CREATE CERTIFICATE and BACKUP CERTIFICATE.
Alternativní řešení: Místo vytvoření zálohy certifikátu a obnovení zálohy získejte binární obsah certifikátu a privátní klíč, uložte ho jako soubor .sql a vytvořte ho z binárního souboru:
CREATE CERTIFICATE
FROM BINARY = asn_encoded_certificate
WITH PRIVATE KEY (<private_key_options>)
Přihlašovací údaj
Podporují Azure Key Vault SHARED ACCESS SIGNATURE a identity. Windows uživatelé nejsou podporováni.
Viz CREATE CREDENTIAL a ALTER CREDENTIAL.
Zprostředkovatelé kryptografických služeb
SQL Managed Instance nemůže získat přístup k souborům, takže není možné vytvořit zprostředkovatele kryptografických služeb:
CREATE CRYPTOGRAPHIC PROVIDERse nepodporuje. Viz VYTVOŘENÍ ZPROSTŘEDKOVATELE KRYPTOGRAFICKÝCH SLUŽEB.ALTER CRYPTOGRAPHIC PROVIDERse nepodporuje. Viz ALTER CRYPTOGRAPHIC PROVIDER.
Přihlášení a uživatelé
SQL přihlášení vytvořená pomocí
FROM CERTIFICATE,FROM ASYMMETRIC KEYa jsouFROM SIDpodporovaná. Viz CREATE LOGIN.Azure Active Directory (přihlášení) serveru Azure AD vytvořené pomocí syntaxe CREATE LOGIN nebo syntaxe CREATE USER FROM LOGIN [přihlášení Azure AD]. Tato přihlášení se vytvářejí na úrovni serveru.
SQL Managed Instance podporuje objekty zabezpečení databáze Azure AD se syntaxí
CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDER. Tato funkce se také označuje jako uživatelé databáze s obsažené službou Azure AD.Windows přihlášení vytvořená pomocí
CREATE LOGIN ... FROM WINDOWSsyntaxe se nepodporují. Použijte Azure Active Directory přihlášení a uživatele.Správce Azure AD pro instanci má neomezená oprávnění správce.
Uživatele na úrovni databáze Azure AD bez oprávnění správce je možné vytvořit pomocí
CREATE USER ... FROM EXTERNAL PROVIDERsyntaxe . Viz CREATE USER... Z EXTERNÍHO POSKYTOVATELE.Objekty zabezpečení serveru Azure AD (přihlášení) podporují SQL v rámci jedné SQL spravované instance. Funkce, které vyžadují interakci mezi instancemi bez ohledu na to, jestli jsou ve stejném tenantovi Azure AD nebo v různých tenantech, nejsou pro uživatele Azure AD podporované. Příklady takových funkcí:
- SQL transakční replikace.
- Odkazový server.
Nastavení přihlášení Azure AD namapovaného na skupinu Azure AD jako vlastníka databáze se nepodporuje. Členem skupiny Azure AD může být vlastník databáze, i když v databázi nebylo vytvořeno přihlášení.
Zosobnění objektů zabezpečení na úrovni serveru Azure AD pomocí jiných objektů zabezpečení Služby Azure AD se podporuje, například klauzule EXECUTE AS. Omezení funkce EXECUTE AS:
Funkce EXECUTE AS USER se pro uživatele Azure AD nepodporuje, pokud se název liší od přihlašovacího jména. Příkladem je vytvoření uživatele pomocí syntaxe CREATE USER [myAadUser] FROM LOGIN [ ] a pokus o zosobnění prostřednictvím příkazu john@contoso.com EXEC AS USER = myAadUser. Při vytváření uživatele z objektu zabezpečení (přihlášení) serveru Azure AD zadejte user_name jako stejný login_name login.
Pouze SQL Server úrovni zabezpečení (přihlášení), které jsou součástí role, mohou provádět následující operace,
sysadminkteré cílí na objekty zabezpečení Azure AD:- SPUSTIT JAKO UŽIVATEL
- SPUSTIT JAKO PŘIHLÁŠENÍ
Pokud chcete zosobnit uživatele pomocí příkazu EXECUTE AS, musí být uživatel namapovaný přímo na objekt zabezpečení serveru Azure AD (přihlášení). Uživatelé, kteří jsou členy skupin Azure AD namapovaných na objekty zabezpečení serveru Azure AD, nelze efektivně zosobnit příkazem EXECUTE AS, i když má volající oprávnění zosobnit zadané uživatelské jméno.
Export a import databáze pomocí souborů bacpac se podporuje pro uživatele Azure AD ve spravované instanci nástroje SQL pomocí SSMS verze 18.4nebo novější neboSQLPackage.exe.
- Při použití souboru bacpac databáze se podporují následující konfigurace:
- Export a import databáze mezi různými instancemi správy v rámci stejné domény Azure AD
- Export databáze ze spravované SQL a import do SQL Database v rámci stejné domény Azure AD.
- Exportujte databázi z SQL Database a importujte do SQL instance v rámci stejné domény Azure AD.
- Export databáze ze spravované SQL a import do SQL Server (verze 2012 nebo novější).
- V této konfiguraci se všichni uživatelé Azure AD vytvářejí SQL Server objektů zabezpečení databáze (uživatelů) bez přihlášení. Typ uživatelů je uveden jako a
SQLje viditelný jako vSQL_USERsys.database_principals). Jejich oprávnění a role zůstanou v SQL Server metadatech databáze a lze je použít k zosobnění. Nelze je ale použít pro přístup k serveru a přihlášení k SQL Server pomocí svých přihlašovacích údajů.
- V této konfiguraci se všichni uživatelé Azure AD vytvářejí SQL Server objektů zabezpečení databáze (uživatelů) bez přihlášení. Typ uživatelů je uveden jako a
- Při použití souboru bacpac databáze se podporují následující konfigurace:
Pouze hlavní přihlášení na úrovni serveru, které je vytvořené procesem zřizování spravované instance SQL, členy rolí serveru, jako jsou nebo , nebo jiná přihlášení s oprávněním ALTER ANY LOGIN na úrovni serveru, mohou vytvářet objekty zabezpečení serveru
securityadminAzure AD (přihlášení) v hlavní databázi pro spravovanou instancisysadminSQL.Pokud je přihlášení objektem SQL, mohou k vytvoření přihlášení pro účet Azure AD použít příkaz create, pouze přihlášení, která jsou součástí
sysadmintéto role.Přihlášení k Azure AD musí být členem Azure AD v rámci stejného adresáře, který se používá pro Azure SQL Managed Instance.
Objekty zabezpečení (přihlášení) serveru Azure AD jsou viditelné v Průzkumník objektů počínaje SQL Server Management Studio verze 18.0 Preview 5.
Po povolení objektu zabezpečení serveru s úrovní přístupu správce systému se pro účet správce Azure AD automaticky vytvoří objekt zabezpečení.
Během ověřování se k vyřešení ověřovacího objektu zabezpečení použije následující posloupnost:
- Pokud účet Azure AD existuje jako přímo mapovaný na objekt zabezpečení serveru Azure AD (přihlášení), který se nachází v sys.server_principals jako typ "E", udělte přístup a použijte oprávnění objektu zabezpečení serveru Azure AD (přihlášení).
- Pokud je účet Azure AD členem skupiny Azure AD, která je namapovaná na objekt zabezpečení serveru Azure AD (přihlášení), který se nachází v sys.server_principals jako typ "X", udělte přístup a použijte oprávnění pro přihlášení skupiny Azure AD.
- Pokud účet Azure AD existuje jako přímo mapovaný na uživatele Azure AD v databázi, která se nachází v sys.database_principals jako typ "E", udělte přístup a použijte oprávnění uživatele databáze Azure AD.
- Pokud je účet Azure AD členem skupiny Azure AD, která je namapovaná na uživatele Azure AD v databázi, která se nachází v souboru sys.database_principals jako typ "X", udělte přístup a použijte oprávnění uživatele skupiny Azure AD.
Klíč služby a hlavní klíč služby
- Zálohování hlavního klíče se nepodporuje (spravované SQL Database službou).
- Obnovení hlavního klíče se nepodporuje (spravované SQL Database službou).
- Zálohování hlavního klíče služby se nepodporuje (spravované SQL Database službou).
- Obnovení hlavního klíče služby se nepodporuje (spravované SQL Database službou).
Konfigurace
Rozšíření fondu vyrovnávacích pamětí
- Rozšíření fondu vyrovnávacích pamětí se nepodporuje.
ALTER SERVER CONFIGURATION SET BUFFER POOL EXTENSIONse nepodporuje. Viz ALTER SERVER CONFIGURATION.
Kolace
Výchozí kolace instance je a SQL_Latin1_General_CP1_CI_AS lze ji zadat jako parametr vytvoření. Viz Kolace.
Úrovně kompatibility
- Podporované úrovně kompatibility jsou 100, 110, 120, 130, 140 a 150.
- Úrovně kompatibility nižší než 100 se nepodporují.
- Výchozí úroveň kompatibility pro nové databáze je 140. U obnovených databází zůstane úroveň kompatibility beze změny, pokud byla 100 a vyšší.
Viz ALTER DATABASE Compatibility Level.
Zrcadlení databáze
Zrcadlení databáze se nepodporuje.
ALTER DATABASE SET PARTNERMožnostiSET WITNESSa nejsou podporované.CREATE ENDPOINT … FOR DATABASE_MIRRORINGse nepodporuje.
Další informace najdete v tématu ALTER DATABASE SET PARTNER a SET WITNESS a CREATE ENDPOINT... PRO DATABASE_MIRRORING.
Možnosti databáze
- Více souborů protokolu není podporováno.
- Objekty v paměti nejsou podporované v Pro obecné účely služby.
- Existuje limit 280 souborů na jednu instanci Pro obecné účely, což znamená maximálně 280 souborů na databázi. Do tohoto limitu se započítávají datové i protokolové Pro obecné účely úrovni úložiště. Úroveň Pro důležité obchodní informace podporuje 32 767 souborů na databázi.
- Databáze nemůže obsahovat skupiny souborů, které obsahují data streamu souboru. Obnovení selže, pokud soubor .bak obsahuje
FILESTREAMdata. - Každý soubor je umístěný v Úložišti objektů blob v Azure. V/V a propustnost na soubor závisí na velikosti jednotlivých souborů.
Příkaz CREATE DATABASE
Pro platí následující CREATE DATABASE omezení:
Soubory a skupiny souborů není možné definovat.
Tato
CONTAINMENTmožnost není podporovaná.WITHmožnosti nejsou podporované.Tip
Alternativním řešením je nastavit možnosti databáze pro přidání souborů nebo jejich zadržování pomocí
ALTER DATABASECREATE DATABASEmožnosti po .Tato
FOR ATTACHmožnost není podporovaná.Tato
AS SNAPSHOT OFmožnost není podporovaná.
Další informace najdete v tématu CREATE DATABASE.
Příkaz ALTER DATABASE
Některé vlastnosti souboru není možné nastavit ani změnit:
- V příkazu T-SQL nelze
ALTER DATABASE ADD FILE (FILENAME='path')zadat cestu k souboru. OdeberteFILENAMEskript, protože SQL Managed Instance automaticky umístí soubory. - Název souboru nelze změnit pomocí
ALTER DATABASEpříkazu .
Následující možnosti jsou ve výchozím nastavení nastavené a nelze je změnit:
MULTI_USERENABLE_BROKERAUTO_CLOSE OFF
Následující možnosti není možné upravit:
AUTO_CLOSEAUTOMATIC_TUNING(CREATE_INDEX=ON|OFF)AUTOMATIC_TUNING(DROP_INDEX=ON|OFF)DISABLE_BROKEREMERGENCYENABLE_BROKERFILESTREAMHADRNEW_BROKEROFFLINEPAGE_VERIFYPARTNERREAD_ONLYRECOVERY BULK_LOGGEDRECOVERY_SIMPLEREMOTE_DATA_ARCHIVERESTRICTED_USERSINGLE_USERWITNESS
Některé ALTER DATABASE příkazy (například SET CONTAINMENT) můžou přechodně selhat, například během automatizovaného zálohování databáze nebo hned po vytvoření databáze. V tomto případě ALTER DATABASE by se měl zopakovat příkaz . Další informace o souvisejících chybových zprávách najdete v části Poznámky.
Další informace najdete v tématu ALTER DATABASE.
SQL Server Agent
- Povolení a zakázání SQL Server agentů se ve spravované instanci SQL nepodporuje. Agent SQL je vždy spuštěný.
- Trigger plánu úlohy na základě nečinného procesoru se nepodporuje.
- SQL Server agentů jsou jen pro čtení. Tento
sp_set_agent_propertiespostup se ve spravované instanci SQL nepodporuje. - Úlohy
- Podporované SQL úlohy T-SQL.
- Podporují se následující úlohy replikace:
- Čtečka transakčních protokolů
- Snímek
- Distributor
- Podporují se kroky úlohy SSIS.
- Jiné typy kroků úloh se v současné době nepodporují:
- Krok úlohy slučovací replikace není podporován.
- Čtečka front není podporovaná.
- Příkazové prostředí se zatím nepodporuje.
- SQL spravovaná instance nemůže přistupovat k externím prostředkům, například ke síťovým sdílením přes robocopy.
- SQL Server Analysis Services se nepodporuje.
- Oznámení jsou částečně podporována.
- E-mailová oznámení jsou podporovaná, ale vyžaduje konfiguraci Databázová pošta profilu. SQL Server Agent může používat pouze jeden Databázová pošta profilu a musí se nazývat
AzureManagedInstance_dbmail_profile.- Pager se nepodporuje.
- NetSend se nepodporuje.
- Výstrahy se zatím nepodporují.
- Nejsou podporované pro.
- Protokol událostí se nepodporuje.
- Uživatel musí být přímo namapovaný na objekt zabezpečení serveru Azure AD (přihlášení), aby mohl vytvářet, upravovat nebo spouštět SQL agentů. Uživatelé, kteří nejsou přímo namapované, například uživatelé, kteří patří do skupiny Azure AD s právy k vytváření, úpravám nebo spouštění úloh agenta SQL, nebudou moct tyto akce efektivně provádět. Je to kvůli omezením zosobnění spravované instance a příkazu EXECUTE AS.
- Funkce správy více serverů pro hlavní/cílové úlohy (MSX/TSX) není podporována.
Informace o agentovi SQL Server najdete v tématu SQL Server Agent.
Tabulky
Následující typy tabulek se nepodporují:
- FILESTREAM
- TABULKA SOUBORŮ
- EXTERNAL TABLE (PolyBase)
- MEMORY_OPTIMIZED (nepodporuje se pouze ve Pro obecné účely vrstvě)
Informace o vytváření a změně tabulek najdete v tématu CREATE TABLE a ALTER TABLE.
Funkce
Hromadné vložení / OPENROWSET
SQL Managed Instance nemůže přistupovat ke složkám souborů a Windows složkám, takže se soubory musí importovat z Úložiště objektů blob v Azure:
DATASOURCEpři importu souborů ze služby Azure Blob Storage se vyžadujeBULK INSERTpříkaz . Viz BULK INSERT.DATASOURCEse ve funkciOPENROWSETvyžaduje při čtení obsahu souboru z úložiště objektů blob v Azure. Viz OPENROWSET.OPENROWSETmůžete použít ke čtení dat z Azure SQL Database, Azure SQL Managed Instance nebo SQL Server instancí. Jiné zdroje, jako jsou databáze Oracle nebo Excel soubory, se nepodporují.
CLR
Spravovaná SQL instance nemůže přistupovat ke sdílených složkám a Windows složkám, takže platí následující omezení:
- Podporuje
CREATE ASSEMBLY FROM BINARYse pouze . Viz VYTVOŘENÍ SESTAVENÍ Z BINÁRNÍHO SOUBORU. CREATE ASSEMBLY FROM FILEse nepodporuje. Viz CREATE ASSEMBLY FROM FILE.ALTER ASSEMBLYnemůže odkazovat na soubory. Viz ALTER ASSEMBLY.
Databázová pošta (db_mail)
sp_send_dbmailnemůže odesílat přílohy pomocí @file_attachments parametru . Místní systém souborů a externí sdílené složky nebo služby Azure Blob Storage tímto postupem nejsou přístupné.- Podívejte se na známé problémy související s
@queryparametrem a ověřováním.
DBCC
Nezdokumentované příkazy DBCC, které jsou povolené v SQL Server, nejsou ve spravované instanci SQL podporované.
- Podporuje se pouze omezený počet příznaků globálního trasování. Úroveň relace
Trace flagsse nepodporuje. Viz Trasování příznaků. - DBCC TRACEOFF a DBCC TRACEON fungují s omezeným počtem globálních příznaků trasování.
- DBCC CHECKDB s možnostmi REPAIR_ALLOW_DATA_LOSS, REPAIR_FAST a REPAIR_REBUILD nelze použít, protože databázi nelze nastavit v režimu – viz
SINGLE_USERrozdíly v příkazu ALTER DATABASE. Potenciální poškození databáze zpracovává podpora Azure tým. Pokud podpora Azure informace o poškození databáze, kontaktujte nás.
Distribuované transakce
Částečná podpora distribuovaných transakcí je aktuálně ve verzi Public Preview. Distribuované transakce se podporují za následujících podmínek (všechny musí být splněny):
- Všichni účastníci transakcí jsou SQL spravované instance Azure, které jsou součástí skupiny důvěryhodnosti serveru.
- transakce jsou iniciované buď z rozhraní .NET (třída TransactionScope), nebo z rozhraní Transact-SQL.
Spravovaná instance Azure SQL v současné době nepodporuje jiné scénáře, které pravidelně podporuje místní služba MSDTC nebo služba Azure Virtual Machines.
Rozšířené události
Rozšířené události (XEvents) nepodporují některé cíle specifické pro Windows:
- Cíl
etw_classic_syncse nepodporuje. Ukládání.xelsouborů ve službě Azure Blob Storage. Viz cíl etw_classic_sync. - Cíl
event_filese nepodporuje. Ukládání.xelsouborů ve službě Azure Blob Storage. Viz cíl event_file.
Externí knihovny
Externí knihovny jazyka R a Pythonu v databázi jsou podporované v omezené verzi Public Preview. Viz Machine Learning Services ve službě Azure SQL Managed Instance (Preview).
Filestream a FileTable
- Data streamu souborů se nepodporují.
- Databáze nemůže obsahovat skupiny souborů s
FILESTREAMdaty. FILETABLEse nepodporuje.- Tabulky nemůže mít
FILESTREAMtypy. - Následující funkce nejsou podporovány:
GetPathLocator()GET_FILESTREAM_TRANSACTION_CONTEXT()PathName()GetFileNamespacePat)FileTableRootPath()
Další informace najdete v tématu FILESTREAM a FileTables.
Fulltextové sémantické vyhledávání
Sémantické vyhledávání se nepodporuje.
Propojené servery
Odkazované servery SQL spravované instanci podporují omezený počet cílů:
- Podporované cíle jsou SQL managed instance, SQL Database, Azure Synapse SQL bez serveru a vyhrazené fondy a SQL Server instance.
- Distribuované zapisovatelné transakce jsou možné pouze mezi spravovanými instancemi. Další informace najdete v tématu Distribuované transakce. Příkaz MS DTC se však nepodporuje.
- Cíle, které nejsou podporované, jsou soubory, Analysis Services a další RDBMS. Zkuste použít nativní import CSV z Azure Blob Storage pomocí nebo jako alternativu k importu souborů nebo načíst soubory pomocí bez serveru
BULK INSERTOPENROWSETSQL ve Azure Synapse Analytics.
Operace:
- Transakce zápisu mezi instancemi jsou podporovány pouze pro spravované instance.
sp_dropserverse podporuje pro vyhození odkazového serveru. Viz sp_dropserver.- Funkci
OPENROWSETlze použít ke spouštění dotazů pouze v SQL Server instancích. Mohou být spravované, místní nebo na virtuálních počítačích. Viz OPENROWSET. - Funkci
OPENDATASOURCElze použít ke spouštění dotazů pouze v SQL Server instancích. Mohou být spravované, místní nebo na virtuálních počítačích. JakoSQLNCLIzprostředkovatel se podporují pouze hodnoty ,SQLNCLI11SQLOLEDBa . Příklad:SELECT * FROM OPENDATASOURCE('SQLNCLI', '...').AdventureWorks2012.HumanResources.Employee. Viz OPENDATASOURCE. - Odkazované servery nelze použít ke čtení souborů (Excel, CSV) ze síťových sdílených složek. Zkuste použít BULK INSERT, OPENROWSET, který čte soubory CSV z Azure Blob Storage, nebo odkazovaný server,který odkazuje na bezsídový fond SQL v Synapse Analytics . Sledujte tyto žádosti u SQL zpětné vazby ke spravované instanci.|
Propojené servery ve službě Azure SQL Managed Instance podporují SQL ověřování a AAD ověřování.
PolyBase
Práce na povolení podpory PolyBase v SQL managed instance probíhá. Do té doby můžete jako alternativní řešení použít propojené servery do bez serveru ve službě SQL nebo Synapse Analytics SQL Server k dotazování dat ze souborů uložených v Azure Data Lake nebo Azure Storage.
Obecné informace o PolyBase najdete v tématu PolyBase.
Replikace
- Podporují se typy snímků a obousměrné replikace. Slučovací replikace, replikace peer-to-peer a aktualizovatelná předplatná se nepodporují.
- Transakční replikace je dostupná pro verzi Public Preview SQL spravované instanci s některými omezeními:
- Všechny typy účastníků replikace (Publisher, distributor, předplatitel vyžádané replikace SQL odběratelé) je možné umístit do spravované instance, ale vydavatel SQL distributor musí být buď v cloudu, nebo v místním prostředí.
- SQL spravovaná instance může komunikovat s nejnovějšími verzemi SQL Server. Další informace najdete v matici podporovaných verzí.
- Transakční replikace má některé další požadavky na síť.
Další informace o konfiguraci transakční replikace najdete v následujících kurzech:
- Replikace mezi vydavatelem SQL a předplatitelem mi SQL mi
- Replikace mezi vydavatelem SQL, distributorem MI SQL a předplatitelem SQL Server MI
Příkaz RESTORE
- Podporovaná syntaxe:
RESTORE DATABASERESTORE FILELISTONLY ONLYRESTORE HEADER ONLYRESTORE LABELONLY ONLYRESTORE VERIFYONLY ONLY
- Nepodporovaná syntaxe:
RESTORE LOG ONLYRESTORE REWINDONLY ONLY
- Zdroj:
FROM URL(Azure Blob Storage) je jediná podporovaná možnost.FROM DISK/TAPE/backup není podporováno.- Zálohovací sady nejsou podporované.
WITHmožnosti nejsou podporované. Pokusy oWITHDIFFERENTIALobnovení, jako jsouSTATS, ,REPLACEatd., selžou.ASYNC RESTORE: Obnovení pokračuje i v případě, že se připojení klienta přeruší. Pokud dojde k vyřazení připojení, můžete zkontrolovat stav operace obnovení a databázisys.dm_operation_statusCREATE a DROP. Viz sys.dm_operation_status.
Následující možnosti databáze jsou nastavené nebo přepsány a nelze je později změnit:
NEW_BROKER, pokud zprostředkovatel není v souboru .bak povolený.ENABLE_BROKER, pokud zprostředkovatel není v souboru .bak povolený.AUTO_CLOSE=OFFPokud databáze v souboru .bak obsahujeAUTO_CLOSE=ON.RECOVERY FULL, pokud má databáze v souboru BAKSIMPLErežimBULK_LOGGEDobnovení nebo .- Přidá se skupina souborů optimalizovaná pro paměť, která se nazývá XTP, pokud nebyla ve zdrojovém souboru .bak.
- Všechny existující skupiny souborů optimalizované pro paměť se přejmenují na XTP.
SINGLE_USERMožnostiRESTRICTED_USERa se převedou naMULTI_USER.
Omezení:
- Zálohy poškozených databází se můžou obnovit v závislosti na typu poškození, ale automatizované zálohy nebudou pořízeny, dokud nebude poškození opraveno. Ujistěte se, že jste spouštění ve zdrojové SQL spravované instanci a abyste tomuto problému zabránili, použijte
DBCC CHECKDBWITH CHECKSUMzálohování. - Obnovení souboru databáze, který obsahuje omezení popsaná v tomto dokumentu (například objekty), nelze ve spravované instanci
.BAKFILESTREAMSQLFILETABLEobnovit. .BAKSoubory, které obsahují více zálohovacího souboru, není možné obnovit..BAKSoubory, které obsahují více souborů protokolu, není možné obnovit.- Zálohy, které obsahují databáze větší než 8 TB, aktivní objekty OLTP v paměti nebo počet souborů, které by překročily 280 souborů na instanci, není možné obnovit v Pro obecné účely instanci.
- Zálohy, které obsahují databáze větší než 4 TB nebo objekty OLTP v paměti s celkovou velikostí větší, než je velikost popsaná v omezeních prostředků, Pro důležité obchodní informace instanci obnovit. Informace o příkazy restore najdete v tématu příkazy RESTORE.
Důležité
Stejná omezení platí pro integrovanou operaci obnovení k bodu v čase. V instanci Pro obecné účely databázi větší než 4 TB například Pro důležité obchodní informace obnovit. Pro důležité obchodní informace databáze se soubory OLTP v paměti nebo s více než 280 soubory nelze obnovit Pro obecné účely instanci.
Service Broker
Výměna zpráv zprostředkovatele služeb mezi instancemi se podporuje pouze mezi službami Azure SQL spravovanými instancemi:
CREATE ROUTE: Ve spravované instanci nemůžete použít jiný název než ani názevCREATE ROUTEADDRESSDNS SQL spravovanéLOCALinstance. Port je vždy 4022.ALTER ROUTE: Ve spravované instanci nemůžete použít jiný název než ani názevALTER ROUTEADDRESSDNS SQL spravovanéLOCALinstance. Port je vždy 4022.
Zabezpečení přenosu se podporuje, zabezpečení dialogového okna není:
CREATE REMOTE SERVICE BINDINGse nepodporuje.
Služba Service Broker je ve výchozím nastavení povolená a nelze ji zakázat. Následující možnosti ALTER DATABASE se nepodporují:
ENABLE_BROKERDISABLE_BROKER
Uložené procedury, funkce a triggery
NATIVE_COMPILATIONse na úrovni Pro obecné účely nepodporuje.- Následující sp_configure se nepodporují:
allow polybase exportallow updatesfilestream_access_levelremote accessremote data archiveremote proc transscan for startup procs
- Následující sp_configure jsou ignorovány a nemají žádný vliv:
Ole Automation Procedures
sp_execute_external_scriptsse nepodporuje. Viz sp_execute_external_scripts.xp_cmdshellse nepodporuje. Viz xp_cmdshell.Extended stored proceduresnejsou podporovány, a to zahrnujesp_addextendedprocasp_dropextendedproc. Tato funkce nebude podporována, protože je na cestě k vyněcování pro SQL Server. Další podrobnosti najdete v tématu Rozšířené uložené procedury.sp_attach_db,sp_attach_single_file_dbsp_detach_dba se nepodporují. Viz sp_attach_db, sp_attach_single_file_dba sp_detach_db.
Systémové funkce a proměnné
Následující proměnné, funkce a zobrazení vrací různé výsledky:
SERVERPROPERTY('EngineEdition')vrátí hodnotu 8. Tato vlastnost jednoznačně identifikuje SQL instanci. Viz SERVERPROPERTY.SERVERPROPERTY('InstanceName')vrací hodnotu NULL, protože koncept instance, protože existuje SQL Server se nevztahuje na SQL spravované instance. Viz SERVERPROPERTY('InstanceName').@@SERVERNAMEvrátí úplný název DNS "připojitelný", například my-managed-instance.wcus17662feb9ce98.database.windows.net. Viz @SERVERNAME @.SYS.SERVERSvrátí úplný název DNS "připojitelný", například pro vlastnostimyinstance.domain.database.windows.net"name" a "data_source". Viz SYS. SERVERY.@@SERVICENAMEvrací hodnotu NULL, protože koncept služby, který existuje SQL Server se nevztahuje na SQL instanci. Viz @SERVICENAME @.SUSER_IDse podporuje. Pokud přihlášení Azure AD není v sys.syslogins, vrátí hodnotu NULL. Viz SUSER_ID.SUSER_SIDse nepodporuje. Vrátí se nesprávná data, což je dočasný známý problém. Viz SUSER_SID.
Omezení prostředí
Podsíť
- v podsíti, ve které jste nasadili SQL spravovanou instanci, nemůžete umístit žádné další prostředky (například virtuální počítače). Nasaďte tyto prostředky pomocí jiné podsítě.
- Podsíť musí mít dostatečný počet dostupných IP adres. Minimální je mít minimálně 32 IP adres v podsíti.
- Počet virtuální jádra a typů instancí, které můžete nasadit v oblasti, mají některá omezení a omezení.
- Existuje Konfigurace sítě , kterou je třeba v podsíti použít.
Virtuální síť
- Virtuální síť se dá nasadit pomocí modelu prostředků – model klasický pro virtuální síť se nepodporuje.
- po vytvoření spravované instance SQL se přesunou SQL spravované instance nebo virtuální síť do jiné skupiny prostředků nebo předplatného nepodporuje.
- pro SQL spravované instance hostované ve virtuálních clusterech, které jsou vytvořené před 9/22/2020 globálním partnerským vztahem , se nepodporuje. K těmto prostředkům se můžete připojit prostřednictvím ExpressRoute nebo VNet-to-VNet prostřednictvím bran virtuální sítě.
Skupiny převzetí služeb při selhání
Systémové databáze nejsou replikovány do sekundární instance ve skupině převzetí služeb při selhání. Proto by scénáře závislé na objektech ze systémových databází nemohly být na sekundární instanci možné, pokud nejsou objekty ručně vytvořeny na sekundárním objektu.
DATABÁZE
- Maximální velikost souboru
tempdbnemůže být větší než 24 GB na jádro na úrovni pro obecné účely. maximálnítempdbvelikost vrstvy Pro důležité obchodní informace je omezená velikostí úložiště SQL spravované Instance.Tempdbvelikost souboru protokolu je omezena na 120 GB na úrovni Pro obecné účely. Některé dotazy mohou vracet chybu, pokud vyžadují více než 24 GB na jádro vtempdbnebo pokud vydávají více než 120 GB dat protokolu. Tempdbje vždy rozdělen do 12 datových souborů: 1 primární, označovaný také jako Master, datový soubor a 11 neprimárních datových souborů. Strukturu souborů nelze změnit a nelze do ní přidat nové souborytempdb.- paměťově optimalizovaná
tempdbmetadata, nová funkce databáze SQL Server 2019 v paměti, není podporována. - Objekty vytvořené v databázi modelů nelze automaticky vytvořit v nástroji
tempdbpo restartování nebo převzetí služeb při selhání, protožetempdbnezíská svůj počáteční seznam objektů z databáze modelů. Objekty musítetempdbpo každém restartování nebo převzetí služeb při selhání vytvořit ručně.
MSDB
následující schémata MSDB v SQL spravované Instance musí vlastnit jejich příslušné předdefinované role:
- Obecné role
- TargetServersRole
- Pevné databázové role
- Role uživatele agenta SQL
- Role čtenáře agenta SQL
- Role operátora agenta SQL
- DatabaseMail role:
- DatabaseMailUserRole
- Role integračních služeb:
- db_ssisadmin
- db_ssisltduser
- db_ssisoperator
Důležité
Změna předdefinovaných názvů rolí, názvy schémat a vlastníci schémat budou mít vliv na běžnou činnost služby. Jakékoli změny, které v nich provedete, se vrátí zpět na předdefinované hodnoty, jakmile se zjistí, nebo při další aktualizaci služby na nejnovější verzi, aby se zajistila normální operace služby.
Protokoly chyb
SQL spravovaná Instance umístí podrobné informace do protokolů chyb. K dispozici je mnoho interních systémových událostí, které jsou zaznamenány v protokolu chyb. Pomocí vlastního postupu si můžete přečíst protokoly chyb, které odfiltrují některé nedůležité položky. další informace najdete v tématu SQL managed instance – sp_readmierrorlog nebo SQL rozšíření spravované instance (preview) pro Azure Data Studio.
Další kroky
- další informace o SQL managed instance najdete v tématu co je SQL managed instance?
- seznam funkcí a porovnání najdete v tématu porovnání funkcí spravované Instance Azure SQL.
- Informace o aktualizacích vydaných verzí najdete v tématu co je nového?.
- Problémy, alternativní řešení a řešení najdete v tématu známé problémy.
- rychlý start, který ukazuje, jak vytvořit novou SQL spravovanou instanci, najdete v tématu vytvoření SQL spravované instance.