In der Welt von DevOps, Es gibt einige Situationen, in denen Sie eine Möglichkeit haben müssen, Daten von anderen zu übertragen Azure SQL-Datenbanken.
Zur PrüfungAls Beispiel, Angenommen, Sie haben einen Kunden, der versehentlich eine große Anzahl von Datensätzen aus einer Tabelle in der Produktionsdatenbank gelöscht hat. Mit der Hilfe von Backups zu einem bestimmten Zeitpunkt, wir könnten die Datenbank zu einem früheren Zeitpunkt wiederherstellen, zu dem diese Datensätze noch vorhanden sind. Dieses Verfahren erstellt eine neue Datenbank mit dem wiederhergestellten Inhalt und dann können wir Namen zwischen diesen Datenbanken austauschen, indem wir sie umbenennen. Trotz dieses, Es gibt eine Einschränkung, diese Aktion auszuführen. Die wiederhergestellte Datenbank verliert den gesamten Point-in-Time-Verlauf der ursprünglichen Datenbank.
Un mejor enfoque sería restaurar los registros eliminados a la DatenbankEine Datenbank ist ein organisierter Satz von Informationen, mit dem Sie, Effizientes Verwalten und Abrufen von Daten. Einsatz in verschiedenen Anwendungen, Von Unternehmenssystemen bis hin zu Online-Plattformen, Datenbanken können relational oder nicht-relational sein. Das richtige Design ist entscheidend für die Optimierung der Leistung und die Gewährleistung der Informationsintegrität, und erleichtert so eine fundierte Entscheidungsfindung in verschiedenen Kontexten.... Original. Trotz dieses, Dies ist nicht so einfach wie bei normalen SQL Server-Datenbanken. Beide Datenbanken können sich nicht sehen, selbst wenn sie sich auf demselben Server befinden und, als Beispiel, Kann ich nicht benutzen Verknüpfte Server in Azure SQL, um sie zu verbinden.
Möglicherweise haben Sie die Möglichkeit, diese Datensätze in SQL-Skripte zu exportieren, aber selbst dann, Es gibt einige Fälle, in denen die wiederherzustellende Datenmenge sehr groß ist, Das Erstellen dieser Skripte wäre also nicht der beste Weg, dieses Problem zu beheben.
Das ist wo Elastische Abfragen Zur Rettung kommen:
Mit dieser Technologie, Wir könnten die Daten, die in unsere Datenbanken ein- und ausgehen, leicht verwalten.
Bedarf
Lernprogramm
Stellen wir uns vor, der Client kürzt alle Datensätze für das Jahr 2016 des Liebling Tabelle in unserer Rechnungsdatenbank.
Der erste Schritt sollte sein, eine Verbindung zum Azure-Portal und führen Sie eine Wiederherstellung zu einem bestimmten Zeitpunkt durch Rechnungen in der Cloud Datenbank von einem Datum und einer Uhrzeit, zu der diese Datensätze noch vorhanden sind. Wir werden dies in einer Datenbank namens . wiederherstellen Rechnungen2016.
Dies wären die Schritte, die wir unternehmen müssen, um diese Aufzeichnungen wiederherzustellen:
Erstellen Sie einen Datenbankhauptschlüssel und Anmeldeinformationen für den Bereich
Das Hauptschlüssel wird als eins arbeiten „Gewölbe“ um die Zugangsdaten in der Datenbank zu speichern und die bereichsbezogene Anmeldeinformationen sind die Datenbankanmeldeinformationen, die verwendet werden, um eine Verbindung zu Ihrer wiederhergestellten Datenbank herzustellen.
Syntax:
CREAR ENCRIPTACIÓN DE LLAVE MAESTRA POR CONTRASEÑA = ‚Passwort‘;
DATENBANK-ANWEISUNGEN ERSTELLEN
Beispiel:
CREAR ENCRIPTACIÓN DE LLAVE MAESTRA POR CONTRASEÑA = ‚p @ ssw0rd‘;
CREAR CREDENCIAL ALCANCE DE LA BASE DE DATOS dbCredential CON IDENTIDAD = ‚usuario01‘, GEHEIM = ‚p @ ssw0rd‘;
Erstellen Sie die DatenquelleEIN "Datenquelle" bezieht sich auf jeden Ort oder jedes Medium, an dem Informationen erhalten werden können. Diese Quellen können sowohl primär als auch, wie z.B. Erhebungen und Experimente, als sekundär, als Datenbanken, Wissenschaftliche Artikel oder statistische Berichte. Die richtige Wahl einer Datenquelle ist entscheidend, um die Gültigkeit und Zuverlässigkeit von Informationen in Forschung und Analyse zu gewährleisten.... extern
Das externe Datenquelle es donde establecemos los ParameterDas "Parameter" sind Variablen oder Kriterien, die zur Definition von, ein Phänomen oder System zu messen oder zu bewerten. In verschiedenen Bereichen wie z.B. Statistik, Informatik und naturwissenschaftliche Forschung, Parameter sind entscheidend für die Etablierung von Normen und Standards, die die Datenanalyse und -interpretation leiten. Ihre richtige Auswahl und Handhabung sind entscheidend, um genaue und relevante Ergebnisse in jeder Studie oder jedem Projekt zu erhalten.... junto con la credencial creada previamente para permitir la conexión entre bases de datos.
Syntax:
EXTERNE DATENQUELLE ERSTELLEN
(
TYP = RDBMS,
STANDORT = ‚
DATABASE_NAME = ‚
ANMELDEDATEN =
)
Beispiel:
EXTERNE DATENQUELLE ERSTELLEN wiederhergestellte Datenbank MIT
(
TYP = RDBMS,
STANDORT = ‚cloudinvoices.database.windows.net‘,
DATABASE_NAME = ‚Rechnungen2016‘,
CREDENTIAL = dbCredential
);
Erstellen Sie die externen Tabellen
Darauf solltest du achten externe Tabellen sind Erweiterungen der externen Datenbank. Betrachten Sie sie als verknüpfte Tabellen. Das bedeutet, dass wir in unserer Produktionsdatenbank nicht zwei Tabellen mit demselben Namen haben können, auch wenn einer eine normale Tabelle und der andere eine externe Tabelle ist.
In unserem Beispiel, wenn wir uns verbinden wollen Liebling Tabelle in der wiederhergestellten Datenbank, wir würden brauchen benennen Sie es um erste (als Beispiel, Schätzungen 2016 ) damit es nicht mit dem bestehenden kollidiert.
Syntax:
sp_rename ‚nombre_objeto‘, ‚nuevo_nombre‘;
Beispiel: in der wiederhergestellten Datenbank:
sp_rename ‚Schätzungen‘, ‚Estimaciones2016‘;
Jetzt können wir unsere äußere Tabelle erstellen:
Syntax:
EXTERNEN TISCH ERSTELLEN [Tabellenname] (
{
)
{MIT (
)
Beispiel:
EXTERNEN TISCH ERSTELLEN [Schätzungen2016] (
[EstimateId] eindeutiger Bezeichner NICHT NULL,
[Kunden ID] int NO NULO,
[Jahr] int NO NULO,
[Menge] dezimal NICHT NULL
)
MIT (
SOURCE_DATA = Datenbank wiederhergestellt
);
Nachdem Sie die erforderlichen Schritte ausgeführt haben, um die Konnektivität zwischen beiden Datenbanken herzustellen, Wir können die eigentliche Arbeit erledigen, die erforderlich ist, um die fehlenden Datensätze wiederherzustellen. Als Beispiel:
SCHÄTZUNGEN EINFÜGEN
AUSWÄHLEN * VON SCHÄTZUNGEN 2016 WO JAHR = 2016;
Am Ende dieser Aufgabe müssen wir eine Reinigung durchführen:
DROP EXTERNE TABLE Schätzungen2016;
DROP EXTERNE DATA SOURCE restoreDatenbank;
DATENBANK-BESCHEINIGTE ANMELDEDATEN DROP dbCredential;
DROP-MASTER-SCHLÜSSEL;
Das ist! Ich hoffe, Sie finden diese neue Technologie für diese Arten von Szenarien nützlich.. Bitte beachte, dass dies dir in vielen weiteren Fällen helfen könnte: externe Datenbanken abfragen, datenbankübergreifende Abfragen für horizontale Partitionen ( Zersplitterung ), Abfragen mehrerer Datenbanken zum Generieren von Berichten in PowerBI, etc.
Weitere Informationen zu elastischen Abfragen:
Wir sehen uns im nächsten Beitrag. Niemals aufhören zu lernen.