Applies to: Azure SQL Managed Instance
This article provides an overview of Azure SQL Managed Instance, a fully managed platform as a service (PaaS) database engine that handles most database management functions such as upgrading, patching, backups, and monitoring without user involvement.
Azure SQL Managed Instance is a scalable cloud database service that's always running on the latest stable version of the Microsoft SQL Server database engine and a patched OS with 99.99% built-in high availability, offering close to 100% feature compatibility with SQL Server. PaaS capabilities built into Azure SQL Managed enable you to focus on domain-specific database administration and optimization activities that are critical for your business while Microsoft handles backups, as well as patching and updating of the SQL and operating system code, which removes the burden on managing the underlying infrastructure.
If you're new to Azure SQL Managed Instance, check out the Azure SQL Managed Instance video from our in-depth Azure SQL video series:
OverviewAzure SQL Managed Instance is a PaaS service that has near 100% compatibility with the latest Enterprise Edition SQL Server database engine, providing a native virtual network (VNet) implementation that addresses common security concerns, and a business model favorable to existing SQL Server customers. SQL Managed Instance allows existing SQL Server customers to lift and shift their on-premises applications to the cloud with minimal application and database changes. At the same time, SQL Managed Instance provides all PaaS capabilities (automatic patching and version updates, automated backups, high availability) to drastically reduce management overhead and the total cost of ownership (TCO).
SQL Managed Instance is designed for customers looking to migrate a large number of apps from an on-premises or IaaS, self-built, or ISV provided environment to a fully managed PaaS cloud environment, with as low a migration effort as possible. Using the fully automated Azure Data Migration Service, or the Managed Instance link, customers can lift and shift their existing SQL Server database or SQL Server instance to Azure SQL Managed Instance, which offers compatibility with SQL Server and complete isolation of customer instances with native VNet support.
With Software Assurance, you can exchange your existing licenses for discounted rates on SQL Managed Instance using the Azure Hybrid Benefit for SQL Server. SQL Managed Instance is the best migration destination in the cloud for SQL Server instances that require high security and a rich programmability surface.
For more information on migration options and tools, see Migration overview: SQL Server to Azure SQL Managed Instance.
The following diagram outlines key benefits of SQL Managed Instance:
Important
For a list of regions where SQL Managed Instance is currently available, see Supported regions.
Key features and capabilitiesSQL Managed Instance runs with all of the features of the most recent version of SQL Server, including online operations, automatic plan corrections, and other enterprise performance enhancements. For details about the SQL Server features available in Azure SQL Managed Instance, review feature comparison.
The following table provides key capabilities of Azure SQL Managed Instance:
Important
Azure SQL Managed Instance has been certified against a number of compliance standards. For more information, see the Microsoft Azure Compliance Offerings, where you can find the most current list of SQL Managed Instance compliance certifications, listed under SQL Database.
The following table shows characteristics of SQL Managed Instance:
Feature Description Azure portal management Yes SQL Server version/build The latest stable SQL Server database engine 1 Managed automated backups Yes Automatic software patching Yes The latest database engine features Yes Built-in instance and database monitoring and metrics Yes SQL Server agent jobs Yes Number of data files (ROWS) per the database Multiple Number of log files (LOG) per database 1 VNet - Azure Resource Manager deployment Yes VNet - Classic deployment model No1 Based on the Always-up-to-date update policy. Instances configured with the SQL Server 2022 update policy have updates from the latest stable SQL Server 2022 database engine.
Supported SQL featuresAzure SQL Managed Instance aims to deliver close to 100% surface area compatibility with the latest SQL Server version through a staged release plan, which means that most features of SQL Server are also compatible with SQL Managed Instance.
SQL Managed Instance supports backward compatibility to SQL Server 2008 databases. Direct migration from SQL Server 2005 is supported, and the compatibility level for migrated SQL Server 2005 databases is updated to SQL Server 2008.
The following briefly lists SQL Server features that are compatible with Azure SQL Managed Instance:
For a comprehensive list of SQL Server and Azure SQL Managed Instance features, review features comparison.
For a list of T-SQL differences between SQL Managed Instance and SQL Server, review SQL Managed Instance T-SQL differences from SQL Server.
Note
Some SQL Managed Instance feature availability depends on the configured update policy.
Key differences between SQL Server on-premises and SQL Managed InstanceSQL Managed Instance benefits from being always-up-to-date in the cloud, which means that some features in SQL Server might be obsolete, retired, or have alternatives. There are specific cases when tools need to recognize that a particular feature works in a slightly different way or that the service is running in an environment you don't fully control.
Some key differences:
copy-only
backups that don't interfere with the automatic backup chain.Azure SQL Managed Instance doesn't have the Business Intelligence suite natively built-in, but you can use the following services:
SQL Managed Instance enables system administrators to spend less time on administrative tasks because the service either performs them for you or greatly simplifies those tasks. For example, OS/RDBMS installation and patching, dynamic instance resizing and configuration, backups, database replication (including system databases), high availability configuration, and configuration of health and performance monitoring data streams.
For more information, see a list of supported and unsupported SQL Managed Instance features, and T-SQL differences between SQL Managed Instance and SQL Server.
Save on costsAs with any Azure service, when you use Azure SQL Managed Instance, you are billed for the compute, storage, and license your product uses.
SQL Managed Instance offers several ways to save on costs:
The vCore-based purchasing model for SQL Managed Instance gives you flexibility, control, transparency, and a straightforward way to translate on-premises workload requirements to the cloud. This model allows you to change compute, memory, and storage based upon your workload needs. The vCore model is also eligible for up to 55 percent savings with the Azure Hybrid Benefit for SQL Server.
In the vCore model, you can choose hardware configurations as follows:
Additionally, with the Next-gen General Purpose service tier (preview), you can choose the amount of memory to allocate to your instance when you use the flexible memory (preview) feature.
Find more information about the difference between hardware configurations in SQL Managed Instance resource limits.
Service tiersThe service tier generally defines the storage architecture, space and I/O limits, and business continuity options related to availability and disaster recovery.
SQL Managed Instance is available in two service tiers:
By default, Azure SQL Managed Instance achieves availability through local redundancy, making your instance available during maintenance operations, issues with data center outages, and other problems with the SQL database engine. However, to minimize a potential outage to an entire zone impacting your data, you can achieve high availability by enabling zone redundancy. Without zone redundancy, failovers happen locally within the same data center, which might result in your instance being unavailable until the outage is resolved - the only way to recover is through a disaster recovery solution, such as through a failover group, or a geo-restore of a geo-redundant backup.
Managed Instance linkThe Managed Instance link uses distributed availability group technology to synchronize databases between SQL Server and Azure SQL Managed Instance, unlocking a number of scenarios, such as:
With Azure SQL Managed Instance, you can save on vCore licensing costs by designating a secondary replica for disaster recovery (DR) only. To learn more, review License-free DR benefit.
Advanced security and complianceSQL Managed Instance comes with advanced security features provided by the Azure platform and the SQL Server database engine.
Security isolationSQL Managed Instance provides additional security isolation from other tenants on the Azure platform. Security isolation includes:
The following diagram outlines various connectivity options for your applications:
To learn more details about VNet integration and networking policy enforcement at the subnet level, see VNet architecture for managed instances and Connect your application to a managed instance.
Important
Place multiple managed instances in the same subnet, wherever that is allowed by your security requirements, as that will bring you additional benefits. Co-locating instances in the same subnet significantly simplifies networking infrastructure maintenance and reduces instance provisioning time, since a long provisioning duration is associated with the cost of deploying the first managed instance in a subnet.
Security featuresAzure SQL Managed Instance provides a set of advanced security features that can be used to protect your data.
Migration of an encrypted database to SQL Managed Instance is supported via Azure Database Migration Service or native restore. If you plan to migrate an encrypted database using native restore, migration of the existing TDE certificate from the SQL Server instance to SQL Managed Instance is a required step. For more information about migration options, see SQL Server to Azure SQL Managed Instance Guide.
Microsoft Entra integrationSQL Managed Instance supports traditional SQL Server database engine logins and logins integrated with Microsoft Entra ID (formerly Azure Active Directory). Microsoft Entra server principals (logins) are an Azure cloud version of on-premises database logins that use in your on-premises environment. Microsoft Entra server principals (logins) enable you to specify users and groups from your Microsoft Entra tenant as true instance-scoped principals, capable of performing any instance-level operation, including cross-database queries within the same managed instance.
SQL Managed Instance enables you to centrally manage identities of database users and other Microsoft services with Microsoft Entra integration. This capability simplifies permission management and enhances security. Microsoft Entra ID supports multifactor authentication to increase data and application security while supporting a single sign-on process.
A new syntax is introduced to create Microsoft Entra server principals (logins), FROM EXTERNAL PROVIDER. For more information on the syntax, see CREATE LOGIN, and review the Provision a Microsoft Entra administrator for SQL Managed Instance article.
AuthenticationSQL Managed Instance authentication refers to how users prove their identity when connecting to the database. SQL Managed Instance supports three types of authentication:
Authorization refers to what a user can do within a database in Azure SQL Managed Instance, and is controlled by your user account's database role memberships and object-level permissions. SQL Managed Instance has the same authorization capabilities as SQL Server 2022.
Database migrationSQL Managed Instance targets user scenarios with mass database migration from on-premises or IaaS database implementations. SQL Managed Instance supports several database migration options that are discussed in the migration guides. See Migration overview: SQL Server to Azure SQL Managed Instance for more information.
Back up and restoreThe migration approach uses SQL backups to Azure Blob storage. Backups stored in Azure Blob Storage can be directly restored into a managed instance using the T-SQL RESTORE command.
Important
Backups from a managed instance can only be restored to other managed instances, or to SQL Server 2022. They cannot be restored to other versions of SQL Server, or to Azure SQL Database.
Database Migration ServiceAzure Database Migration Service is a fully managed service designed to enable seamless migrations from multiple database sources to Azure data platforms with minimal downtime. This service streamlines the tasks required to move existing third-party and SQL Server databases to Azure SQL Database, Azure SQL Managed Instance, and SQL Server on Azure VM. See How to migrate your on-premises database to SQL Managed Instance using Database Migration Service.
Managed Instance linkThe Managed Instance link uses distributed availability groups to extend your SQL Server on-premises Always On availability group hosted anywhere to Azure SQL Managed Instance in a safe and secure manner, replicating data in near real-time.
The link feature facilitates migrating from SQL Server to SQL Managed Instance, which enables:
Because the link feature enables minimal downtime migration, you can migrate to your managed instance as you maintain your primary workload online. Although it's currently possible to achieve online migrations to the General Purpose service tier with other solutions, the link feature is the only solution that allows true online migrations to the Business Critical tier.
Management operationsAzure SQL Managed Instance provides management operations that you can use to automatically deploy new managed instances, update instance properties, and delete instances when no longer needed. Detailed explanation of management operations can be found in management operations.
Programmatically identify a managed instanceThe following table shows several properties, accessible through Transact-SQL, that you can use to detect that your application is working with SQL Managed Instance and retrieve important properties.
Property Value Comment@@VERSION
Microsoft SQL Azure (RTM) - 12.0.2000.8 2018-03-07 Copyright (C) 2018 Microsoft Corporation. This value is same as in SQL Database. This does not indicate SQL engine version 12 (SQL Server 2014). SQL Managed Instance always runs the latest stable SQL engine version, which is equal to or higher than latest available RTM version of SQL Server. SERVERPROPERTY('Edition')
SQL Azure This value is same as in SQL Database. SERVERPROPERTY('EngineEdition')
8 This value uniquely identifies a managed instance. @@SERVERNAME
, SERVERPROPERTY('ServerName')
Full instance DNS name in the following format:<instanceName>
.<dnsPrefix>
.database.windows.net, where <instanceName>
is name provided by the customer, while <dnsPrefix>
is autogenerated part of the name guaranteeing global DNS name uniqueness ("wcus17662feb9ce98", for example) Example: my-managed-instance.wcus17662feb9ce98.database.windows.net SERVERPROPERTY('ProductUpdateType')
CU, or Continuous Update cadence the instance follows. Corresponds to the Azure SQL Managed Instance update policy.
CU = Updates are deployed via cumulative updates (CUs) for the corresponding major SQL Server release (SQL Server 2022 update policy).
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4