Didacticiel : Créer une base de données Azure Database pour MySQL à l’aide d’Azure CLI
S’APPLIQUE À : Azure Database pour MySQL - Serveur unique
Important
Le serveur unique Azure Database pour MySQL est en voie de mise hors service. Nous vous conseillons vivement de procéder à une mise à niveau vers Azure Database pour MySQL – Serveur flexible. Pour obtenir plus d’informations sur la migration vers Azure Database pour MySQL – Serveur flexible, consultez Qu’en est-il du Serveur unique Azure Database pour MySQL ?
Azure Database pour MySQL est un service de base de données relationnelle dans le cloud de Microsoft basé sur le moteur de base de données MySQL Community Edition. Dans ce didacticiel, vous allez utiliser l’interface Azure CLI (interface de ligne de commande) et d’autres utilitaires pour apprendre à :
- Créer une base de données Azure pour MySQL
- Configurer le pare-feu du serveur
- Utiliser l’outil de ligne de commande mysql pour créer une base de données
- Charger un exemple de données
- Interroger des données
- Mettre à jour des données
- Restaurer des données
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
Prérequis
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- Cet article nécessite la version 2.0 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Si vous possédez plusieurs abonnements, sélectionnez l’abonnement approprié dans lequel la ressource existe ou est facturée. Sélectionnez un ID d’abonnement spécifique sous votre compte à l’aide de la commande az account set.
az account set --subscription 00000000-0000-0000-0000-000000000000
Créer un groupe de ressources
Créez un groupe de ressources Azure avec la commande az group create. Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées en tant que groupe.
L’exemple suivant crée un groupe de ressources nommé myresourcegroup
à l’emplacement westus
.
az group create --name myresourcegroup --location westus
Création d’un serveur Azure Database pour MySQL
Créez un serveur Azure Database pour MySQL avec la commande az sql server create. Un serveur peut gérer plusieurs bases de données. En règle générale, une base de données distincte est utilisée pour chaque projet ou pour chaque utilisateur.
L’exemple suivant crée un serveur Azure Database pour MySQL situé dans westus
dans le groupe de ressources myresourcegroup
avec le nom mydemoserver
. Le serveur dispose d’un utilisateur administrateur avec le nom myadmin
. Il s’agit d’un serveur à usage général, de 5e génération avec 2 vCores. Remplacez <server_admin_password>
par votre propre valeur.
az mysql server create --resource-group myresourcegroup --name mydemoserver --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2 --version 5.7
La valeur du paramètre sku-name suit la convention {tarification}_{génération de calcul}_{vCores} comme dans les exemples ci-dessous :
--sku-name B_Gen5_2
correspond à De base, Gen 5 et 2 vCores.--sku-name GP_Gen5_32
correspond à Usage général, Gen 5 et 32 vCores.--sku-name MO_Gen5_2
correspond à Mémoire optimisée, Gen 5 et 2 vCores.
Consultez la documentation des niveaux tarifaires pour comprendre les valeurs valides par région et par niveau.
Important
La connexion d’administrateur serveur et le mot de passe que vous spécifiez ici seront requis plus loin dans ce guide de démarrage rapide pour la connexion au serveur et à ses bases de données. Retenez ou enregistrez ces informations pour une utilisation ultérieure.
Configurer une règle de pare-feu
Créez une règle de pare-feu au niveau du serveur Azure Database pour MySQL avec la commande az mysql server firewall-rule create. Une règle de pare-feu au niveau du serveur permet à une application externe, comme l’outil de ligne de commande mysql ou MySQL Workbench de se connecter à votre serveur via le pare-feu du service Azure MySQL.
L’exemple suivant crée une règle de pare-feu appelée AllowMyIP
qui autorise les connexions d’une adresse IP spécifique, 192.168.0.1. Remplacez l’adresse ou la plage d’adresses IP qui correspondent à l’emplacement de votre connexion.
az mysql server firewall-rule create --resource-group myresourcegroup --server mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1
Obtenir les informations de connexion
Pour vous connecter à votre serveur, vous devez fournir des informations sur l’hôte et des informations d’identification pour l’accès.
az mysql server show --resource-group myresourcegroup --name mydemoserver
Le résultat est au format JSON. Notez les valeurs fullyQualifiedDomainName et administratorLogin.
{
"administratorLogin": "myadmin",
"administratorLoginPassword": null,
"fullyQualifiedDomainName": "mydemoserver.mysql.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/servers/mydemoserver",
"location": "westus",
"name": "mydemoserver",
"resourceGroup": "myresourcegroup",
"sku": {
"capacity": 2,
"family": "Gen5",
"name": "GP_Gen5_2",
"size": null,
"tier": "GeneralPurpose"
},
"sslEnforcement": "Enabled",
"storageProfile": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled",
"storageMb": 5120
},
"tags": null,
"type": "Microsoft.DBforMySQL/servers",
"userVisibleState": "Ready",
"version": "5.7"
}
Se connecter au serveur à l’aide de mysql
Utilisez l’outil de ligne de commande mysql pour établir une connexion à votre serveur Azure Database pour MySQL. Dans cet exemple, la commande est :
mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
Créer une base de données vide
Une fois que vous êtes connecté au serveur, créez une base de données vide.
mysql> CREATE DATABASE mysampledb;
À l’invite, exécutez la commande suivante pour basculer la connexion sur la base de données nouvellement créée :
mysql> USE mysampledb;
Créer des tables dans la base de données
Maintenant que vous savez vous connecter à la base de données Azure Database pour MySQL, effectuez certaines tâches de base.
Tout d’abord, créez une table et chargez-y des données. Nous allons créer une table qui stocke des données d’inventaire.
CREATE TABLE inventory (
id serial PRIMARY KEY,
name VARCHAR(50),
quantity INTEGER
);
Charger des données dans les tables
Maintenant que vous disposez d’une table, insérez-y des données. Dans la fenêtre d’invite de commandes ouverte, exécutez la requête suivante pour insérer des lignes de données.
INSERT INTO inventory (id, name, quantity) VALUES (1, 'banana', 150);
INSERT INTO inventory (id, name, quantity) VALUES (2, 'orange', 154);
Vous avez maintenant chargé deux lignes de données dans la table que vous avez créée précédemment.
Interroger et mettre à jour les données des tables
Exécutez la requête suivante pour récupérer des informations à partir de la table de base de données.
SELECT * FROM inventory;
Vous pouvez également mettre à jour les données des tables.
UPDATE inventory SET quantity = 200 WHERE name = 'banana';
La ligne est mise à jour en conséquence lorsque vous récupérez les données.
SELECT * FROM inventory;
Restaurer une version antérieure d’une base de données
Imaginez que vous avez supprimé cette table par erreur. Il s’agit de quelque chose que vous ne pouvez pas récupérer facilement. La base de données Azure pour MySQL vous permet de revenir à n’importe quel moment dans le temps au cours de ces 35 derniers jours et de procéder à une restauration à ce point dans le temps vers un nouveau serveur. Vous pouvez alors utiliser ce nouveau serveur pour récupérer les données supprimées. Les étapes suivantes restaurent le serveur à l’état dans lequel il était avant l’ajout de la table.
Pour effectuer la restauration, vous avez besoin des informations suivantes :
- Point de restauration : sélectionnez un point dans le temps avant la modification du serveur. Doit être supérieure ou égale à la plus ancienne valeur de sauvegarde de la base de données source.
- Serveur cible : spécifiez un nouveau nom de serveur sur lequel vous souhaitez effectuer la restauration
- Serveur source : indiquez le nom du serveur à partir duquel vous voulez effectuer la restauration
- Emplacement : vous ne pouvez pas sélectionner la région. Par défaut, elle est identique à celle du serveur source
az mysql server restore --resource-group myresourcegroup --name mydemoserver-restored --restore-point-in-time "2017-05-4 03:10" --source-server-name mydemoserver
La commande az mysql server restore
a besoin des paramètres suivants :
Paramètre | Valeur suggérée | Description |
---|---|---|
resource-group | myResourceGroup | Groupe de ressources dans lequel se trouve le serveur source. |
name | mydemoserver-restored | Nom du serveur créé par la commande de restauration. |
restore-point-in-time | 2017-04-13T13:59:00Z | Choisissez la date et l’heure à utiliser pour la restauration. Elles doivent être comprises dans la période de rétention de la sauvegarde du serveur source. Utilisez le format de date et d’heure ISO8601. Par exemple, vous pouvez utiliser votre fuseau horaire local, comme 2017-04-13T05:59:00-08:00 , ou le format UTC Zulu 2017-04-13T13:59:00Z . |
source-server | mydemoserver | Nom ou identifiant du serveur source à partir duquel la restauration s’effectuera. |
La restauration d’un serveur à un point antérieur dans le temps entraîne la création d’un nouveau serveur, qui est la copie du serveur d’origine tel qu’il était à l’instant spécifié. Les valeurs d’emplacement et de niveau tarifaire du serveur restauré sont les mêmes que celles du serveur source.
La commande est synchrone ; elle est renvoyée après la restauration du serveur. Une fois la restauration terminée, recherchez le serveur créé. Vérifiez que les données ont été restaurées comme prévu.
Nettoyer les ressources
Si vous n’avez pas besoin de ces ressources pour un autre guide de démarrage rapide ou didacticiel, vous pouvez les supprimer en exécutant la commande suivante :
az group delete --name myresourcegroup
Si vous souhaitez simplement supprimer le serveur nouvellement créé, vous pouvez exécuter la commande az mysql server delete.
az mysql server delete --resource-group myresourcegroup --name mydemoserver
Étapes suivantes
Dans ce didacticiel, vous avez appris à effectuer les opérations suivantes :
- Création d’un serveur Azure Database pour MySQL
- Configurer le pare-feu du serveur
- Utiliser l’outil en ligne de commande mysql pour créer une base de données
- Charger un exemple de données
- Interroger des données
- Mettre à jour des données
- Restaurer des données
Azure Database for MySQL - Azure CLI samples (Base de données Azure pour MySQL - Exemples avec Azure CLI)