Übersicht über das Erstellen und Bereitstellen von Datenbanken in einer Teamumgebung
Aktualisiert: November 2007
Team Edition for Database Professionals ermöglicht es einem Entwicklungsteam, Änderungen an Datenbanken mit einem Datenbankprojekt zu verwalten, das der Versionskontrolle unterliegt. Wenn Sie im Team als Datenbankadministrator (DBA) fungieren, erstellen Sie das Projekt, importieren das Schema von einem Produktionsserver, konfigurieren Datenbankeinstellungen und legen einen Plan für das Generieren von Testdaten fest. Wenn Sie bereit sind, das Projekt sowie die entsprechenden Einstellungen für alle Teammitglieder freizugeben, stellen Sie die Projektdateien unter Versionskontrolle.
Wenn Sie als Entwickler oder Tester an der Datenbank arbeiten, checken Sie die aktuelle Version des Datenbankschemas aus dem Versionskontrollsystem aus und nehmen Ihre Änderungen in einer isolierten Entwicklungsumgebung ("Sandbox") vor. Auf diese Weise können Sie Änderungen in der isolierten Umgebung ohne Auswirkungen auf andere Teammitglieder testen. Nach Abschluss der Änderungen checken Sie die Dateien wieder in das Versionskontrollsystem ein, sodass diese erstellt und auf einem Testserver bereitgestellt werden können. Die Änderungen können von den anderen Teammitgliedern übernommen werden, indem sie ihre Version mit der Version synchronisieren, die Sie in die Versionskontrolle eingecheckt haben.
Einrichten eines Datenbankprojekts
In einer Teamumgebung kann der Datenbankadministrator das Projekt für das Team einrichten. Anschließend kann jedes Teammitglied in einer eigenen isolierten Entwicklungsumgebung am gleichen Projekt arbeiten. Um ein Projekt einzurichten, führen Sie i. d. R. folgende Aktionsfolge aus:
Erstellen des Datenbankprojekts. Dieser Schritt wird i. d. R. in Verbindung mit dem folgenden ausgeführt.
Festlegen des Schemas für das Datenbankprojekt. Die meisten Entwicklungen basieren auf einer vorhandenen Datenbank. In diesem Fall können Sie das Schema dieser Datenbank in das Datenbankprojekt importieren. Sie müssen dafür Zugriff auf die Quelldatenbank haben, bei der es sich oft um eine Produktionsdatenbank handelt. Wenn Sie eine neue Datenbank erstellen, müssen Sie möglicherweise mit dem Datenbankarchitekten arbeiten, um das Schema der Ausgangsdatenbank zu entwickeln.
Festlegen der Eigenschaften für das Datenbankprojekt bezüglich Erstellung und Bereitstellung. Dazu gehören u. a. die Standardsortierreihenfolge, der Buildausgabepfad, die Verbindungsoptionen sowie der Name der Zieldatenbank.
Einchecken des Datenbankprojekts einschließlich des Inhalts in die Versionskontrolle, um dem Team den Zugriff darauf zu ermöglichen.
Definieren eines Datengenerierungsplans , der es den einzelnen Teammitgliedern ermöglicht, mit realistischen Testdaten zu arbeiten, ohne dass diese vertrauliche Informationen beinhalten. Sie fügen den Plan dem Datenbankprojekt hinzu und checken dieses in die Versionskontrolle ein.
Definieren der Datenbankkomponententests für vorhandene Datenbankfunktionen. Diese Tests werden i. d. R. in ein separates Projekt in der gleichen Projektmappe wie das Datenbankprojekt eingeschlossen, und die gesamte Projektmappe wird unter Versionskontrolle gestellt.
Jetzt kann das Team mit der Entwicklung beginnen.
Ausführen iterativer Entwicklungen in einer isolierten Entwicklungsumgebung
Als Entwickler synchronisieren Sie die lokale Entwicklungsumgebung mit dem Versionskontrollsystem. Sie passen die Eigenschaft Target connection für das Datenbankprojekt so an, dass diese auf den Server zeigt, auf dem die Kopie der Datenbank gehostet werden soll. Die Arbeit an den Funktionen umfasst folgende Vorgehensweise:
Identifizieren der Aufgabe, die ausgeführt werden soll. Dieser Schritt kann beispielsweise das Identifizieren der Arbeitsaufgaben umfassen, die Ihnen in Arbeitsaufgabenverfolgung in Team Foundation zugewiesen sind.
Ändern des Datenbankprojekts, seines Inhalts und des zugehörigen Quellcodes. Sie checken die Dateien aus der Versionskontrolle aus, wo Sie synchrone Versionen von Code und Datenbankprojekt speichern können.
Erstellen oder Ändern von Komponententests sowie Aktualisieren des Datengenerierungsplans, sofern erforderlich.
Erstellen und Bereitstellen des Datenbankprojekts sowie verwandter Anwendungen auf dem Server, auf dem die private Kopie der Datenbank gehostet wird.
Ausführen von Komponententests, um Testdaten zu erhalten, z. B. mit dem Datengenerator.
Wiederholen der Schritte 2 bis 5 bis zum erfolgreichen Abschluss aller Tests und dem Erzielen zufrieden stellender Ergebnisse.
Einchecken aller Änderungen am Datenbankprojekt, der Anwendung und den Komponententests nach erfolgreichem Abschluss der Komponententests und Erreichen einer zufrieden stellenden Qualität.
Fortfahren mit der nächsten Aufgabe.
Im Rahmen dieses Prozesses können Sie Änderungen in einer isolierten Umgebung entwickeln und überprüfen, ohne dass sich diese auf andere Entwickler auswirken, bevor sie nicht ein gleich bleibendes Qualitätsniveau erreicht haben. Wenn dies der Fall ist, können Sie Ihre Arbeit in die Versionskontrolle einchecken, damit andere Entwickler auf Ihre Verbesserungen zugreifen können.
Bereitstellen von Änderungen für die Produktion
Nachdem das Team alle notwendigen Änderungen vorgenommen hat, wird als Nächstes der Produktionsserver aktualisiert. Wenn Sie für diese Aufgabe verantwortlich sind, rufen Sie die aktuelle Version des Datenbankprojekts aus der Versionskontrolle ab, erstellen das Bereitstellungsskript, aktualisieren das Skript ggf. manuell und führen das Skript anschließend aus, um die Schemaänderungen für die Produktion bereitzustellen.
Einige Programme zur Versionskontrolle ermöglichen es, Bezeichnungen für eine Reihe von Dateiversionen zu einem bestimmten Zeitpunkt zu vergeben. Beispielsweise können Sie Datenbankprojekte, Anwendungsquellcode, Komponententests und andere Dateien in bestimmten Versionen kennzeichnen. Sie können dann jederzeit eine bestimmte Version einer Datei abrufen, auch wenn die Entwicklung in der Zwischenzeit vorangeschritten ist. Weitere Informationen über das Bereitstellen von zuvor bezeichneten Versionen des Datenbankprojekts finden Sie unter Gewusst wie: Bereitstellen einer früheren Version einer Datenbank, die der Versionskontrolle unterliegt.
Darstellungen der Datenbank
Bei dieser Vorgehensweise der Datenbankentwicklung sind bis zu drei Darstellungen der Datenbank möglich:
Die erste Darstellungsmöglichkeit ist die Datenbankserverdarstellung, die die Datenbank und die Daten enthält. Datenbankentwickler arbeiten hauptsächlich mit einer Entwicklungs- oder Testdatenbank. Viele Organisationen verfügen über eine separate Datenbankadministrator-Rolle mit Zugriff auf die Produktionsdatenbank.
Die zweite Möglichkeit ist das Datenbankprojekt, bei dem es sich um die Offlinedarstellung des Datenbankschemas handelt. Datenbankprojekte enthalten auch alle Datengenerierungspläne, mit denen Testdaten und Skripts zur Bereitstellung und Verwaltung der Datenbank generiert werden. Weitere Informationen finden Sie unter Übersicht über Datenbankprojekte.
Die dritte Möglichkeit ist das Repository der Versionskontrolle, in dem alle Änderungen verfolgt werden, die beliebige Mitglieder des Teams am Datenbankprojekt vornehmen.
Der Datenbankserver tauscht Daten mit dem Datenbankprojekt aus. Außerdem erfolgt ein Datenaustausch zwischen dem Repository der Versionskontrolle und dem Datenbankprojekt. Wenn Sie wissen, wie der Datenaustausch dieser Darstellungen im Hinblick auf die Versionskontrolle, den Schemaimport und die Bereitstellung erfolgt, können Sie Ihre Datenbank besser verwalten.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Erstellen einer isolierten Umgebung für die Datenbankentwicklung
Konzepte
Übersicht über das Arbeiten mit Datenbankobjekten
Übersicht über die Terminologie der Database Edition
Weitere Ressourcen
Erste Schritte mit Datenbankprojekten
Erstellen und Bereitstellen von Datenbankschemas