Tutoriel : Configurer des bases de données en miroir Microsoft Fabric à partir d'Azure SQL Managed Instance (version préliminaire)
La mise en miroir dans Fabric est une technologie SaaS d’entreprise, basée sur le cloud, sans ETS. Dans cette section, vous apprenez à créer une base de données Azure SQL Managed Instance en miroir, qui représente une copie en lecture seule et répliquée en continu de la base de données choisie à partir de votre instance Azure SQL Managed Instance dans OneLake.
Prérequis
- Créez ou utilisez une Azure SQL Managed Instance existante.
- La politique de mise à jour de l'Azure SQL Managed Instance source doit être configurée sur « Toujours à jour »
- L’Azure SQL Managed Instance source peut être une instance gérée SQL unique ou une instance gérée SQL appartenant à un pool d’instances.
- Si vous ne disposez pas d’une Azure SQL Managed Instance, vous pouvez créer une nouvelle instance gérée SQL. Vous pouvez utiliser l’offre gratuite Azure SQL Managed Instance si vous le souhaitez.
- Pendant la préversion actuelle, nous vous recommandons d’utiliser une copie de l’une de vos bases de données existantes ou de toute base de données de test ou de développement existante que vous pouvez récupérer rapidement à partir d’une sauvegarde. Si vous souhaitez utiliser une base de données à partir d’une sauvegarde existante, consultez Restaurer une base de données à partir d’une sauvegarde dans Azure SQL Managed Instance.
- Vous avez besoin d’une capacité existante pour Fabric. Si ce n’est pas le cas, démarrez une version d’évaluation de Fabric.
- La capacité Fabric doit être active et en cours d’exécution. Une capacité interrompue ou supprimée affecte la mise en miroir et aucune donnée n'est répliquée.
- Activez le paramètre du locataire Fabric Les mandants de service peuvent utiliser les API Fabric. Pour savoir comment activer les paramètres du locataire, consultez À propos des paramètres du locataire.
- Configuration réseau requise pour que Fabric puisse accéder à votre Azure SQL Managed Instance :
- Dans l’aperçu actuel, la mise en miroir nécessite que votre Azure SQL Managed Instance dispose d’un point de terminaison public qui doit être accessible à partir des balises de service Azure Cloud ou Power BI. Pour plus d’informations, consultez Utiliser Azure SQL Managed Instance en toute sécurité avec des points de terminaison publics pour savoir comment exécuter en toute sécurité un point de terminaison public pour Azure SQL Managed Instance.
Activez l'identité gérée attribuée par le système (SAMI) de votre Azure SQL Managed Instance
L’identité gérée attribuée par le système (SAMI) de votre Azure SQL Managed Instance doit être activée et doit être l’identité principale pour publier des données sur Fabric OneLake.
- Pour configurer ou vérifier que SAMI est activé, accédez à votre Azure SQL Managed Instance dans le Portail Microsoft Azure. Dans le menu Ressources, sous Sécurité, sélectionnez Identité.
- Sous Identité managée affectée par le système, définissez État sur Activé.
- Le SAMI doit être l’identité principale. Vérifiez que SAMI est l’identité principale avec la requête T-SQL suivante :
SELECT * FROM sys.dm_server_managed_identities;
Principal de base de données pour Fabric
Ensuite, vous devez créer un moyen pour que le service Fabric se connecte à votre Azure SQL Managed Instance.
Pour ce faire, vous pouvez utiliser un utilisateur de base de données mappé et de connexion. En suivant le principe du moindre privilège pour la sécurité, vous ne devez accorder l'autorisation CONTROL DATABASE que dans la base de données que vous souhaitez mettre en miroir.
Utiliser un utilisateur de base de données mappé et de connexion
Connectez-vous à votre Azure SQL Managed Instance à l’aide de SQL Server Management Studio (SSMS) ou Azure Data Studio. Connectez-vous à la base de données
master
.Créez une connexion au serveur et attribuez les autorisations appropriées.
- Créez une connexion authentifiée SQL. Vous pouvez choisir n'importe quel nom pour ce login, remplacez-le dans le script suivant par
<fabric_login>
. Fournissez votre propre mot de passe fort. Exécutez le script T-SQL suivant dans la base de donnéesmaster
:
CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>'; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER <fabric_login>;
- Vous pouvez également créer une connexion authentifiée Par ID Microsoft Entra à partir d’un compte existant. Exécutez le script T-SQL suivant dans la base de données
master
:
CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
- Créez une connexion authentifiée SQL. Vous pouvez choisir n'importe quel nom pour ce login, remplacez-le dans le script suivant par
Basculez la portée de votre requête vers la base de données que vous souhaitez mettre en miroir. Remplacez le nom de votre base de données
<mirroring_source_database>
et exécutez le T-SQL suivant :USE [<mirroring_source_database>];
Créez un utilisateur de base de données connecté à la connexion. Remplacez le nom d'un nouvel utilisateur de base de données à cet effet pour
<fabric_user>
:CREATE USER <fabric_user> FOR LOGIN <fabric_login>; GRANT CONTROL TO <fabric_user>;
Ou, pour les connexions Microsoft Entra,
CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT CONTROL TO [bob@contoso.com];
Créez une base de données Azure SQL Managed Instance en miroir
- Ouvrez le portail Fabric.
- Utilisez un espace de travail existant ou créez-en un nouveau.
- Accédez au volet Créer. Sélectionnez l’icône Créer.
- Faites défiler jusqu’à la section Data Warehouse, puis sélectionnez Azure SQL Managed Instance en miroir (aperçu).
Connectez-vous à votre Azure SQL Managed Instance
Pour activer la mise en miroir, vous devez vous connecter à Azure SQL Managed Instance à partir de Fabric pour initier la connexion entre SQL Managed Instance et Fabric. Les étapes suivantes vous guident tout au long du processus de création de la connexion à votre Azure SQL Managed Instance :
- Sous Nouvelles sources, sélectionnez Azure SQL Managed Instance. Vous pouvez aussi sélectionner une connexion Azure SQL Managed Instance existante à partir du catalogue de données OneLake.
- Vous ne pouvez pas utiliser les connexions Azure SQL Managed Instance existantes avec le type « SQL Server » (type de connexion générique). Seules les connexions avec le type de connexion « SQL Managed Instance » sont prises en charge pour la mise en miroir des données Azure SQL Managed Instance.
- Si vous avez sélectionné Nouvelle connexion, entrez les détails de connexion à l’Azure SQL Managed Instance. Vous devez vous connecter à une base de données spécifique, vous ne pouvez pas configurer la mise en miroir pour l'ensemble de l'instance gérée par SQL et toutes ses bases de données.
- Serveur : vous pouvez trouver le nom du serveur en accédant à la page Mise en réseau d’Azure SQL Managed Instance dans le Portail Microsoft Azure (sous le menu Sécurité) et en consultant le champ Point de terminaison public. Par exemple :
<managed_instance_name>.public.<dns_zone>.database.windows.net,3342
. - Base de données : Entrez le nom de la base de données que vous souhaitez mettre en miroir.
- Connexion : créez une nouvelle connexion.
- Nom de connexion : un nom automatique est fourni. Vous pouvez le modifier pour faciliter la recherche de cette connexions aux bases de données d'instance gérée SQL ultérieurement, si nécessaire.
- Type d’authentification :
- (Authentification SQL) de base
- Compte d’organisation (Microsoft Entra ID)
- ID de locataire (principal de service Azure)
- Serveur : vous pouvez trouver le nom du serveur en accédant à la page Mise en réseau d’Azure SQL Managed Instance dans le Portail Microsoft Azure (sous le menu Sécurité) et en consultant le champ Point de terminaison public. Par exemple :
- Sélectionnez Connecter.
Démarrer le processus de mise en miroir
L’écran Configurer la mise en miroir permet de mettre en miroir toutes les données de la base de données, par défaut.
La mise en miroir de toutes les données signifie que toutes les nouvelles tables créées après le démarrage de la mise en miroir sont mise en miroir.
Si vous le souhaitez, choisissez uniquement certains objets à mettre en miroir. Désactivez l’option Mettre en miroir toutes les données, puis sélectionnez des tables individuelles dans votre base de données.
Si les tables ne peuvent pas du tout être mises en miroir, elles affichent une icône d'erreur et un texte explicatif pertinent. De même, si les tables ne peuvent être mises en miroir qu'avec des limitations, une icône d'avertissement s'affiche avec un texte explicatif approprié.
Pour ce didacticiel, nous sélectionnons l’option Mettre en miroir toutes les données.
Sur l’écran suivant, donnez un nom à l’élément de destination puis sélectionnez Créer une base de données en miroir. Attendez maintenant une minute ou deux que Fabric provisionne tout pour vous.
Après 2 à 5 minutes, sélectionnez Surveiller la réplication pour voir l’état.
Après quelques minutes, l’état doit passer à En cours d’exécution, ce qui signifie que les tables sont en cours de synchronisation.
Si vous ne voyez pas les tables et l’état de réplication correspondant, attendez quelques secondes, puis actualisez le volet.
Lorsque la copie initiale des tables est terminée, une date apparaît dans la colonne Dernière actualisation.
Maintenant que vos données sont opérationnelles, différents scénarios d’analyse sont disponibles sur l’ensemble de Fabric.
Important
Toute sécurité granulaire établie dans la base de données source doit être reconfigurée dans la base de données mise en miroir dans Microsoft Fabric.
Surveiller la mise en miroir de Fabric
Une fois la mise en miroir configurée, vous êtes dirigé vers la page État de la mise en miroir. Ici, vous pouvez surveiller l’état actuel de la réplication.
Voici les statuts de réplication :
Pour la surveillance globale au niveau de la base de données :
- En cours d’exécution – La réplication est actuellement en cours d’exécution, apportant des données instantanées et modifiées dans OneLake.
- Exécution avec avertissement : la réplication est en cours d'exécution, avec des erreurs temporaires
- Arrêt/Arrêté – La réplication est arrêtée.
- Erreur – Erreur fatale dans la réplication qui ne peut pas être récupérée.
Pour la surveillance au niveau de la table :
- En cours d’exécution – Les données de la table sont répliquées avec succès dans l’entrepôt.
- Exécution avec avertissement – Avertissement d'erreur non fatale avec réplication des données de la table
- Arrêt/Arrêté - La réplication est arrêtée
- Erreur – Erreur fatale lors de la réplication pour cette table.
Si la synchronisation initiale est terminée, un horodatage de la Dernière opération terminée s'affiche à côté du nom de la table. Cet horodatage indique l'heure à laquelle Fabric a vérifié pour la dernière fois les modifications apportées à la table.
Notez également la colonne Lignes répliquées. Il compte toutes les lignes qui ont été répliquées pour la table. Chaque fois qu'une ligne est répliquée, elle est à nouveau comptée. Cela signifie que, par exemple, l'insertion d'une ligne avec une clé primaire = 1 sur la source augmente le nombre de « lignes répliquées » d'une unité. Si vous mettez à jour la ligne avec la même clé primaire, elle est à nouveau répliquée sur Fabric et le nombre de lignes augmente d'une unité, même s'il s'agit de la même ligne qui est à nouveau répliquée. Fabric compte toutes les réplications qui se sont produites sur la ligne, y compris les insertions, les suppressions et les mises à jour.
L'écran de réplication du moniteur reflète également toutes les erreurs et tous les avertissements concernant les tables mises en miroir. Si la table comporte des types de colonnes non pris en charge ou si la table entière n'est pas prise en charge (par exemple, dans les index de mémoire ou de stockage de colonnes), une notification concernant la limitation s'affiche sur cet écran. Pour plus d’informations sur les états de réplication, consultez Surveiller la réplication de la base de données mise en miroir de Fabric.
Important
S’il n’y a aucune mise à jour dans les tables sources, le moteur de réplicateur commence à se retirer avec une durée exponentiellement croissante, jusqu’à une heure. Le moteur de réplicateur reprend automatiquement l’interrogation régulière après la détection des données mises à jour.