Toto je samozřejmě velmi široká otázka, ale pokusím se poskytnout několik návrhů, jak bych k ní přistoupil:
-
Prvním cílem je napsat nějaké skripty (uložené procedury), které otestují vaši databázi 2005. Spusťte všechny své stávající sprocs, počítejte záznamy v tabulkách, seznamte indexy atd. Děláte to proto, abyste je mohli spouštět v roce 2005 a poté v roce 2008/2012 po dokončení migrace. Pomůže vám dokázat schéma a data to úspěšně překonala.
-
Vytvořte zálohu databáze 2005 a obnovte ji v roce 2008/2012. Pokud chcete, můžete to provést souběžně s krokem 1. Jednoduše ji začněte používat. Import je v pořádku? Projde očním testem? Nějaké chyby, které potřebujete vyřešit?
-
Po kroku 2 pokračujte a vytvořte kopii svého aktuálního kódu .NET 2.0 a nasměrujte ji na novou instanci z kroku 2. Funguje aplikace? Znovu, projde očním testem?
-
Opakujte s kopií aplikace a novou databází, dokud si nebudete jisti. Pokud máte testovací sadu pro svou kódovou základnu, je zřejmé, že vám pomůže dokázat, že je vše v pořádku, místo abyste používali svou intuici.
Pokud jde o přechod z .NET 2.0 na .NET 4.0/4.5...
-
Kódová základna by měla být zpětně kompatibilní. Jediný problém, který jsem viděl, je, jestli jiné systémy závisejí na vaší kódové základně. Pokud máte základní knihovnu a chcete ji upgradovat na 4.0 – a jiný systém, který je stále na verzi 2.0, tuto knihovnu potřebuje, pak máte potíže.
-
S upgradem verze .NET bych určitě počkal až po dokončíte migraci databáze. Pokud se při migraci něco pokazí, chcete vědět, že to není .NET. Pomůže vám to omezit chyby a problémy.
Po mnoha migracích, jako je tato, několik obecných rad:
-
Klidně vytvářejte nové instance/systémy a testujte, testujte, testujte. Nepokoušejte se pracovat přímo s existujícím kódem v ovládání zdroje nebo pracovat s existujícími nasazeními/servery. Stačí jej zkopírovat a otestovat.
-
Napište nástroje a skripty, které vám pomohou automatizovat systémové testy. Chcete vědět:"Ano, pokud vím, schéma přišlo úplně stejné."
-
Nedělejte si iterace příliš dlouhé. Iterujte po malých cestách a pak dokažte, že to fungovalo, a pak pokračujte.
Doufám, že to pomůže.