Tutorial: Systemportierung per Datenbank-Sicherung

Werbung
Tutorial:
Systemportierung per Datenbank-Sicherung
Version: 0.1
Autor: Anja Beuth
Inhaltsverzeichnis
1
2
3
3.1
4
4.1
4.2
4.3
4.4
5
Voraussetzungen auf dem Zielsystem............................................................
Datenbank sichern..........................................................................................
Datenbanksicherung auf Zielsystem portieren................................................
Remote Desktop Verbindung..........................................................................
Datenbank auf Zielsystem wiederherstellen...................................................
System Information korrigieren.......................................................................
Benutzer auf neu angelegte Tabelle berechtigen............................................
Suchindex löschen..........................................................................................
Externe Accounts............................................................................................
Information Server neu starten.......................................................................
2
2
2
2
3
3
3
4
4
5
Voraussetzungen
Der Entwickler benötigt für die Durchführung dieses Tutorials Administrationsrechte auf das
SQL Server Management Studio des Quell- und Zielsystems.
Beschreibung
Wenn das Hosting-System für den späteren Website-Betrieb zu Beginn der Entwicklung
noch nicht zur Verfügung steht, muss auf einem temporären, möglicherweise lokalen, System
mit der Entwicklung begonnen werden. Später sollte der aktuelle Entwicklungsstand möglichst
verlustfrei und unkompliziert auf das Zielsystem migriert werden.
Da in onion.net fast alle Informationen Content sind und somit in der Datenbank liegen, geht
die Portierung am einfachsten über eine Datenbank-Sicherung.
Die nötigen Schritte für die Sicherung auf dem Quellsystem sowie die Wiederherstellung und
Inbetriebnahme auf dem Zielsystem werden in diesem Tutorial beschrieben.
Zeichenerklärung
Text, der grün umrandet und mit dem Pfeil-Symbol gekennzeichnet ist, enthält
konkrete Anweisungen, was als nächstes zu tun ist.
Texte in solchen Kästchen enthalten Tipps und Tricks.
Quellcode wird in solch blauen Boxen dargestellt.
Tutorial: Systemportierung per Datenbank-Sicherung
1
1 Voraussetzungen auf dem Zielsystem
1 Voraussetzungen auf dem Zielsystem
Bevor die Datenbank portiert wird, sollte im besten Fall auf dem Zielsystem bereits eine
Standard onion.net Installation existieren und funktionieren. Dies gilt sowohl für den Editor
als auch für eine Render Engine.
Dies hat den Hintergrund, dass für das Funktionieren eines onion.net Systems mehr als nur
eine korrekte Datenbankanbindung notwendig ist. Wenn vor der Portierung alles läuft, können
zum Beispiel Konfigurationsfehler oder falsche Berechtigungen als Fehlerquellen
ausgeschlossen werden.
2 Datenbank sichern
Im ersten Schritt muss die zu portierende Datenbank gesichert werden. Verbinden Sie sich
dazu zunächst auf den Datenbankserver. Dort starten Sie das SQL Server Management
Studio.
Im Kontextmenü der Datenbank finden Sie den Punkt "Tasks" und darunter die Option
"Sichern".
Die nachfolgende Abbildung verdeutlicht den Klickflow.
Im anschließend erscheinenden Dialog können Sie in der Regel die Standardeinstellungen
übernehmen.
Sichern Sie die Datei auf der Festplatte. Hierfür müssen Sie durch Klick auf die Schaltfläche
"Hinzufügen" einen Speicherort auswählen. Wichtig dabei ist, dass in dem erscheinenden
Dialog auch der Name der Sicherungsdatei angegeben werden muss. Achten Sie darauf,
die korrekte Dateiendung ".bak" anzugeben!
3 Datenbanksicherung auf Zielsystem portieren
Je nachdem, wie gut das Zielsystem erreichbar ist, beziehungsweise wie die Anbindung
funktioniert, stellt die Portierung kein unwesentliches Problem dar. Die Sicherungsdatei muss
jedoch auf einem lokalen Speicherort des Zielsystems liegen, damit die Datei bei der
Wiederherstellung ausgewählt werden kann.
3.1 Remote Desktop Verbindung
Wenn eine RDP-Verbindung über den Microsoft Terminal Service Client (mstsc) hergestellt
wird, kann in den Optionen der Verbindung eine lokale Platte eingebunden werden. Auf
diese Weise kann dann die Sicherungsdatei auf einen lokalen Speicherort des Zielsystems
kopiert werden.
Tutorial: Systemportierung per Datenbank-Sicherung
2
4 Datenbank auf Zielsystem wiederherstellen
4 Datenbank auf Zielsystem wiederherstellen
Starten Sie das SQL Server Management Studio auf dem Zielsystem und Verbinden Sie
sich mit dem entsprechenden Datenbankmodul.
Für den Fall, dass es bereits eine Datenbank mit demselben Namen gibt, sollten Sie
entweder die vorhandene Datenbank sicherheitshalber löschen, bevor Sie die portierte
einspielen. Oder Sie benennen die vorhandene um. In letzerem Fall passen Sie zunächst die
Datenbank-Query in der web.config des Information Servers an und testen, ob Editor
und Render Engine nach wie vor funktionieren.
Im Kontextmenü des Punktes "Datenbanken" finden Sie den Eintrag "Datenbank
wiederherstellen...".
Tragen Sie in dem angezeigten Dialog den Namen der Datenbank ein. Als Quelle wählen
Sie "Von Medium" aus und fügen die Sicherungsdatei hinzu. Diese erscheint dann in der
Übersicht unten. Um Sie wiederherzustellen müssen Sie das Häkchen davor setzen.
Damit die Datenbank auf dem Zielsystem funktioniert, sind dort noch einige Aufräumarbeiten
zu erledigen.
4.1 System Information korrigieren
Insbesondere wenn die Datenbank von einem Rechner auf einen anderen migriert wurde,
muss die Tabelle, welche Systeminformationen zum Rechner enthält, aufgeräumt werden.
Navigieren Sie dazu zur Tabelle "dbo.SystemInformation", öffnen Sie das
Kontextmenü und wählen Sie den Eintrag "Oberste 200 Zeilen bearbeiten"
aus. Löschen Sie die letzte Zeile, welche in der Spalte "slot" den Wert
"system.current" enthält. Dies können Sie über einen Rechtsklick vor der Zeile
erreichen.
4.2 Benutzer auf neu angelegte Tabelle berechtigen
Der Datenbankbenutzer, mit dem sich der Informationserver zur Datenbank verbindet,
wurde ebenfalls in die Datenbanksicherung mit eingeschlossen. Da es ja laut Voraussetzungen
bereits im Datenbankmodul einen Benutzer gibt, mit dem die Datenbankverbindung
erfolgreich funktioniert, sollte dieser auch für die importierte Datenbank genutzt werden.
Tutorial: Systemportierung per Datenbank-Sicherung
3
4 Datenbank auf Zielsystem wiederherstellen
Dazu navigieren Sie unterhalb der wiederhergestellten Datenbank in den
Ordner "Sicherheit" > "Benutzer". Dort gibt es in der Regel einen Benutzer, der
denselben Namen trägt wie die Datenbank. Löschen Sie diesen Benutzer und
legen für die Datenbank einen neuen an. Dort tragen Sie den Anmeldenamen
des vorhandenen Datenbankbenutzers ein.
Wenn Sie den Anmeldenamen nicht kennen, können Sie diesen in der
web.config des Information Server nachschauen. Dort ist der Benutzername
in der Datenbank-Query enthalten.
Als Standardschema tragen Sie dbo ein. Wichtig ist, dass er Benutzer die
Datenbankrolle db_owner bekommt.
4.3 Suchindex löschen
Der SQL Server erzeugt einen Suchindex für Datenbanken, damit beispielsweise die
Volltextsuche in der Datenbank funktioniert und die Zugriffe schneller vonstatten gehen.
Beim Importieren wurde der Index der Quelldatenbank mit übertragen. Dieser kann aber von
der neuen SQL Server Instanz nicht verwendet werden. Wir löschen ihn daher, damit ein
neuer erzeugt werden kann.
Navigieren zum Ordner "Speicher" > "Volltextkataloge". Darunter sollte sich
ein Objekt "ObjectFullText" befinden. Löschen Sie das Objekt.
4.4 Externe Accounts
Bei der Datenbanksicherung wurden auch sämtliche Benutzeraccounts portiert, die es in
dem onion.net System gab. Dabei kann es zu Problemen mit externen Benutzeraccounts
kommen, beispielsweise wenn Sie für den Login ein Active Directory anbinden.
Normalerweise werden die Passwörter der Zugänge verschlüsselt in der Datenbank-Tabelle
"dbo.Users" abgelegt. Wenn für den Login jedoch eine externe Quelle angebunden ist,
findet die Authorisierung auch in dieser externen Zugangsverwaltung statt.
Tutorial: Systemportierung per Datenbank-Sicherung
4
5 Information Server neu starten
Wenn nach der Portierung vom neuen System aus kein Zugriff mehr auf die exteren
Zugangsverwaltung möglich ist, haben die betroffenen onion.net-Zugänge in der Datenbank
den Wert "EXTERNAL" stehen. Für diese Zugänge muss manuell über den onion.net Editor
mit Administratorberechtigung ein neues Passwort gesetzt werden.
5 Information Server neu starten
Damit sowohl onion.net Render Engine(s) wie auch onion.net Editor(en) ab sofort ihre Daten
aus der aktualisierten Datenbank beziehen, muss der onion.net Information Server (Windows
Dienst) neu gestartet werden.
Tutorial: Systemportierung per Datenbank-Sicherung
5
Herunterladen