What is SQL Server on Azure Virtual Machines? (Windows)

SQL Server on Azure virtual machines enables you to use full versions of SQL Server in the Cloud without having to manage any on-premises hardware. SQL Server VMs also simplify licensing costs when you pay as you go.

Azure virtual machines run in many different geographic regions around the world. They also offer a variety of machine sizes. The virtual machine image gallery allows you to create a SQL Server VM with the right version, edition, and operating system. This makes virtual machines a good option for a many different SQL Server workloads.

Automated updates

SQL Server Azure VMs can use Automated Patching to schedule a maintenance window for installing important windows and SQL Server updates automatically.

Automated backups

SQL Server Azure VMs can take advantage of Automated Backup, which regularly creates backups of your database to blob storage. You can also manually use this technique. For more information, see Use Azure Storage for SQL Server Backup and Restore.

High availability

If you require high availability, consider configuring SQL Server Availability Groups. This involves multiple SQL Server Azure VMs in a virtual network. You can configure your high availability solution manually, or you can use templates in the Azure portal for automatic configuration. For an overview of all high availability options, see High Availability and Disaster Recovery for SQL Server in Azure Virtual Machines.

Performance

Azure virtual machines offer different machine sizes to meet various workload demands. SQL VMs also provide automated storage configuration, which is optimized for your performance requirements. For more information about configuring storage for SQL VMs, see Storage configuration for SQL Server VMs. To fine-tune performance, see the Performance best practices for SQL Server in Azure Virtual Machines.

Get started with SQL VMs

To get started, choose a SQL Server virtual machine image with your required version, edition, and operating system. The following sections provide direct links to the Azure portal for the SQL Server virtual machine gallery images.

Tip

For more information about how to understand pricing for SQL images, see Pricing guidance for SQL Server Azure VMs.

Pay as you go

The following table provides a matrix of pay-as-you-go SQL Server images.

Version Operating System Edition
SQL Server 2017 Windows Server 2016 Enterprise, Standard, Web, Express, Developer
SQL Server 2016 SP2 Windows Server 2016 Enterprise, Standard, Web, Express, Developer
SQL Server 2014 SP2 Windows Server 2012 R2 Enterprise, Standard, Web, Express
SQL Server 2012 SP4 Windows Server 2012 R2 Enterprise, Standard, Web, Express
SQL Server 2008 R2 SP3 Windows Server 2008 R2 Enterprise, Standard, Web, Express

To see the available Linux SQL Server virtual machine images, see Overview of SQL Server on Azure Virtual Machines (Linux).

Note

It is now possible to change the licensing model of a pay-per-usage SQL Server VM to use your own license. For more information, see How to change the licensing model for a SQL VM.

Bring your own license

You can also bring your own license (BYOL). In this scenario, you only pay for the VM without any additional charges for SQL Server licensing. Bringing your own license can save you money over time for continuous production workloads. For requirements to use this option, see Pricing guidance for SQL Server Azure VMs.

To bring your own license, you can either convert an existing pay-per-usage SQL VM, or you can deploy an image with the prefixed {BYOL}. For more information about switching your licensing model between pay-per-usage and BYOL, see How to change the licensing model for a SQL VM.

Version Operating system Edition
SQL Server 2017 Windows Server 2016 Enterprise BYOL, Standard BYOL
SQL Server 2016 SP2 Windows Server 2016 Enterprise BYOL, Standard BYOL
SQL Server 2014 SP2 Windows Server 2012 R2 Enterprise BYOL, Standard BYOL
SQL Server 2012 SP4 Windows Server 2012 R2 Enterprise BYOL, Standard BYOL

It is possible to deploy an older image of SQL Server that is not available in the Azure portal using PowerShell. To view all available images using Powershell, use the following command:

Get-AzVMImageOffer -Location $Location -Publisher 'MicrosoftSQLServer'

For more information about deploying SQL Server VMs using PowerShell, view How to provision SQL Server virtual machines with Azure PowerShell.

Connect to the VM

After creating your SQL Server VM, connect to it from applications or tools, such as SQL Server Management Studio (SSMS). For instructions, see Connect to a SQL Server Virtual Machine on Azure.

Migrate your data

If you have an existing database, you'll want to move that to the newly provisioned SQL VM. For a list of migration options and guidance, see Migrating a Database to SQL Server on an Azure VM.

Create and manage Azure SQL resources with the Azure portal

The Azure portal provides a single page where you can manage all of your Azure SQL resources including your SQL virtual machines.

To access the Azure SQL resources page, select Azure SQL in the left-hand menu of the Azure portal. If Azure SQL is not in the list, select All services, then type Azure SQL in the search box.

Note

Azure SQL provides a quick and easy way to access all of your SQL databases, elastic pools, database servers, SQL managed instances, and SQL virtual machines. Azure SQL is not a service or resource.

To manage existing resources, select the desired item in the list. To create new Azure SQL resources, select + Add.

Azure SQL portal page

After selecting + Add, view additional information about the different options by selecting Show details on any tile.

databases tile details

For details, see:

SQL VM image refresh policy

Azure only maintains one virtual machine image for each supported operating system, version, and edition combination. This means that over time images are refreshed, and older images are removed. For more information, see the Images section of the SQL Server VMs FAQ.

Customer experience improvement program (CEIP)

The Customer Experience Improvement Program (CEIP) is enabled by default. This periodically sends reports to Microsoft to help improve SQL Server. There is no management task required with CEIP unless you want to disable it after provisioning. You can customize or disable the CEIP by connecting to the VM with remote desktop. Then run the SQL Server Error and Usage Reporting utility. Follow the instructions to disable reporting. For more information about data collection, see the SQL Server Privacy Statement.

Windows Virtual Machines

Storage

Networking

SQL

Next steps

Get started with SQL Server on Azure virtual machines:

Get answers to commonly asked questions about SQL VMs: