How to provision and deploy relational database services in Azure


Azure offers a wide range of database services, allowing you to run popular database management systems in the cloud, such as SQL Server, PostgreSQL, and MySQL.

Azure database services are completely managed, freeing up important time you’d otherwise spend managing your database. With enterprise-grade performance and built-in high availability, you can expand fast and achieve worldwide distribution without fear of costly downtime. Built-in security with automatic monitoring and threat detection, as well as automatic tuning for increased performance, are among the industry-leading features available to developers. In addition to all of these benefits, you get assured availability.

In this article we are going to explore 3 relational data stores, which are Azure SQL database, PostgreSQL, and MySQL.

For example, just imagine, what if you or your company want to have several different relational stores. So you’ll need to know how to provision Azure SQL Database, PostgreSQL, and MySQL.

First of all we need to understand what is provisioning. Provisioning is the process through which a service provider, such as Azure SQL Database, runs a sequence of operations to establish and configure a service. The service provider will set up the different resources (disks, RAM, CPUs, networks, and so on) required to execute the service behind the scenes. These resources will be given to you, and they will stay allocated to you (and paid to you) until you remove the service.

The procedure by which the service provider allocates resources is unclear, and you should not be concerned about it. All you have to do is set parameters that define the size of the resources needed (how much disk space, memory, computing power, and network bandwidth). These parameters are calculated by predicting the size of the task that will be executed using the service. In many cases, you may change these settings after the service has been created, such as increasing the amount of storage space or RAM if the workload exceeds your expectations. Scaling refers to the act of increasing (or lowering) the resources required by a service.

The below video shows the process that Azure performs when you provision a service.

Azure provides several tools for service provisioning, including:

  • The Azure portal – Before actually creating the service, the Azure portal presents a series of service-specific pages that request you for the appropriate configurations and confirm these values.
  • The Azure command-line interface (CLI) – The CLI is a set of commands that you can run from the command prompt in your operating system or the Cloud Shell in the Azure portal. These commands can be used to build and manage Azure resources.
  • Azure PowerShell – Azure provides a set of commandlets (Azure-specific commands) in PowerShell that you can use to build and manage Azure resources.
  • Azure Resource Manager templates – An Azure Resource Manager template is a text file that specifies the service (or services) that you want to deploy in JSON format (JavaScript Object Notation). The template shown below can be used to provision an instance of Azure SQL Database.


Provisioning Azure SQL Database

Azure SQL Database is one of the most common installations inside Azure relational data services. This video shows how to setup a database and server by provisioning an Azure SQL Database instance.

Provisioning PostgreSQL and MySQL

You can use Azure relational data services to work with other leading relational database providers, such as PostgreSQL and MySQL. These services are known as Azure Database for PostgreSQL and Azure Database for MySQL, respectively.

You can provision a PostgreSQL or MySQL database interactively using the Azure interface, just like you do with Azure SQL Database. Both of these services are available in the Azure Marketplace:


Provisioning Azure Database for PostgreSQL and Azure Database for MySQL are very similar processes.


The hyperscale deployment option allows for:

  • Scaling horizontally across multiple computers. With this feature, the service can add and remove machines as workloads grow and decrease.
  • Parallelization of queries across these servers. The service can divide resource-intensive searches into chunks that can be processed concurrently on separate servers. The findings from each server are combined to give a final result. This method is capable of providing quicker replies to queries involving massive datasets.
  • Excellent support for multi-tenant applications, real-time operational analytics, and transactional workloads with high throughput.

The following information describes the fields and parameters needed for setting up a PostgreSQL or MySQL database service.


  • Subscription – Choose an Azure subscription.
  • Resource Group – Choose an existing resource group or click Create new to create a new one.
  • Server Name Each MySQL or PostgreSQL database must have an unique value that is not currently in use by another database. The name must be between 3 and 31 characters long and contain only lowercase letters, numbers, and the “-” character.
  • Data Source To start a new server from scratch, choose None. If you’re constructing a server from a geo-backup of an existing Azure Database for MySQL server, you can choose Backup.
  • Location – Choose the location closest to you or the region closest to your users.
  • Version – The MySQL or PostgreSQL version to use.
  • Compute + storage – Your new server’s computing, storage, and backup settings. You may pick the resources needed to support your database workloads by clicking the Configure server link.


You can choose between three price categories, each designed to handle a different workload:

  • Basic – This tier is appropriate for applications requiring low computation and I/O performance.
  • General Goal – This price tier is appropriate for corporate applications that demand balanced computing and memory as well as scalable I/O throughput.
  • Optimized Memory – This tier is designed to accommodate high-speed database applications that demand in-memory performance for quicker transaction processing and increased concurrency.
  • The administrator’s username – When connecting to the server, you’ll need to utilize a sign-in account. azure superuser, admin, administrator, root, guest, or public are not valid admin sign-in names.
  • Password – Create a new password for the server administrator account. It must consist between 8 and 128 characters. Your password must contain at least three of the following characters: Uppercase and lowercase letters in English, numerals (0-9), and non-alphanumeric characters (!, $, #, percent, and so on).

Let’s continue this with another article and hope to discuss configuring relational data services and few other topics there.




Please enter your comment!
Please enter your name here