Partager via


Démarrage rapide : Créer une base de données unique dans Azure SQL Database à l’aide d’un modèle ARM

S’applique à : Azure SQL Database

La création d’une base de données unique est la méthode la plus rapide et la plus simple pour créer une base de données dans Azure SQL Database. Ce guide de démarrage rapide montre comment créer une base de données unique à l’aide d’un modèle Azure Resource Manager (modèle ARM).

Un modèle ARM est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Dans la syntaxe déclarative, vous décrivez le déploiement souhaité sans écrire la séquence de commandes de programmation pour créer le déploiement.

Si votre environnement remplit les prérequis et que vous êtes déjà familiarisé avec l’utilisation des modèles ARM, sélectionnez le bouton Déployer sur Azure. Le modèle s’ouvre dans le portail Azure.

Déployer sur Azure

Prérequis

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit.

autorisations

Pour créer des bases de données via Transact-SQL : CREATE DATABASE des autorisations sont nécessaires. Pour créer une base de données, un login doit être soit le login administrateur du serveur (créé lorsque le serveur logique base de données Azure SQL a été provisionné), l'administrateur Microsoft Entra du serveur, un membre du rôle de base de données dbmanager dans master. Pour plus d’informations, consultez CREATE DATABASE.

Pour créer des bases de données via le portail Azure, PowerShell, Azure CLI ou API REST : Des autorisations Azure RBAC sont nécessaires, en particulier le Contributeur, Contributeur SQL DB ou Contributeur SQL Server Azure rôle RBAC. Pour plus d’informations, consultez Azure RBAC : pour les ressources Azure.

Vérifier le modèle

Une base de données comprend un ensemble défini de ressources (capacité de calcul, mémoire, E/S et stockage) qui varient selon l’un des deux modèles d’achat choisi. Quand vous créez une base de données unique, vous définissez également un serveur pour la gérer et la placer dans le groupe de ressources Azure d’une région spécifiée.

Le modèle utilisé dans ce démarrage rapide est tiré des modèles de démarrage rapide Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.12.40.16777",
      "templateHash": "16856611863128783179"
    }
  },
  "parameters": {
    "serverName": {
      "type": "string",
      "defaultValue": "[uniqueString('sql', resourceGroup().id)]",
      "metadata": {
        "description": "The name of the SQL logical server."
      }
    },
    "sqlDBName": {
      "type": "string",
      "defaultValue": "SampleDB",
      "metadata": {
        "description": "The name of the SQL Database."
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    },
    "administratorLogin": {
      "type": "string",
      "metadata": {
        "description": "The administrator username of the SQL logical server."
      }
    },
    "administratorLoginPassword": {
      "type": "secureString",
      "metadata": {
        "description": "The administrator password of the SQL logical server."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.Sql/servers",
      "apiVersion": "2022-05-01-preview",
      "name": "[parameters('serverName')]",
      "location": "[parameters('location')]",
      "properties": {
        "administratorLogin": "[parameters('administratorLogin')]",
        "administratorLoginPassword": "[parameters('administratorLoginPassword')]"
      }
    },
    {
      "type": "Microsoft.Sql/servers/databases",
      "apiVersion": "2022-05-01-preview",
      "name": "[format('{0}/{1}', parameters('serverName'), parameters('sqlDBName'))]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard",
        "tier": "Standard"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', parameters('serverName'))]"
      ]
    }
  ]
}

Ces ressources Azure sont définies dans le modèle :

Vous trouverez d’autres exemples de modèles Azure SQL Database dans Modèles de démarrage rapide Azure.

Déployer le modèle

Sélectionnez Essayer à partir du bloc de code PowerShell suivant pour ouvrir Azure Cloud Shell.

$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names"
$location = Read-Host -Prompt "Enter an Azure location (i.e. centralus)"
$adminUser = Read-Host -Prompt "Enter the SQL server administrator username"
$adminPassword = Read-Host -Prompt "Enter the SQL Server administrator password" -AsSecureString

$resourceGroupName = "${projectName}rg"

New-AzResourceGroup -Name $resourceGroupName -Location $location
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.sql/sql-database/azuredeploy.json" -administratorLogin $adminUser -administratorLoginPassword $adminPassword

Read-Host -Prompt "Press [ENTER] to continue ..."

Valider le déploiement

Pour interroger la base de données, consultez Interroger la base de données.

Nettoyer les ressources

Conservez ce groupe de ressources, ce serveur et cette base de données unique si vous le souhaitez. Vous pouvez maintenant vous connecter et interroger votre base de données à l'aide de différentes méthodes.

  1. Créez une règle de pare-feu au niveau du serveur pour vous connecter à la base de données unique à l’aide d’outils locaux ou à distance. Pour plus d’informations, consultez Créer une règle de pare-feu au niveau du serveur.
  2. Après avoir créé une règle de pare-feu au niveau du serveur, connectez et interrogez votre base de données à l’aide de plusieurs outils et langues différents :

Si vous voulez supprimer le groupe de ressources : 

$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
Remove-AzResourceGroup -Name $resourceGroupName