Dans le monde du DevOps, il y a des situations où vous devez avoir un moyen de transférer des données de différents Bases de données Azure SQL.
Pour examenPar exemple, Supposons que vous ayez un client qui a supprimé par inadvertance un grand nombre d'enregistrements d'une table dans la base de données de production. Avec l'aide de Sauvegardes à un moment précis, nous pourrions restaurer la base de données à un moment antérieur où ces enregistrements existent toujours. Cette procédure créera une nouvelle base de données avec le contenu restauré et nous pourrons ensuite échanger des noms entre ces bases de données en les renommant. Malgré cela, il y a une mise en garde pour effectuer cette action. La base de données restaurée perdra tout l'historique ponctuel de la base de données d'origine.
Un mejor enfoque sería restaurar los registros eliminados a la base de donnéesUne base de données est un ensemble organisé d’informations qui vous permet de stocker, Gérez et récupérez efficacement les données. Utilisé dans diverses applications, Des systèmes d’entreprise aux plateformes en ligne, Les bases de données peuvent être relationnelles ou non relationnelles. Une bonne conception est essentielle pour optimiser les performances et garantir l’intégrité de l’information, facilitant ainsi la prise de décision éclairée dans différents contextes.... original. Malgré cela, ce n'est pas aussi simple que les bases de données SQL Server classiques. Les deux bases de données ne peuvent pas se voir même si elles sont sur le même serveur et, par exemple, ne peut pas utiliser Serveurs liés dans Azure SQL pour les connecter.
Vous pouvez avoir la possibilité d'exporter ces enregistrements vers des scripts SQL, mais même alors, il existe des cas où la quantité de données à restaurer est très importante, donc créer ces scripts ne serait pas le meilleur moyen de résoudre ce problème.
C'est ici que Requêtes élastiques venir à la rescousse:
Avec cette technologie, nous pourrions facilement gérer les données entrant et sortant de nos bases de données.
exigences
Didacticiel
Imaginons que le client tronque tous les enregistrements de l'année 2016 du chère table dans notre base de données de factures.
La première étape devrait être de se connecter au Portail Azure et effectuer une restauration à un moment précis factures dans le cloud base de données à partir d'une date et d'une heure où ces enregistrements existent toujours. Nous allons le restaurer dans une base de données appelée factures2016.
Ce seraient les mesures que nous devons prendre pour restaurer ces dossiers:
Créer une clé principale de base de données et des informations d'identification d'étendue
Le passe-partout fonctionnera comme un seul « sauter » pour enregistrer les informations d'identification dans la base de données et le informations d'identification étendues sont les informations d'identification de la base de données qui seront utilisées pour se connecter à votre base de données restaurée.
Syntaxe:
CREAR ENCRIPTACIÓN DE LLAVE MAESTRA POR CONTRASEÑA = ‘le mot de passe’;
CRÉER UNE BASE DE DONNÉES
Exemple:
CREAR ENCRIPTACIÓN DE LLAVE MAESTRA POR CONTRASEÑA = ‘p @ ssw0rd’;
CREAR CREDENCIAL ALCANCE DE LA BASE DE DATOS dbCredential CON IDENTIDAD = ‘usuario01’, SECRET = ‘p @ ssw0rd’;
Crea la Source des donnéesOngle "Source des données" désigne tout lieu ou support où des informations peuvent être obtenues. Ces sources peuvent être à la fois primaires et, tels que les enquêtes et les expériences, en tant que secondaire, comme bases de données, articles universitaires ou rapports statistiques. Le bon choix d’une source de données est crucial pour garantir la validité et la fiabilité des informations dans la recherche et l’analyse.... externe
Le source de données externe es donde establecemos los paramètresLes "paramètres" sont des variables ou des critères qui sont utilisés pour définir, mesurer ou évaluer un phénomène ou un système. Dans divers domaines tels que les statistiques, Informatique et recherche scientifique, Les paramètres sont essentiels à l’établissement de normes et de standards qui guident l’analyse et l’interprétation des données. Leur sélection et leur manipulation correctes sont cruciales pour obtenir des résultats précis et pertinents dans toute étude ou projet.... junto con la credencial creada previamente para permitir la conexión entre bases de datos.
Syntaxe:
CRÉER UNE SOURCE DE DONNÉES EXTERNE
(
TYPE = SGBDR,
EMPLACEMENT = ‘
DATABASE_NAME = ‘
IDENTIFICATION =
)
Exemple:
CRÉER UNE SOURCE DE DONNÉES EXTERNE Base de données restaurée AVEC
(
TYPE = SGBDR,
EMPLACEMENT = ‘cloudinvoices.database.windows.net’,
DATABASE_NAME = ‘factures2016’,
IDENTIFIANT = dbCredential
);
Créer les tables externes
Tu devrais faire attention à ça tables externes sont des extensions de la base de données externe. Considérez-les comme des tables liées. Ce qui signifie que nous ne pouvons pas avoir deux tables avec le même nom dans notre base de données de production, même si l'une est une table normale et l'autre une table externe.
Dans notre exemple, si nous voulons nous connecter à chère table dans la base de données restaurée, nous aurions besoin le renommer premier (par exemple, Estimations 2016 ) afin qu'il n'entre pas en conflit avec l'existant.
Syntaxe:
sp_rename ‘nombre_objeto’, ‘nuevo_nombre’;
Exemple: dans la base de données restaurée:
sp_rename ‘Estimations’, ‘Estimaciones2016’;
Maintenant, nous pouvons créer notre table externe:
Syntaxe:
CRÉER UNE TABLE EXTERNE [nom de la table] (
{
)
{AVEC (
)
Exemple:
CRÉER UNE TABLE EXTERNE [Estimations2016] (
[EstimationId] identifiant unique NON NULL,
[Identité du client] int NON NULO,
[Année] int NON NULO,
[Montant] décimal NON NULL
)
AVEC (
SOURCE_DATA = base de données restaurée
);
Après avoir effectué les étapes nécessaires pour créer la connectivité entre les deux bases de données, nous pouvons faire le travail nécessaire pour restaurer les enregistrements manquants. Par exemple:
INSÉRER DANS LES DEVIS
SÉLECTIONNER * DES DEVIS 2016 O ANNÉE = 2016;
A la fin de cette tâche nous devons faire un nettoyage:
SUPPRIMER LA TABLE EXTERNE Estimations2016;
SUPPRIMER LA SOURCE DE DONNÉES EXTERNE;
SUPPRIMER LA BASE DE DONNÉES SCOPED CREDENCIAL dbCredential;
LAISSER LA CLÉ PRINCIPALE;
Voilà! J'espère que vous trouverez cette nouvelle technologie utile pour ces types de scénarios.. Veuillez noter que cela pourrait vous aider dans de nombreux autres cas: interroger des bases de données externes, requêtes entre bases de données pour les partitions horizontales ( fragmentation ), interroger plusieurs bases de données pour générer des rapports dans PowerBI, etc.
Plus d'informations sur les requêtes élastiques:
Rendez-vous dans le prochain post. Ne jamais cesser d'apprendre.