Partager via


Importer l’exemple de base de données AdventureWorks dans un serveur PostgreSQL avec Azure Arc

AdventureWorks est un exemple de base de données contenant une base de données OLTP utilisée dans des tutoriels et pour des exemples. Il est fourni et géré par Microsoft dans le Dépôt GitHub d’échantillons SQL Server.

Un projet open source a converti la base de données AdventureWorks pour qu’elle soit compatible avec un serveur PostgreSQL avec Azure Arc.

Ce document décrit un processus simple permettant d’importer l’exemple de base de données AdventureWorks dans votre serveur PostgreSQL avec Azure Arc.

Remarque

En tant que fonctionnalité en préversion, la technologie présentée dans cet article est soumise aux conditions d’utilisation supplémentaires des préversions de Microsoft Azure.

Les dernières mises à jour sont disponibles dans les notes de publication.

Télécharger le fichier de sauvegarde AdventureWorks

Téléchargez le fichier .sql AdventureWorks dans votre conteneur du serveur PostgreSQL. Dans cet exemple, nous allons utiliser la commande kubectl exec pour exécuter à distance une commande dans le conteneur du serveur PostgreSQL afin de télécharger le fichier dans le conteneur. Vous pouvez télécharger ce fichier à partir de n’importe quel emplacement accessible par curl. Utilisez cette même méthode si vous avez d’autres fichiers de sauvegarde de base de données que vous souhaitez extraire dans le conteneur du serveur PostgreSQL. Une fois que le fichier se trouve dans le conteneur du serveur PostgreSQL, il est facile de créer la base de données et le schéma, ainsi que de renseigner les données.

Exécutez une commande comme celle-ci pour télécharger le fichier en remplaçant la valeur du nom de pod et du nom d’espace de noms avant de l’exécuter :

Remarque

Pour télécharger le fichier à partir de GitHub, votre conteneur doit disposer d’une connexion Internet sur le port 443.

Remarque

Utilisez le nom pod du nœud coordinateur du serveur PostgreSQL. Son nom est <nom du groupe de serveurs>c-0 (par exemple, postgres01c-0, où c représente le nœud coordinateur). Si vous n’êtes pas sûr du nom de pod, exécutez la commande kubectl get pod

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres  -- /bin/bash -c "cd /tmp && curl -k -O https://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

#Example:
#kubectl exec postgres02-0 -n arc -c postgres -- /bin/bash -c "cd /tmp && curl -k -O hthttps://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"

Importer la base de données AdventureWorks

Vous pouvez également exécuter une commande exec kubectl pour utiliser l’outil d’interface de ligne de commande psql qui est inclus dans les conteneurs de serveurs PostgreSQL afin de créer et charger la base de données.

Exécutez une commande comme celle-ci pour créer la base de données vide, en remplaçant la valeur du nom de pod et du nom d’espace de noms avant de l’exécuter.

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'

Exécutez ensuite une commande comme celle-ci pour importer la base de données en remplaçant la valeur du nom de pod et du nom d’espace de noms avant de l’exécuter.

kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql

Étapes suivantes suggérées