Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Auswirkungen auf die Anwendung bei der Migration von SQL Server 2005 auf 2008

Dies ist natürlich eine sehr weit gefasste Frage, aber ich werde versuchen, einige Vorschläge zu machen, wie ich sie angehen würde:

  1. Das erste Ziel besteht darin, einige Skripts (gespeicherte Prozeduren) zu schreiben, die Ihre 2005-Datenbank testen. Führen Sie alle Ihre vorhandenen Sprocs aus, zählen Sie Datensätze in Tabellen, listen Sie Indizes auf usw. Sie tun dies, damit Sie sie 2005 und dann 2008/2012 ausführen können, nachdem Sie die Migration abgeschlossen haben. Es wird Ihnen helfen, das Schema und zu beweisen die Daten haben es erfolgreich überstanden.

  2. Erstellen Sie ein Backup der 2005-Datenbank und stellen Sie es 2008/2012 wieder her. Sie können dies parallel zu Schritt 1 tun, wenn Sie möchten. Fangen Sie einfach an, es zu benutzen. Import alles ok? Besteht es den Sehtest? Gibt es Fehler, die Sie beheben müssen?

  3. Fahren Sie nach Schritt 2 fort und erstellen Sie eine Kopie Ihres aktuellen .NET 2.0-Codes und verweisen Sie ihn auf die neue Instanz aus Schritt 2. Funktioniert die Anwendung? Besteht es noch einmal den Sehtest?

  4. Wiederholen Sie dies mit der Anwendungskopie und der neuen Datenbank, bis Sie sich sicher fühlen. Wenn Sie eine Testsuite für Ihre Codebasis haben, hilft Ihnen das offensichtlich, zu beweisen, dass die Dinge in Ordnung sind, anstatt Ihre Intuition zu verwenden.

Was den Übergang von .NET 2.0 zu .NET 4.0/4.5 angeht ...

  1. Die Codebasis sollte abwärtskompatibel sein. Das einzige Problem, das ich sehen konnte, ist, wenn andere Systeme von Ihrer Codebasis abhängen. Wenn Sie eine Kernbibliothek haben und diese auf 4.0 aktualisieren möchten - und ein anderes System, das noch auf 2.0 läuft, diese Bibliothek benötigt, dann sind Sie in Schwierigkeiten.

  2. Ich würde auf jeden Fall mit dem Upgrade der .NET-Version bis nach warten Sie schließen die Datenbankmigration ab. Wenn bei der Migration etwas schief geht, möchten Sie wissen, dass es sich nicht um .NET handelt. Es wird Ihnen helfen, Fehler und Probleme einzugrenzen.

Nachdem Sie viele Migrationen wie diese durchgeführt haben, einige allgemeine Ratschläge:

  1. Fühlen Sie sich frei, neue Instanzen/Systeme zu erstellen und zu testen, zu testen, zu testen. Versuchen Sie nicht, direkt mit vorhandenem Code in der Quellcodeverwaltung zu arbeiten oder mit vorhandenen Bereitstellungen/Servern zu arbeiten. Einfach kopieren und testen.

  2. Schreiben Sie Tools und Skripte, die Ihnen bei der Automatisierung von Systemtests helfen. Sie möchten wissen können "Ja, soweit ich weiß, ist das Schema genau gleich rübergekommen."

  3. Machen Sie Ihre Iterationen nicht zu lang. Iterieren Sie in kleinen Schritten und beweisen Sie dann, dass es funktioniert hat, und fahren Sie dann fort.

Hoffe das hilft.