{"id":3780,"date":"2021-11-22T09:44:44","date_gmt":"2021-11-22T17:44:44","guid":{"rendered":"https:\/\/SUMMALAI.COM\/?p=3780"},"modified":"2021-11-22T09:45:12","modified_gmt":"2021-11-22T17:45:12","slug":"features-comparison-azure-sql-database-and-azure-sql-managed-instance","status":"publish","type":"post","link":"https:\/\/SUMMALAI.COM\/?p=3780","title":{"rendered":"Features Comparison: Azure SQL Database and Azure SQL Managed Instance"},"content":{"rendered":"\n<p><strong>APPLIES TO:<\/strong>&nbsp;<img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/media\/applies-to\/yes.png\">&nbsp;Azure SQL Database&nbsp;<img decoding=\"async\" src=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/media\/applies-to\/yes.png\">&nbsp;Azure SQL Managed Instance<\/p>\n\n\n\n<p>Azure SQL Database and SQL Managed Instance share a common code base with the latest stable version of SQL Server. Most of the standard SQL language, query processing, and database management features are identical. The features that are common between SQL Server and SQL Database or SQL Managed Instance are:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Language features &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/control-of-flow\">Control of flow language keywords<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/cursors-transact-sql\">Cursors<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/data-types\/data-types-transact-sql\">Data types<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/queries\/queries\">DML statements<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/queries\/predicates\">Predicates<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/sequence-numbers\/sequence-numbers\">Sequence numbers<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/stored-procedures\/stored-procedures-database-engine\">Stored procedures<\/a>, and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/variables-transact-sql\">Variables<\/a>.<\/li><li>Database features &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/automatic-tuning\/automatic-tuning\">Automatic tuning (plan forcing)<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/track-changes\/about-change-tracking-sql-server\">Change tracking<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/collations\/set-or-change-the-database-collation\">Database collation<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/contained-databases\">Contained databases<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/contained-database-users-making-your-database-portable\">Contained users<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-compression\/data-compression\">Data compression<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/alter-database-scoped-configuration-transact-sql\">Database configuration settings<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/indexes\/perform-index-operations-online\">Online index operations<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/partitions\/partitioned-tables-and-indexes\">Partitioning<\/a>, and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/tables\/temporal-tables\">Temporal tables<\/a>&nbsp;(<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/temporal-tables\">see getting started guide<\/a>).<\/li><li>Security features &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/authentication-access\/application-roles\">Application roles<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/dynamic-data-masking\">Dynamic data masking<\/a>&nbsp;(<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/dynamic-data-masking-overview\">see getting started guide<\/a>),&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/row-level-security\">Row Level Security<\/a>, and Threat detection &#8211; see getting started guides for&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/threat-detection-configure\">SQL Database<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/threat-detection-configure\">SQL Managed Instance<\/a>.<\/li><li>Multi-model capabilities &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/graphs\/sql-graph-overview\">Graph processing<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/json\/json-data-sql-server\">JSON data<\/a>&nbsp;(<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/json-features\">see getting started guide<\/a>),&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openxml-transact-sql\">OPENXML<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/spatial\/spatial-data-sql-server\">Spatial<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openjson-transact-sql\">OPENJSON<\/a>, and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/create-xml-index-transact-sql\">XML indexes<\/a>.<\/li><\/ul>\n\n\n\n<p>Azure manages your databases and guarantees their high-availability. Some features that might affect high-availability or can&#8217;t be used in PaaS world have limited functionalities in SQL Database and SQL Managed Instance. These features are described in the tables below.<\/p>\n\n\n\n<p>If you need more details about the differences, you can find them in the separate pages:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/transact-sql-tsql-differences-sql-server\">Azure SQL Database vs. SQL Server differences<\/a><\/li><li><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">Azure SQL Managed Instance vs. SQL Server differences<\/a><\/li><\/ul>\n\n\n\n<p><a href=\"https:\/\/aka.ms\/AzureSQLSurveyNov2021\">Survey to improve Azure SQL!<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"features-of-sql-database-and-sql-managed-instance\"><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/features-comparison#features-of-sql-database-and-sql-managed-instance\"><\/a>Features of SQL Database and SQL Managed Instance<\/h2>\n\n\n\n<p>The following table lists the major features of SQL Server and provides information about whether the feature is partially or fully supported in Azure SQL Database and Azure SQL Managed Instance, with a link to more information about the feature.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>Feature<\/strong><\/th><th><strong>Azure SQL Database<\/strong><\/th><th><strong>Azure SQL Managed Instance<\/strong><\/th><\/tr><\/thead><tbody><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/encryption\/always-encrypted-database-engine\">Always Encrypted<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/always-encrypted-certificate-store-configure\">Cert store<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/always-encrypted-azure-key-vault-configure\">Key vault<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/always-encrypted-certificate-store-configure\">Cert store<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/always-encrypted-azure-key-vault-configure\">Key vault<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/availability-groups\/windows\/always-on-availability-groups-sql-server\">Always On Availability Groups<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">99.99-99.995% availability<\/a>&nbsp;is guaranteed for every database. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity with Azure SQL Database<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">99.99.% availability<\/a>&nbsp;is guaranteed for every database and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#availability\">can&#8217;t be managed by user<\/a>. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity with Azure SQL Database<\/a>. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auto-failover-group-overview\">Auto-failover groups<\/a>&nbsp;to configure a secondary SQL Managed Instance in another region. SQL Server instances and SQL Database can&#8217;t be used as secondaries for SQL Managed Instance.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/attach-a-database\">Attach a database<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/auditing\/sql-server-audit-database-engine\">Auditing<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auditing-overview\">Yes<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/auditing-configure\">Yes<\/a>, with some&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#auditing\">differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/authentication-aad-overview\">Azure Active Directory (Azure AD) authentication<\/a><\/td><td>Yes. Azure AD users only.<\/td><td>Yes. Including server-level Azure AD logins.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/backup-transact-sql\">BACKUP command<\/a><\/td><td>No, only system-initiated automatic backups &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/automated-backups-overview\">Automated backups<\/a><\/td><td>Yes, user initiated copy-only backups to Azure Blob storage (automatic system backups can&#8217;t be initiated by user) &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#backup\">Backup differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/functions\">Built-in functions<\/a><\/td><td>Most &#8211; see individual functions<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#stored-procedures-functions-and-triggers\">Stored procedures, functions, triggers differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/import-export\/import-bulk-data-by-using-bulk-insert-or-openrowset-bulk-sql-server\">BULK INSERT statement<\/a><\/td><td>Yes, but just from Azure Blob storage as a source.<\/td><td>Yes, but just from Azure Blob Storage as a source &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#bulk-insert--openrowset\">differences<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/sql-server-certificates-and-asymmetric-keys\">Certificates and asymmetric keys<\/a><\/td><td>Yes, without access to file system for&nbsp;<code>BACKUP<\/code>&nbsp;and&nbsp;<code>CREATE<\/code>&nbsp;operations.<\/td><td>Yes, without access to file system for&nbsp;<code>BACKUP<\/code>&nbsp;and&nbsp;<code>CREATE<\/code>&nbsp;operations &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#certificates\">certificate differences<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/track-changes\/about-change-data-capture-sql-server\">Change data capture &#8211; CDC<\/a><\/td><td>Yes (Preview) for S3 tier and above. Basic, S0, S1, S2 are not supported.<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/collations\/set-or-change-the-server-collation\">Collation &#8211; server\/instance<\/a><\/td><td>No, default server collation&nbsp;<code>SQL_Latin1_General_CP1_CI_AS<\/code>&nbsp;is always used.<\/td><td>Yes, can be set when the&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/create-template-quickstart\">instance is created<\/a>&nbsp;and can&#8217;t be updated later.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/indexes\/columnstore-indexes-overview\">Columnstore indexes<\/a><\/td><td>Yes &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/indexes\/columnstore-indexes-overview\">Premium tier, Standard tier &#8211; S3 and above, General Purpose tier, Business Critical, and HyperScale tiers<\/a><\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/clr-integration\/common-language-runtime-clr-integration-programming-concepts\">Common language runtime &#8211; CLR<\/a><\/td><td>No<\/td><td>Yes, but without access to file system in&nbsp;<code>CREATE ASSEMBLY<\/code>&nbsp;statement &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#clr\">CLR differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/authentication-access\/credentials-database-engine\">Credentials<\/a><\/td><td>Yes, but only&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/create-database-scoped-credential-transact-sql\">database scoped credentials<\/a>.<\/td><td>Yes, but only&nbsp;<strong>Azure Key Vault<\/strong>&nbsp;and&nbsp;<code>SHARED ACCESS SIGNATURE<\/code>&nbsp;are supported &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#credential\">details<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/linked-servers\/linked-servers-database-engine\">Cross-database\/three-part name queries<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-query-overview\">Elastic queries<\/a><\/td><td>Yes, plus&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-query-overview\">Elastic queries<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/linked-servers\/linked-servers-database-engine\">Cross-database transactions<\/a><\/td><td>No<\/td><td>Yes, within the instance. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#linked-servers\">Linked server differences<\/a>&nbsp;for cross-instance queries.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/database-mail\/database-mail\">Database mail &#8211; DbMail<\/a><\/td><td>No<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/database-mirroring\/database-mirroring-sql-server\">Database mirroring<\/a><\/td><td>No<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#database-mirroring\">No<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/database-snapshots-sql-server\">Database snapshots<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/database-console-commands\/dbcc-transact-sql\">DBCC statements<\/a><\/td><td>Most &#8211; see individual statements<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#dbcc\">DBCC differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/statements\">DDL statements<\/a><\/td><td>Most &#8211; see individual statements<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/triggers\/ddl-triggers\">DDL triggers<\/a><\/td><td>Database only<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/create-view-transact-sql#partitioned-views\">Distributed partition views<\/a><\/td><td>No<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/native-client-ole-db-transactions\/supporting-distributed-transactions\">Distributed transactions &#8211; MS DTC<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-transactions-overview\">Elastic transactions<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-transactions-overview\">Elastic transactions<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/triggers\/create-dml-triggers\">DML triggers<\/a><\/td><td>Most &#8211; see individual statements<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/system-dynamic-management-views\/system-dynamic-management-views\">DMVs<\/a><\/td><td>Most &#8211; see individual DMVs<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-query-overview\">Elastic query<\/a>&nbsp;(in public preview)<\/td><td>Yes, with required RDBMS type.<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/service-broker\/event-notifications\">Event notifications<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/alerts-insights-configure-portal\">Alerts<\/a><\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/expressions-transact-sql\">Expressions<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/extended-events\/extended-events\">Extended events (XEvent)<\/a><\/td><td>Some &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/xevent-db-diff-from-svr\">Extended events in SQL Database<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#extended-events\">Extended events differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/extended-stored-procedures-programming\/creating-extended-stored-procedures\">Extended stored procedures<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/database-files-and-filegroups\">Files and file groups<\/a><\/td><td>Primary file group only<\/td><td>Yes. File paths are automatically assigned and the file location can&#8217;t be specified in&nbsp;<code>ALTER DATABASE ADD FILE<\/code>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#alter-database-statement\">statement<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/blob\/filestream-sql-server\">Filestream<\/a><\/td><td>No<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#filestream-and-filetable\">No<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/search\/full-text-search\">Full-text search (FTS)<\/a><\/td><td>Yes, but third-party word breakers are not supported<\/td><td>Yes, but&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#full-text-semantic-search\">third-party word breakers are not supported<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/functions\">Functions<\/a><\/td><td>Most &#8211; see individual functions<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#stored-procedures-functions-and-triggers\">Stored procedures, functions, triggers differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/in-memory-oltp\/in-memory-oltp-in-memory-optimization\">In-memory optimization<\/a><\/td><td>Yes in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/in-memory-oltp-overview\">Premium and Business Critical service tiers<\/a>.<br>Limited support for non-persistent In-Memory OLTP objects such as memory-optimized table variables in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/service-tier-hyperscale\">Hyperscale service tier<\/a>.<\/td><td>Yes in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/sql-managed-instance-paas-overview\">Business Critical service tier<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/language-elements-transact-sql\">Language elements<\/a><\/td><td>Most &#8211; see individual elements<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/ledger-overview\">Ledger<\/a><\/td><td>Yes<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/linked-servers\/linked-servers-database-engine\">Linked servers<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-query-horizontal-partitioning\">Elastic query<\/a><\/td><td>Yes. Only to&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#linked-servers\">SQL Server and SQL Database<\/a>&nbsp;without distributed transactions.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/linked-servers\/linked-servers-database-engine\">Linked servers<\/a>&nbsp;that read from files (CSV, Excel)<\/td><td>No. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/bulk-insert-transact-sql#e-importing-data-from-a-csv-file\">BULK INSERT<\/a>&nbsp;or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openrowset-transact-sql#g-accessing-data-from-a-csv-file-with-a-format-file\">OPENROWSET<\/a>&nbsp;as an alternative for CSV format.<\/td><td>No. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/bulk-insert-transact-sql#e-importing-data-from-a-csv-file\">BULK INSERT<\/a>&nbsp;or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openrowset-transact-sql#g-accessing-data-from-a-csv-file-with-a-format-file\">OPENROWSET<\/a>&nbsp;as an alternative for CSV format. Track these requests on&nbsp;<a href=\"https:\/\/feedback.azure.com\/d365community\/idea\/db80cf6e-3425-ec11-b6e6-000d3a4f0f84\">SQL Managed Instance feedback item<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/log-shipping\/about-log-shipping-sql-server\">Log shipping<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">High availability<\/a>&nbsp;is included with every database. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity<\/a>.<\/td><td>Natively built in as a part of&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/dms\/tutorial-sql-server-to-managed-instance\">Azure Data Migration Service (DMS)<\/a>&nbsp;migration process. Natively built for custom data migration projects as an external&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/log-replay-service-migrate\">Log Replay Service (LRS)<\/a>.<br>Not available as High availability solution, because other&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">High availability<\/a>&nbsp;methods are included with every database and it is not recommended to use Log-shipping as HA alternative. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity<\/a>. Not available as a replication mechanism between databases &#8211; use secondary replicas on&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/service-tier-business-critical\">Business Critical tier<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auto-failover-group-overview\">auto-failover groups<\/a>, or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">transactional replication<\/a>&nbsp;as the alternatives.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/authentication-access\/principals-database-engine\">Logins and users<\/a><\/td><td>Yes, but&nbsp;<code>CREATE<\/code>&nbsp;and&nbsp;<code>ALTER<\/code>&nbsp;login statements do not offer all the options (no Windows and server-level Azure Active Directory logins).&nbsp;<code>EXECUTE AS LOGIN<\/code>&nbsp;is not supported &#8211; use&nbsp;<code>EXECUTE AS USER<\/code>&nbsp;instead.<\/td><td>Yes, with some&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#logins-and-users\">differences<\/a>. Windows logins are not supported and they should be replaced with Azure Active Directory logins.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/import-export\/prerequisites-for-minimal-logging-in-bulk-import\">Minimal logging in bulk import<\/a><\/td><td>No, only Full Recovery model is supported.<\/td><td>No, only Full Recovery model is supported.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/system-databases\">Modifying system data<\/a><\/td><td>No<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/configure-windows\/ole-automation-procedures-server-configuration-option\">OLE Automation<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/opendatasource-transact-sql\">OPENDATASOURCE<\/a><\/td><td>No<\/td><td>Yes, only to SQL Database, SQL Managed Instance and SQL Server. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openquery-transact-sql\">OPENQUERY<\/a><\/td><td>No<\/td><td>Yes, only to SQL Database, SQL Managed Instance and SQL Server. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openrowset-transact-sql\">OPENROWSET<\/a><\/td><td>Yes, only to import from Azure Blob storage.<\/td><td>Yes, only to SQL Database, SQL Managed Instance and SQL Server, and to import from Azure Blob storage. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/language-elements\/operators-transact-sql\">Operators<\/a><\/td><td>Most &#8211; see individual operators<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/polybase\/polybase-guide\">Polybase<\/a><\/td><td>No. You can query data in the files placed on Azure Blob Storage using&nbsp;<code>OPENROWSET<\/code>&nbsp;function or use&nbsp;<a href=\"https:\/\/devblogs.microsoft.com\/azure-sql\/read-azure-storage-files-using-synapse-sql-external-tables\/\">an external table that references a serverless SQL pool in Synapse Analytics<\/a>.<\/td><td>No. You can query data in the files placed on Azure Blob Storage using&nbsp;<code>OPENROWSET<\/code>&nbsp;function,&nbsp;<a href=\"https:\/\/devblogs.microsoft.com\/azure-sql\/linked-server-to-synapse-sql-to-implement-polybase-like-scenarios-in-managed-instance\/\">a linked server that references a serverless SQL pool in Synapse Analytics<\/a>, or an external table (in public preview) that references&nbsp;<a href=\"https:\/\/devblogs.microsoft.com\/azure-sql\/read-azure-storage-files-using-synapse-sql-external-tables\/\">a serverless SQL pool in Synapse Analytics<\/a>&nbsp;or SQL Server.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/native-client\/features\/working-with-query-notifications\">Query Notifications<\/a><\/td><td>No<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/advanced-analytics\/what-is-sql-server-machine-learning\">Machine Learning Services<\/a>&nbsp;(<em>Formerly R Services<\/em>)<\/td><td>No<\/td><td>Yes, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/machine-learning-services-overview\">Machine Learning Services in Azure SQL Managed Instance<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/backup-restore\/recovery-models-sql-server\">Recovery models<\/a><\/td><td>Only Full Recovery that guarantees high availability is supported. Simple and Bulk Logged recovery models are not available.<\/td><td>Only Full Recovery that guarantees high availability is supported. Simple and Bulk Logged recovery models are not available.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/resource-governor\/resource-governor\">Resource governor<\/a><\/td><td>No<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/restore-statements-for-restoring-recovering-and-managing-backups-transact-sql\">RESTORE statements<\/a><\/td><td>No<\/td><td>Yes, with mandatory&nbsp;<code>FROM URL<\/code>&nbsp;options for the backups files placed on Azure Blob Storage. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#restore-statement\">Restore differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/backup-restore\/back-up-and-restore-of-sql-server-databases#restore-data-backups\">Restore database from backup<\/a><\/td><td>From automated backups only &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/recovery-using-backups\">SQL Database recovery<\/a><\/td><td>From automated backups &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/recovery-using-backups\">SQL Database recovery<\/a>&nbsp;and from full backups placed on Azure Blob Storage &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#backup\">Backup differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/backup-restore\/back-up-and-restore-of-sql-server-databases#restore-data-backups\">Restore database to SQL Server<\/a><\/td><td>No. Use BACPAC or BCP instead of native restore.<\/td><td>No, because SQL Server database engine used in SQL Managed Instance has higher version than any RTM version of SQL Server used on-premises. Use BACPAC, BCP, or Transactional replication instead.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/search\/semantic-search-sql-server\">Semantic search<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/configure-windows\/sql-server-service-broker\">Service Broker<\/a><\/td><td>No<\/td><td>Yes, but only within the instance. If you are using remote Service Broker routes, try to consolidate databases from several distributed SQL Server instances into one SQL Managed Instance during migration and use only local routes. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#service-broker\">Service Broker differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/configure-windows\/server-configuration-options-sql-server\">Server configuration settings<\/a><\/td><td>No<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/set-statements-transact-sql\">Set statements<\/a><\/td><td>Most &#8211; see individual statements<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/ssms\/agent\/sql-server-agent\">SQL Server Agent<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-jobs-overview\">Elastic jobs (preview)<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#sql-server-agent\">SQL Server Agent differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/auditing\/sql-server-audit-database-engine\">SQL Server Auditing<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auditing-overview\">SQL Database auditing<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#auditing\">Auditing differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/system-functions\/system-functions-for-transact-sql\">System stored functions<\/a><\/td><td>Most &#8211; see individual functions<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#stored-procedures-functions-and-triggers\">Stored procedures, functions, triggers differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/system-stored-procedures\/system-stored-procedures-transact-sql\">System stored procedures<\/a><\/td><td>Some &#8211; see individual stored procedures<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#stored-procedures-functions-and-triggers\">Stored procedures, functions, triggers differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/system-tables\/system-tables-transact-sql\">System tables<\/a><\/td><td>Some &#8211; see individual tables<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/system-catalog-views\/catalog-views-transact-sql\">System catalog views<\/a><\/td><td>Some &#8211; see individual views<\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server\">T-SQL differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/databases\/tempdb-database\">TempDB<\/a><\/td><td>Yes.&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/resource-limits-vcore-single-databases\">32-GB size per core for every database<\/a>.<\/td><td>Yes.&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/resource-limits#service-tier-characteristics\">24-GB size per vCore for entire GP tier and limited by instance size on BC tier<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/create-table-transact-sql#database-scoped-global-temporary-tables-azure-sql-database\">Temporary tables<\/a><\/td><td>Local and database-scoped global temporary tables<\/td><td>Local and instance-scoped global temporary tables<\/td><\/tr><tr><td>Time zone choice<\/td><td>No<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/timezones-overview\">Yes<\/a>, and it must be configured when the SQL Managed Instance is created.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/database-console-commands\/dbcc-traceon-trace-flags-transact-sql\">Trace flags<\/a><\/td><td>No<\/td><td>Yes, but only limited set of global trace flags. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#dbcc\">DBCC differences<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Transactional Replication<\/a><\/td><td>Yes,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/migrate-to-database-from-sql-server\">Transactional and snapshot replication subscriber only<\/a><\/td><td>Yes, in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/replication\/replication-with-sql-database-managed-instance\">public preview<\/a>. See the constraints&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#replication\">here<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/security\/encryption\/transparent-data-encryption-tde\">Transparent data encryption (TDE)<\/a><\/td><td>Yes &#8211; General Purpose, Business Critical, and Hyperscale (in preview) service tiers only<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/transparent-data-encryption-tde-overview\">Yes<\/a><\/td><\/tr><tr><td>Windows authentication<\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/sql-server\/failover-clusters\/windows\/windows-server-failover-clustering-wsfc-with-sql-server\">Windows Server Failover Clustering<\/a><\/td><td>No. Other techniques that provide&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">high availability<\/a>&nbsp;are included with every database. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity with Azure SQL Database<\/a>.<\/td><td>No. Other techniques that provide&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/high-availability-sla\">high availability<\/a>&nbsp;are included with every database. Disaster recovery is discussed in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/business-continuity-high-availability-disaster-recover-hadr-overview\">Overview of business continuity with Azure SQL Database<\/a>.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"platform-capabilities\"><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/features-comparison#platform-capabilities\"><\/a>Platform capabilities<\/h2>\n\n\n\n<p>The Azure platform provides a number of PaaS capabilities that are added as an additional value to the standard database features. There is a number of external services that can be used with Azure SQL Database.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>Platform feature<\/strong><\/th><th><strong>Azure SQL Database<\/strong><\/th><th><strong>Azure SQL Managed Instance<\/strong><\/th><\/tr><\/thead><tbody><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/active-geo-replication-overview\">Active geo-replication<\/a><\/td><td>Yes &#8211; all service tiers other than hyperscale<\/td><td>No, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auto-failover-group-overview\">Auto-failover groups<\/a>&nbsp;as an alternative<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auto-failover-group-overview\">Auto-failover groups<\/a><\/td><td>Yes &#8211; all service tiers other than hyperscale<\/td><td>Yes, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/auto-failover-group-overview\">Auto-failover groups<\/a><\/td><\/tr><tr><td>Auto-scale<\/td><td>Yes, but only in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/serverless-tier-overview\">serverless model<\/a>. In the non-serverless model, the change of service tier (change of vCore, storage, or DTU) is fast and online. The service tier change requires minimal or no downtime.<\/td><td>No, you need to choose reserved compute and storage. The change of service tier (vCore or max storage) is online and requires minimal or no downtime.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/automated-backups-overview\">Automatic backups<\/a><\/td><td>Yes. Full backups are taken every 7 days, differential 12 hours, and log backups every 5-10 min.<\/td><td>Yes. Full backups are taken every 7 days, differential 12 hours, and log backups every 5-10 min.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/automatic-tuning\/automatic-tuning\">Automatic tuning (indexes)<\/a><\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/automatic-tuning-overview\">Yes<\/a><\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/availability-zones\/az-overview\">Availability Zones<\/a><\/td><td>Yes<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/service-health\/resource-health-overview\">Azure Resource Health<\/a><\/td><td>Yes<\/td><td>No<\/td><\/tr><tr><td>Backup retention<\/td><td>Yes. 7 days default, max 35 days.<\/td><td>Yes. 7 days default, max 35 days.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/dma\/dma-overview\">Data Migration Service (DMS)<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-jobs-overview\">Elastic jobs<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-jobs-overview\">Elastic jobs (preview)<\/a><\/td><td>No (<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#sql-server-agent\">SQL Agent<\/a>&nbsp;can be used instead).<\/td><\/tr><tr><td>File system access<\/td><td>No. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/bulk-insert-transact-sql#f-importing-data-from-a-file-in-azure-blob-storage\">BULK INSERT<\/a>&nbsp;or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openrowset-transact-sql#i-accessing-data-from-a-file-stored-on-azure-blob-storage\">OPENROWSET<\/a>&nbsp;to access and load data from Azure Blob Storage as an alternative.<\/td><td>No. Use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/statements\/bulk-insert-transact-sql#f-importing-data-from-a-file-in-azure-blob-storage\">BULK INSERT<\/a>&nbsp;or&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/functions\/openrowset-transact-sql#i-accessing-data-from-a-file-stored-on-azure-blob-storage\">OPENROWSET<\/a>&nbsp;to access and load data from Azure Blob Storage as an alternative.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/recovery-using-backups#geo-restore\">Geo-restore<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/service-tier-hyperscale\">Hyperscale architecture<\/a><\/td><td>Yes<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/long-term-retention-overview\">Long-term backup retention &#8211; LTR<\/a><\/td><td>Yes, keep automatically taken backups up to 10 years.<\/td><td>Yes, keep automatically taken backups up to 10 years.<\/td><\/tr><tr><td>Pause\/resume<\/td><td>Yes, in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/serverless-tier-overview\">serverless model<\/a><\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/policy-based-management\/administer-servers-by-using-policy-based-management\">Policy-based management<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td>Public IP address<\/td><td>Yes. The access can be restricted using firewall or service endpoints.<\/td><td>Yes. Needs to be explicitly enabled and port 3342 must be enabled in NSG rules. Public IP can be disabled if needed. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/public-endpoint-overview\">Public endpoint<\/a>&nbsp;for more details.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/backup-restore\/restore-a-sql-server-database-to-a-point-in-time-full-recovery-model\">Point in time database restore<\/a><\/td><td>Yes &#8211; all service tiers other than hyperscale &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/recovery-using-backups#point-in-time-restore\">SQL Database recovery<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/recovery-using-backups#point-in-time-restore\">SQL Database recovery<\/a><\/td><\/tr><tr><td>Resource pools<\/td><td>Yes, as&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/elastic-pool-overview\">Elastic pools<\/a><\/td><td>Yes. A single instance of SQL Managed Instance can have multiple databases that share the same pool of resources. In addition, you can deploy multiple instances of SQL Managed Instance in&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/instance-pools-overview\">instance pools (preview)<\/a>&nbsp;that can share the resources.<\/td><\/tr><tr><td>Scaling up or down (online)<\/td><td>Yes, you can either change DTU or reserved vCores or max storage with the minimal downtime.<\/td><td>Yes, you can change reserved vCores or max storage with the minimal downtime.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/database-engine\/configure-windows\/create-or-delete-a-server-alias-for-use-by-a-client\">SQL Alias<\/a><\/td><td>No, use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/dns-alias-overview\">DNS Alias<\/a><\/td><td>No, use&nbsp;<a href=\"https:\/\/techcommunity.microsoft.com\/t5\/Azure-Database-Support-Blog\/Lesson-Learned-33-How-to-make-quot-cliconfg-quot-to-work-with\/ba-p\/369022\">Cliconfg<\/a>&nbsp;to set up alias on the client machines.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-monitor\/insights\/azure-sql\">SQL Analytics<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/sql-data-sync-sql-server-configure\">SQL Data Sync<\/a><\/td><td>Yes<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/analysis-services\/analysis-services\">SQL Server Analysis Services (SSAS)<\/a><\/td><td>No,&nbsp;<a href=\"https:\/\/azure.microsoft.com\/services\/analysis-services\/\">Azure Analysis Services<\/a>&nbsp;is a separate Azure cloud service.<\/td><td>No,&nbsp;<a href=\"https:\/\/azure.microsoft.com\/services\/analysis-services\/\">Azure Analysis Services<\/a>&nbsp;is a separate Azure cloud service.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/integration-services\/sql-server-integration-services\">SQL Server Integration Services (SSIS)<\/a><\/td><td>Yes, with a managed SSIS in Azure Data Factory (ADF) environment, where packages are stored in SSISDB hosted by Azure SQL Database and executed on Azure SSIS Integration Runtime (IR), see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/data-factory\/create-azure-ssis-integration-runtime\">Create Azure-SSIS IR in ADF<\/a>.<br><br>To compare the SSIS features in SQL Database and SQL Managed Instance, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/data-factory\/create-azure-ssis-integration-runtime#comparison-of-sql-database-and-sql-managed-instance\">Compare SQL Database to SQL Managed Instance<\/a>.<\/td><td>Yes, with a managed SSIS in Azure Data Factory (ADF) environment, where packages are stored in SSISDB hosted by SQL Managed Instance and executed on Azure SSIS Integration Runtime (IR), see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/data-factory\/create-azure-ssis-integration-runtime\">Create Azure-SSIS IR in ADF<\/a>.<br><br>To compare the SSIS features in SQL Database and SQL Managed Instance, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/data-factory\/create-azure-ssis-integration-runtime#comparison-of-sql-database-and-sql-managed-instance\">Compare SQL Database to SQL Managed Instance<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/reporting-services\/create-deploy-and-manage-mobile-and-paginated-reports\">SQL Server Reporting Services (SSRS)<\/a><\/td><td>No &#8211;&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/power-bi\/\">see Power BI<\/a><\/td><td>No &#8211; use&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/power-bi\/paginated-reports\/paginated-reports-report-builder-power-bi\">Power BI paginated reports<\/a>&nbsp;instead or host SSRS on an Azure VM. While SQL Managed Instance cannot run SSRS as a service, it can host&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/reporting-services\/install-windows\/ssrs-report-server-create-a-report-server-database#database-server-version-requirements\">SSRS catalog databases<\/a>&nbsp;for a reporting server installed on Azure Virtual Machine, using SQL Server authentication.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/query-performance-insight-use\">Query Performance Insights (QPI)<\/a><\/td><td>Yes<\/td><td>No. Use built-in reports in SQL Server Management Studio and Azure Data Studio.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/virtual-network\/virtual-networks-overview\">VNet<\/a><\/td><td>Partial, it enables restricted access using&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/vnet-service-endpoint-rule-overview\">VNet Endpoints<\/a><\/td><td>Yes, SQL Managed Instance is injected in customer&#8217;s VNet. See&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#subnet\">subnet<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/transact-sql-tsql-differences-sql-server#vnet\">VNet<\/a><\/td><\/tr><tr><td>VNet Service endpoint<\/td><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/vnet-service-endpoint-rule-overview\">Yes<\/a><\/td><td>No<\/td><\/tr><tr><td>VNet Global peering<\/td><td>Yes, using&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/vnet-service-endpoint-rule-overview\">Private IP and service endpoints<\/a><\/td><td>Yes, using&nbsp;<a href=\"https:\/\/techcommunity.microsoft.com\/t5\/azure-sql\/new-feature-global-vnet-peering-support-for-azure-sql-managed\/ba-p\/1746913\">Virtual network peering<\/a>.<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/private-link\/private-link-overview\">Private connectivity<\/a><\/td><td>Yes, using&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/private-link\/private-endpoint-overview\">Private Link<\/a><\/td><td>Yes, using VNet.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tools\"><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/features-comparison#tools\"><\/a>Tools<\/h2>\n\n\n\n<p>Azure SQL Database and Azure SQL Managed Instance support various data tools that can help you manage your data.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>Tool<\/strong><\/th><th><strong>Azure SQL Database<\/strong><\/th><th><strong>Azure SQL Managed Instance<\/strong><\/th><\/tr><\/thead><tbody><tr><td>Azure portal<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td>Azure CLI<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/azure-data-studio\/what-is\">Azure Data Studio<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td>Azure PowerShell<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/export-a-data-tier-application\">BACPAC file (export)<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/database-export\">SQL Database export<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/database-export\">SQL Managed Instance export<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/database-import\">SQL Database import<\/a><\/td><td>Yes &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/database-import\">SQL Managed Instance import<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/data-quality-services\/data-quality-services\">Data Quality Services (DQS)<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/master-data-services\/master-data-services-overview-mds\">Master Data Services (MDS)<\/a><\/td><td>No<\/td><td>No<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/server-management-objects-smo\/sql-server-management-objects-smo-programming-guide\">SMO<\/a><\/td><td><a href=\"https:\/\/www.nuget.org\/packages\/Microsoft.SqlServer.SqlManagementObjects\">Yes<\/a><\/td><td>Yes&nbsp;<a href=\"https:\/\/www.nuget.org\/packages\/Microsoft.SqlServer.SqlManagementObjects\">version 150<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/ssdt\/download-sql-server-data-tools-ssdt\">SQL Server Data Tools (SSDT)<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/ssms\/download-sql-server-management-studio-ssms\">SQL Server Management Studio (SSMS)<\/a><\/td><td>Yes<\/td><td>Yes&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/ssms\/download-sql-server-management-studio-ssms\">version 18.0 and higher<\/a><\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/scripting\/sql-server-powershell\">SQL Server PowerShell<\/a><\/td><td>Yes<\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/tools\/sql-server-profiler\/sql-server-profiler\">SQL Server Profiler<\/a><\/td><td>No &#8211; see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/xevent-db-diff-from-svr\">Extended events<\/a><\/td><td>Yes<\/td><\/tr><tr><td><a href=\"https:\/\/docs.microsoft.com\/en-us\/system-center\/scom\/welcome\">System Center Operations Manager<\/a><\/td><td><a href=\"https:\/\/www.microsoft.com\/download\/details.aspx?id=38829\">Yes<\/a><\/td><td><a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=101203\">Yes<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"migration-methods\"><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/features-comparison#migration-methods\"><\/a>Migration methods<\/h2>\n\n\n\n<p>You can use different migration methods to move your data between SQL Server, Azure SQL Database and Azure SQL Managed Instance. Some methods are&nbsp;<strong>Online<\/strong>&nbsp;and picking-up all changes that are made on the source while you are running migration, while in&nbsp;<strong>Offline<\/strong>&nbsp;methods you need to stop your workload that is modifying data on the source while the migration is in progress.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><strong>Source<\/strong><\/th><th><strong>Azure SQL Database<\/strong><\/th><th><strong>Azure SQL Managed Instance<\/strong><\/th><\/tr><\/thead><tbody><tr><td>SQL Server (on-prem, AzureVM, Amazon RDS)<\/td><td><strong>Online:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Transactional Replication<\/a><br><strong>Offline:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/dma\/dma-overview\">Data Migration Service (DMS)<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP<\/td><td><strong>Online:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/dma\/dma-overview\">Data Migration Service (DMS)<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Transactional Replication<\/a><br><strong>Offline:<\/strong>&nbsp;Native backup\/restore,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Snapshot replication<\/a><\/td><\/tr><tr><td>Single database<\/td><td><strong>Offline:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP<\/td><td><strong>Offline:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP<\/td><\/tr><tr><td>SQL Managed Instance<\/td><td><strong>Online:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Transactional Replication<\/a><br><strong>Offline:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Snapshot replication<\/a><\/td><td><strong>Online:<\/strong>&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Transactional Replication<\/a><br><strong>Offline:<\/strong>&nbsp;Cross-instance point-in-time restore (<a href=\"https:\/\/docs.microsoft.com\/en-us\/powershell\/module\/az.sql\/restore-azsqlinstancedatabase#examples\">Azure PowerShell<\/a>&nbsp;or&nbsp;<a href=\"https:\/\/techcommunity.microsoft.com\/t5\/Azure-SQL-Database\/Cross-instance-point-in-time-restore-in-Azure-SQL-Database\/ba-p\/386208\">Azure CLI<\/a>),&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/restore-sample-database-quickstart\">Native backup\/restore<\/a>,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/data-tier-applications\/import-a-bacpac-file-to-create-a-new-user-database\">BACPAC file (import)<\/a>, BCP,&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/managed-instance\/replication-transactional-overview\">Snapshot replication<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Ref: https:\/\/docs.microsoft.com\/en-us\/azure\/azure-sql\/database\/features-comparison<\/p>\n","protected":false},"excerpt":{"rendered":"<p>APPLIES TO:&nbsp;&nbsp;Azure SQL Database&nbsp;&nbsp;Azure SQL Managed Instance Azure SQL Database and SQL Managed Instance share a common code base with the latest stable version of SQL Server. Most of the standard SQL language, query processing, and database management features are identical. The features that are common between SQL Server and SQL Database or SQL Managed <a class=\"read-more\" href=\"https:\/\/SUMMALAI.COM\/?p=3780\">Read More<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[238,239],"tags":[949,948,950],"class_list":["post-3780","post","type-post","status-publish","format-standard","hentry","category-cloud","category-azure","tag-azure-sql-database","tag-azure-sql-database-and-azure-sql-managed-instance","tag-azure-sql-managed-instance"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/3780","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3780"}],"version-history":[{"count":2,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/3780\/revisions"}],"predecessor-version":[{"id":3782,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/3780\/revisions\/3782"}],"wp:attachment":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3780"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3780"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3780"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}