Editor's Note: Today's post comes from Rick Byham, Sr. Technical Writer in our Customer Experience team. This post provides an overview of the detailed guidance document linked at the bottom.
SQL Server running on a VM is a fully capable instance of SQL Server, just like an on-premises version. As it is a full version of the on-premises version of SQL Server 2012, many applications will work without modifications. And since it is running on Windows Azure, you receive the benefits of expanding capacity without incurring hardware costs. What’s great is that all on-premises SQL Server database developers are already knowledgeable about the features and capabilities.
Microsoft makes it easy to try out a Windows Azure virtual machine by providing a library of virtual machine’s, including a virtual machine that is already provisioned with SQL Server 2012 Evaluation Edition.
The basic setup is quite simple. Visit the Windows Azure portal, obtain an account if you don’t already have one, and then visit the library and select the Virtual Machine that contains SQL Server 2012 Evaluation Edition running on Windows Server 2008 R2. During the provisioning process you are asked for some basic information such as the name of the virtual machine and the password for the local Administrator user. You can accept the default values or customize items such as the size of the VM and Windows Azure affinity groups.
The Virtual Machine will take a few minutes to provision, during which the system will create the Virtual Machine, start it, rename it to the name you specified, and restart the Virtual Machine under the new name. SQL Server will automatically prepare itself, performing actions such as renaming the instance of SQL Server to match the VM name. After the VM is up and running, you can connect to it using remote desktop for further customization. Typical next steps are to configure the Database Engine to listen on TCP/IP, to change the Database Engine to mixed mode authentication, and to create one or more SQL Server logins. Because this virtual machine is not joined to your domain, you won’t be able to use Windows Authentication when connecting to the Database Engine from a client, unless it is running on the VM. When provisioning is complete, move your database onto the Virtual Machine instance of SQL Server by using one of several techniques, such as restoring a backup.
There are a couple of tricky areas that require special attention. The VM is provisioned with an endpoint for the remote desktop connection, but you will want to add an additional endpoint for database communication. And the Windows Firewall on the VM is enabled so you will want to add a firewall rule to allow connections from the VM endpoint to the TCP port used by the Database Engine. Here is a graphic describing the connection process.
To help you understand the process and ensure you don’t miss any steps, we have created a step-by-step tutorial that walks you through it. Start the tutorial here - Provisioning a SQL Server Virtual Machine on Windows Azure.